(A few tidbits & formatting) |
(Added information about redundant MacOS shortcuts. For example both Ctrl+C and Cmd+C both copy text without any functional difference and can be chosen based on a user's preference.) Tag: Visual edit |
||
(31 intermediate revisions by 12 users not shown) | |||
Line 1: | Line 1: | ||
− | <sup>''!!! Work in progress |
+ | <sup>''!!! Work in progress !!!''</sup> |
− | Not all PICO-8 hardware has a keyboard, but when it does, there are many keyboard shortcuts that one can use. |
+ | Not all PICO-8 hardware has a keyboard, but when it does, there are many keyboard shortcuts that one can use. Known shortcuts are listed here. |
+ | ---- |
||
− | Note that the list below primarily shows the shortcuts for a QWERTY keyboard layout on a Windows build of PICO-8. Regional and platform variations do exist, however. Where known to be different, the Linux and MacOS alternatives are listed here. |
||
+ | :'''Important:''' the lists below all start with the shortcuts for a '''QWERTY''' keyboard layout on a '''Windows''' build of PICO-8. Key bindings for other keyboard layouts or platform builds are only listed if they are known to be ''different'' from the Windows Build. |
||
− | '''Readers with knowledge of other platforms are encouraged to fill in the blanks if they know of keys that differ from the Windows layout. If you do, please follow the existing format, thanks!''' |
||
+ | |||
+ | :If your key isn't listed, or doesn't work right, try to use the Windows-style shortcut the way you would usually expect one to be done in your own OS. For instance, if you know Undo is Ctrl-Z on Windows, you'd want to try Cmd-Z on MacOS. Certain MacOS functions, but not all, permit the use of either the Ctrl or Cmd keys interchangeably. For instance, both Ctrl+C and Cmd+C will copy text on MacOS. As such, certain functions may have multiple redundant shortcuts listed under the MacOS column. As these are functionally equivalent, you can choose whichever shortcut works best for your workflow and/or preference. |
||
+ | |||
+ | :Also, if you are on a different regional layout, such as AZERTY or QWERTZ, try using the key that would be in the same ''physical'' position as the QWERTY key. And remember, there is a [[Keyconfig|<code>keyconfig</code>]] command you can use to change in-game button assignments. |
||
+ | |||
+ | :'''Readers with knowledge of other platforms are encouraged to fill in the blanks if they know of keys that differ from the Windows layout.''' Don't worry too much about following the tricky formatting in these tables, unless you want to. Feel free to just enter whatever helpful notes you have, even if they aren't put into the tables. Someone else can do the formatting later if needed. Thanks! |
||
+ | |||
+ | ---- |
||
<!-- handy chars: ⌘Cmd ⇧Shift ⌥Opt ⌃↩⌤⌫⌦⌧⇥⇤␣⎋⇪⏏⇞⇟↖↘←→↑↓ --> |
<!-- handy chars: ⌘Cmd ⇧Shift ⌥Opt ⌃↩⌤⌫⌦⌧⇥⇤␣⎋⇪⏏⇞⇟↖↘←→↑↓ --> |
||
Line 16: | Line 24: | ||
!scope="col" style="width: 22%;"|MacOS |
!scope="col" style="width: 22%;"|MacOS |
||
|- |
|- |
||
+ | |<u>Q</u>uit |
||
− | |Quit |
||
|<kbd>Alt</kbd>+<kbd>F4</kbd> |
|<kbd>Alt</kbd>+<kbd>F4</kbd> |
||
+ | |<kbd>Ctrl</kbd>+<kbd>Q</kbd> |
||
− | | |
||
|<kbd>⌘Cmd</kbd>+<kbd>Q</kbd> |
|<kbd>⌘Cmd</kbd>+<kbd>Q</kbd> |
||
|- |
|- |
||
+ | |<u>R</u>eload/<u>R</u>un/<u>R</u>estart |
||
− | |Reload/Run/Restart |
||
|<kbd>Ctrl</kbd>+<kbd>R</kbd> |
|<kbd>Ctrl</kbd>+<kbd>R</kbd> |
||
+ | |<kbd>Ctrl</kbd>+<kbd>R</kbd> |
||
− | | |
||
+ | |<kbd>⌘Cmd</kbd>+<kbd>R</kbd> |
||
− | | |
||
|- |
|- |
||
− | |Quick- |
+ | |Quick-<u>S</u>ave |
|<kbd>Ctrl</kbd>+<kbd>S</kbd> |
|<kbd>Ctrl</kbd>+<kbd>S</kbd> |
||
+ | |<kbd>Ctrl</kbd>+<kbd>S</kbd> |
||
− | | |
||
+ | |<kbd>⌘Cmd</kbd>+<kbd>S</kbd> |
||
− | | |
||
|- |
|- |
||
+ | |<u>M</u>ute/un<u>m</u>ute |
||
− | |Mute/unmute |
||
|<kbd>Ctrl</kbd>+<kbd>M</kbd> |
|<kbd>Ctrl</kbd>+<kbd>M</kbd> |
||
+ | |<kbd>Ctrl</kbd>+<kbd>M</kbd> |
||
− | | |
||
+ | |<kbd>^Ctrl</kbd>+<kbd>M</kbd> |
||
− | | |
||
|- |
|- |
||
|Editor toggle |
|Editor toggle |
||
|<kbd>Esc</kbd> |
|<kbd>Esc</kbd> |
||
+ | |<kbd>Esc</kbd> |
||
− | | |
||
+ | |<kbd>Esc</kbd> |
||
− | | |
||
|- |
|- |
||
|Full screen toggle |
|Full screen toggle |
||
|<kbd>Alt</kbd>+<kbd>Enter</kbd> |
|<kbd>Alt</kbd>+<kbd>Enter</kbd> |
||
+ | |<kbd>Alt</kbd>+<kbd>Enter</kbd> |
||
− | | |
||
|<kbd>⌘Cmd</kbd>+<kbd>F</kbd> |
|<kbd>⌘Cmd</kbd>+<kbd>F</kbd> |
||
|- |
|- |
||
Line 49: | Line 57: | ||
|<kbd>F1</kbd> / <kbd>F6</kbd><br /><kbd>Ctrl</kbd>+<kbd>6</kbd> |
|<kbd>F1</kbd> / <kbd>F6</kbd><br /><kbd>Ctrl</kbd>+<kbd>6</kbd> |
||
| |
| |
||
+ | |<kbd>^Ctrl</kbd>+<kbd>6</kbd> |
||
− | | |
||
|- |
|- |
||
|Capture cartridge label image |
|Capture cartridge label image |
||
|<kbd>F2</kbd> / <kbd>F7</kbd><br /><kbd>Ctrl</kbd>+<kbd>7</kbd> |
|<kbd>F2</kbd> / <kbd>F7</kbd><br /><kbd>Ctrl</kbd>+<kbd>7</kbd> |
||
| |
| |
||
+ | |<kbd>^Ctrl</kbd>+<kbd>7</kbd> |
||
− | | |
||
|- |
|- |
||
|Start recording a video |
|Start recording a video |
||
|<kbd>F3</kbd> / <kbd>F8</kbd><br /><kbd>Ctrl</kbd>+<kbd>8</kbd> |
|<kbd>F3</kbd> / <kbd>F8</kbd><br /><kbd>Ctrl</kbd>+<kbd>8</kbd> |
||
| |
| |
||
+ | |<kbd>^Ctrl</kbd>+<kbd>8</kbd> |
||
− | | |
||
|- |
|- |
||
|Save GIF video to desktop |
|Save GIF video to desktop |
||
|<kbd>F4</kbd> / <kbd>F9</kbd><br /><kbd>Ctrl</kbd>+<kbd>9</kbd> |
|<kbd>F4</kbd> / <kbd>F9</kbd><br /><kbd>Ctrl</kbd>+<kbd>9</kbd> |
||
| |
| |
||
+ | |<kbd>^Ctrl</kbd>+<kbd>9</kbd> |
||
− | | |
||
|- |
|- |
||
|Toggle keyboard cursor |
|Toggle keyboard cursor |
||
|<kbd>F5</kbd> / <kbd>F10</kbd><br /><kbd>Ctrl</kbd>+<kbd>0</kbd> |
|<kbd>F5</kbd> / <kbd>F10</kbd><br /><kbd>Ctrl</kbd>+<kbd>0</kbd> |
||
| |
| |
||
+ | |<kbd>^Ctrl</kbd>+<kbd>0</kbd> |
||
− | | |
||
|- |
|- |
||
|Toggle FPS display |
|Toggle FPS display |
||
|<kbd>Ctrl</kbd>+<kbd>1</kbd> |
|<kbd>Ctrl</kbd>+<kbd>1</kbd> |
||
| |
| |
||
+ | |<kbd>^Ctrl</kbd>+<kbd>1</kbd> |
||
− | | |
||
+ | |- |
||
+ | |Previous editor |
||
+ | |<kbd>Alt</kbd>+<kbd>←</kbd> |
||
+ | |<kbd>Alt</kbd>+<kbd>←</kbd> |
||
+ | |<kbd>⌥Alt</kbd>+<kbd>←</kbd> |
||
+ | |- |
||
+ | |Next editor |
||
+ | |<kbd>Alt</kbd>+<kbd>→</kbd> |
||
+ | |<kbd>Alt</kbd>+<kbd>→</kbd> |
||
+ | |<kbd>⌥Alt</kbd>+<kbd>→</kbd> |
||
|} |
|} |
||
Line 80: | Line 98: | ||
{| class="article-table" style="width: 100%;" |
{| class="article-table" style="width: 100%;" |
||
− | !scope="col" style="width: 34%;"|Function |
+ | ! scope="col" style="width: 34%;" |Function |
− | !scope="col" style="width: 22%;"|Windows |
+ | ! scope="col" style="width: 22%;" |Windows |
− | !scope="col" style="width: 22%;"|Linux |
+ | ! scope="col" style="width: 22%;" |Linux |
− | !scope="col" style="width: 22%;"|MacOS |
+ | ! scope="col" style="width: 22%;" |MacOS |
|- |
|- |
||
− | | |
+ | |<u>P</u>ause menu |
|<kbd>P</kbd> / <kbd>Enter</kbd> |
|<kbd>P</kbd> / <kbd>Enter</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |<u>P</u>erformance Monitor |
||
+ | |<kbd>Ctrl</kbd>+<kbd>P</kbd> |
||
| |
| |
||
| |
| |
||
Line 92: | Line 115: | ||
See [[Btn|<code>btn()</code>]] for details on default controller/keyboard mappings, and [[Keyconfig|<code>keyconfig</code>]] for info on changing those mappings. |
See [[Btn|<code>btn()</code>]] for details on default controller/keyboard mappings, and [[Keyconfig|<code>keyconfig</code>]] for info on changing those mappings. |
||
− | |||
==Command Line== |
==Command Line== |
||
{| class="article-table" style="width: 100%;" |
{| class="article-table" style="width: 100%;" |
||
− | !scope="col" style="width: 34%;"|Function |
+ | ! scope="col" style="width: 34%;" |Function |
− | !scope="col" style="width: 22%;"|Windows |
+ | ! scope="col" style="width: 22%;" |Windows |
− | !scope="col" style="width: 22%;"|Linux |
+ | ! scope="col" style="width: 22%;" |Linux |
− | !scope="col" style="width: 22%;"|MacOS |
+ | ! scope="col" style="width: 22%;" |MacOS |
|- |
|- |
||
− | | |
+ | |<u>C</u>opy (entire line) |
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
||
| |
| |
||
Line 117: | Line 139: | ||
| |
| |
||
|- |
|- |
||
− | | |
+ | |<u>E</u>nd-of-line |
|<kbd>End</kbd><br /><kbd>Ctrl</kbd>+<kbd>E</kbd> |
|<kbd>End</kbd><br /><kbd>Ctrl</kbd>+<kbd>E</kbd> |
||
| |
| |
||
Line 127: | Line 149: | ||
| |
| |
||
|- |
|- |
||
− | | |
+ | |<u>K</u>ill to end-of-line |
|<kbd>Ctrl</kbd>+<kbd>K</kbd> |
|<kbd>Ctrl</kbd>+<kbd>K</kbd> |
||
| |
| |
||
Line 136: | Line 158: | ||
| |
| |
||
| |
| |
||
− | | |
+ | |- |
+ | |Clear screen |
||
− | |||
+ | |<kbd>Ctrl</kbd>+<kbd>L</kbd> |
||
+ | | |
||
+ | | |
||
+ | |} |
||
==Text Editor== |
==Text Editor== |
||
− | |||
{| class="article-table" style="width: 100%;" |
{| class="article-table" style="width: 100%;" |
||
− | !scope="col" style="width: 34%;"|Function |
+ | ! scope="col" style="width: 34%;" |Function |
− | !scope="col" style="width: 22%;"|Windows |
+ | ! scope="col" style="width: 22%;" |Windows |
− | !scope="col" style="width: 22%;"|Linux |
+ | ! scope="col" style="width: 22%;" |Linux |
− | !scope="col" style="width: 22%;"|MacOS |
+ | ! scope="col" style="width: 22%;" |MacOS |
|- |
|- |
||
|Cut |
|Cut |
||
|<kbd>Ctrl</kbd>+<kbd>X</kbd> |
|<kbd>Ctrl</kbd>+<kbd>X</kbd> |
||
| |
| |
||
+ | |<kbd>⌘Cmd</kbd>+<kbd>X</kbd> |
||
− | | |
||
|- |
|- |
||
+ | |<u>C</u>opy |
||
− | |Copy |
||
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
||
| |
| |
||
+ | |<kbd>⌘Cmd</kbd>+<kbd>C</kbd> |
||
− | | |
||
|- |
|- |
||
|Paste |
|Paste |
||
|<kbd>Ctrl</kbd>+<kbd>V</kbd> |
|<kbd>Ctrl</kbd>+<kbd>V</kbd> |
||
| |
| |
||
+ | |<kbd>⌘Cmd</kbd>+<kbd>V</kbd> |
||
− | | |
||
|- |
|- |
||
− | |Select |
+ | |Select <u>A</u>ll |
|<kbd>Ctrl</kbd>+<kbd>A</kbd> |
|<kbd>Ctrl</kbd>+<kbd>A</kbd> |
||
| |
| |
||
+ | |<kbd>⌘Cmd</kbd>+<kbd>A</kbd> |
||
− | | |
||
|- |
|- |
||
+ | |<u>K</u>atakana (Japanese) Font Entry Mode Toggle |
||
− | |Glyph mode toggle |
||
|<kbd>Ctrl</kbd>+<kbd>K</kbd> |
|<kbd>Ctrl</kbd>+<kbd>K</kbd> |
||
| |
| |
||
+ | |<kbd>⌘Cmd</kbd>+<kbd>K</kbd> |
||
+ | |- |
||
+ | |Hiragana (<u>J</u>apanese) Font Entry Mode Toggle |
||
+ | |<kbd>Ctrl</kbd>+<kbd>J</kbd> |
||
| |
| |
||
+ | |<kbd>⌘Cmd</kbd>+<kbd>J</kbd> |
||
+ | |- |
||
+ | |<u>P</u>uny (Small Caps) Font Entry Mode Toggle |
||
+ | |<kbd>Ctrl</kbd>+<kbd>P</kbd> |
||
+ | | |
||
+ | |<kbd>⌘Cmd</kbd>+<kbd>P</kbd> |
||
+ | |- |
||
+ | |Glyph (Icons) Font Entry |
||
+ | |<kbd>Shift</kbd>+<kbd>ABC...XYZ</kbd> |
||
+ | | |
||
+ | |<kbd>Shift</kbd>+<kbd>ABC...XYZ</kbd> |
||
|- |
|- |
||
|Insert/overwrite toggle |
|Insert/overwrite toggle |
||
|<kbd>Ins</kbd> |
|<kbd>Ins</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Add indented line and 'END' |
||
+ | |<kbd>Shift</kbd>+<kbd>Enter</kbd> |
||
| |
| |
||
| |
| |
||
|- |
|- |
||
|Start of line |
|Start of line |
||
− | |<kbd>Home</kbd> |
+ | |<kbd>Home</kbd><br /><kbd>Ctrl</kbd>+<kbd>W</kbd> |
| |
| |
||
| |
| |
||
|- |
|- |
||
− | | |
+ | |<u>E</u>nd of line |
− | |<kbd>End</kbd> |
+ | |<kbd>End</kbd><br /><kbd>Ctrl</kbd>+<kbd>E</kbd> |
| |
| |
||
| |
| |
||
Line 238: | Line 283: | ||
| |
| |
||
|- |
|- |
||
− | | |
+ | |<u>F</u>ind text in current tab |
|<kbd>Ctrl</kbd>+<kbd>F</kbd> |
|<kbd>Ctrl</kbd>+<kbd>F</kbd> |
||
| |
| |
||
| |
| |
||
|- |
|- |
||
− | |Find text |
+ | |Find text a<u>G</u>ain |
|<kbd>Ctrl</kbd>+<kbd>G</kbd> |
|<kbd>Ctrl</kbd>+<kbd>G</kbd> |
||
| |
| |
||
| |
| |
||
|- |
|- |
||
+ | |Repeat search across tabs (<u>H</u>yper search) |
||
− | |Go to Line number |
||
+ | |<kbd>Ctrl</kbd>+<kbd>H</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Go to <u>L</u>ine number |
||
|<kbd>Ctrl</kbd>+<kbd>I</kbd><br /><kbd>Ctrl</kbd>+<kbd>L</kbd> |
|<kbd>Ctrl</kbd>+<kbd>I</kbd><br /><kbd>Ctrl</kbd>+<kbd>L</kbd> |
||
| |
| |
||
| |
| |
||
|- |
|- |
||
− | | |
+ | |<u>D</u>uplicate current line |
|<kbd>Ctrl</kbd>+<kbd>D</kbd> |
|<kbd>Ctrl</kbd>+<kbd>D</kbd> |
||
| |
| |
||
| |
| |
||
+ | |- |
||
+ | |Toggle comment <u>B</u>lock |
||
+ | |<kbd>Ctrl</kbd>+<kbd>B</kbd> |
||
+ | | |
||
+ | |<kbd>⌘Cmd</kbd>+<kbd>B</kbd> |
||
|- |
|- |
||
|Switch to next tab |
|Switch to next tab |
||
|<kbd>Ctrl</kbd>+<kbd>⇥Tab</kbd> |
|<kbd>Ctrl</kbd>+<kbd>⇥Tab</kbd> |
||
| |
| |
||
+ | |<kbd>^Ctrl</kbd>+<kbd>⇥Tab</kbd> |
||
− | | |
||
|- |
|- |
||
|Switch to previous tab |
|Switch to previous tab |
||
|<kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>⇥Tab</kbd> |
|<kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>⇥Tab</kbd> |
||
| |
| |
||
+ | |<kbd>^Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>⇥Tab</kbd> |
||
− | | |
||
|} |
|} |
||
Line 273: | Line 328: | ||
All tools: |
All tools: |
||
{| class="article-table" style="width: 100%;" |
{| class="article-table" style="width: 100%;" |
||
− | !scope="col" style="width: 34%;"|Function |
+ | ! scope="col" style="width: 34%;" |Function |
− | !scope="col" style="width: 22%;"|Windows |
+ | ! scope="col" style="width: 22%;" |Windows |
− | !scope="col" style="width: 22%;"|Linux |
+ | ! scope="col" style="width: 22%;" |Linux |
− | !scope="col" style="width: 22%;"|MacOS |
+ | ! scope="col" style="width: 22%;" |MacOS |
|- |
|- |
||
|Pan tool |
|Pan tool |
||
− | |<kbd>Space</kbd>+<kbd>🖰  |
+ | |<kbd>Space</kbd>+<kbd>🖰 LClick+Drag</kbd> |
| |
| |
||
| |
| |
||
|- |
|- |
||
+ | |<u>C</u>opy (see note below) |
||
− | |Copy |
||
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
||
| |
| |
||
Line 305: | Line 360: | ||
|Next sprite |
|Next sprite |
||
|<kbd>W</kbd> |
|<kbd>W</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Sprite above |
||
+ | |<kbd>Shift</kbd>+<kbd>Q</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Sprite below |
||
+ | |<kbd>Shift</kbd>+<kbd>W</kbd> |
||
| |
| |
||
| |
| |
||
Line 324: | Line 389: | ||
|- |
|- |
||
|Replace color |
|Replace color |
||
− | |<kbd>Ctrl</kbd>+<kbd>🖰  |
+ | |<kbd>Ctrl</kbd>+<kbd>🖰 LClick</kbd> |
| |
| |
||
| |
| |
||
Line 333: | Line 398: | ||
| |
| |
||
|- |
|- |
||
+ | |<u>F</u>lip <u>H</u>orizontal |
||
− | |Flip horizontal |
||
− | |<kbd>F</kbd> |
+ | |<kbd>F</kbd><br /><kbd>H</kbd> |
| |
| |
||
| |
| |
||
|- |
|- |
||
− | |Flip |
+ | |Flip <u>V</u>ertical |
|<kbd>V</kbd> |
|<kbd>V</kbd> |
||
| |
| |
||
| |
| |
||
|- |
|- |
||
− | | |
+ | |<u>R</u>otate 90° CCW |
|<kbd>R</kbd> |
|<kbd>R</kbd> |
||
| |
| |
||
Line 356: | Line 421: | ||
Draw tool: |
Draw tool: |
||
{| class="article-table" style="width: 100%;" |
{| class="article-table" style="width: 100%;" |
||
− | !scope="col" style="width: 34%;"|Function |
+ | ! scope="col" style="width: 34%;" |Function |
− | !scope="col" style="width: 22%;"|Windows |
+ | ! scope="col" style="width: 22%;" |Windows |
− | !scope="col" style="width: 22%;"|Linux |
+ | ! scope="col" style="width: 22%;" |Linux |
− | !scope="col" style="width: 22%;"|MacOS |
+ | ! scope="col" style="width: 22%;" |MacOS |
|- |
|- |
||
+ | |<u>C</u>opy |
||
− | |Copy |
||
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
||
| |
| |
||
Line 372: | Line 437: | ||
|- |
|- |
||
|Replace color |
|Replace color |
||
− | |<kbd>Ctrl</kbd>+<kbd>🖰  |
+ | |<kbd>Ctrl</kbd>+<kbd>🖰 LClick</kbd> |
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Color Picker |
||
+ | |<kbd>🖰 RClick</kbd> |
||
| |
| |
||
| |
| |
||
Line 379: | Line 449: | ||
Stamp tool: |
Stamp tool: |
||
{| class="article-table" style="width: 100%;" |
{| class="article-table" style="width: 100%;" |
||
− | !scope="col" style="width: 34%;"|Function |
+ | ! scope="col" style="width: 34%;" |Function |
− | !scope="col" style="width: 22%;"|Windows |
+ | ! scope="col" style="width: 22%;" |Windows |
− | !scope="col" style="width: 22%;"|Linux |
+ | ! scope="col" style="width: 22%;" |Linux |
− | !scope="col" style="width: 22%;"|MacOS |
+ | ! scope="col" style="width: 22%;" |MacOS |
|- |
|- |
||
|Stamp with color 0 transparent |
|Stamp with color 0 transparent |
||
− | |<kbd>LCtrl</kbd>+<kbd>🖰  |
+ | |<kbd>LCtrl</kbd>+<kbd>🖰 LClick</kbd> |
| |
| |
||
| |
| |
||
Line 392: | Line 462: | ||
Select tool: |
Select tool: |
||
{| class="article-table" style="width: 100%;" |
{| class="article-table" style="width: 100%;" |
||
− | !scope="col" style="width: 34%;"|Function |
+ | ! scope="col" style="width: 34%;" |Function |
− | !scope="col" style="width: 22%;"|Windows |
+ | ! scope="col" style="width: 22%;" |Windows |
− | !scope="col" style="width: 22%;"|Linux |
+ | ! scope="col" style="width: 22%;" |Linux |
− | !scope="col" style="width: 22%;"|MacOS |
+ | ! scope="col" style="width: 22%;" |MacOS |
|- |
|- |
||
|Select none |
|Select none |
||
Line 409: | Line 479: | ||
Lower sprite sheet area: |
Lower sprite sheet area: |
||
{| class="article-table" style="width: 100%;" |
{| class="article-table" style="width: 100%;" |
||
− | !scope="col" style="width: 34%;"|Function |
+ | ! scope="col" style="width: 34%;" |Function |
− | !scope="col" style="width: 22%;"|Windows |
+ | ! scope="col" style="width: 22%;" |Windows |
− | !scope="col" style="width: 22%;"|Linux |
+ | ! scope="col" style="width: 22%;" |Linux |
− | !scope="col" style="width: 22%;"|MacOS |
+ | ! scope="col" style="width: 22%;" |MacOS |
|- |
|- |
||
|Select multiple sprites<br />(for flip, shift, copy, rotate) |
|Select multiple sprites<br />(for flip, shift, copy, rotate) |
||
− | |<kbd>Shift</kbd>+<kbd>🖰  |
+ | |<kbd>Shift</kbd>+<kbd>🖰 LClick+Drag</kbd> |
| |
| |
||
| |
| |
||
|} |
|} |
||
+ | Note: When a sprite or range of sprites is copied to the clipboard, they may be pasted into other programs as a text-encoded representation. This representation can be uploaded in a BBS post and will show as the actual sprite. Similarly, a sprite encoded in text may be copied from outside of PICO-8 and pasted into the sprite editor. |
||
− | ==Map editor== |
||
− | (TODO) |
||
+ | ==Map editor== |
||
+ | {| class="article-table" |
||
+ | !Function |
||
+ | !MacOS |
||
+ | |- |
||
+ | |Move a sprite to another sprite and changes all sprites on map equal to the sprite number to the new sprite number |
||
+ | |<kbd>Ctrl</kbd>+<kbd>X</kbd> |
||
+ | |} |
||
==SFX editor== |
==SFX editor== |
||
+ | |||
− | (TODO) |
||
+ | ==== Both views ==== |
||
+ | {| class="article-table" style="width: 100%;" |
||
+ | ! scope="col" style="width: 34%;" |Function |
||
+ | ! scope="col" style="width: 22%;" |Windows |
||
+ | ! scope="col" style="width: 22%;" |Linux |
||
+ | ! scope="col" style="width: 22%;" |MacOS |
||
+ | |- |
||
+ | |Swap pitch/note views |
||
+ | |<kbd>Tab</kbd> |
||
+ | |<kbd>Tab</kbd> |
||
+ | | |
||
+ | |- |
||
+ | |Increase Speed |
||
+ | |<kbd>Period</kbd> |
||
+ | |<kbd>Period</kbd> |
||
+ | | |
||
+ | |- |
||
+ | |Decrease Speed |
||
+ | |<kbd>Comma</kbd> |
||
+ | |<kbd>Comma</kbd> |
||
+ | | |
||
+ | |- |
||
+ | |Increase Speed by 4 |
||
+ | |<kbd>Shift</kbd> + <kbd>Period</kbd> |
||
+ | |<kbd>Shift</kbd> + <kbd>Period</kbd> |
||
+ | | |
||
+ | |- |
||
+ | |Decrease Speed by 4 |
||
+ | |<kbd>Shift</kbd> + <kbd>Comma</kbd> |
||
+ | |<kbd>Shift</kbd> + <kbd>Comma</kbd> |
||
+ | | |
||
+ | |- |
||
+ | |Switch to Next Sound Effect |
||
+ | |<kbd>=</kbd> |
||
+ | |<kbd>=</kbd> |
||
+ | | |
||
+ | |- |
||
+ | |Switch to Previous Sound Effect |
||
+ | |<kbd>-</kbd> |
||
+ | |<kbd>-</kbd> |
||
+ | | |
||
+ | |- |
||
+ | |Switch to n+4 Sound Effect |
||
+ | |<kbd>Shift</kbd>+<kbd>=</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Switch to n-4 Sound Effect |
||
+ | |<kbd>Shift</kbd>+<kbd>-</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Change all notes to the selected instrument |
||
+ | |<kbd>Shift</kbd>+<kbd>🖰 LClick</kbd> on an instrument |
||
+ | | |
||
+ | | |
||
+ | |} |
||
+ | |||
+ | ==== Note view ==== |
||
+ | ''For each of the transpose shortcuts, you need to have notes selected.'' |
||
+ | {| class="article-table" style="width: 100%;" |
||
+ | ! scope="col" style="width: 34%;" |Function |
||
+ | ! scope="col" style="width: 22%;" |Windows |
||
+ | ! scope="col" style="width: 22%;" |Linux |
||
+ | ! scope="col" style="width: 22%;" |MacOS |
||
+ | |- |
||
+ | |Select Multiple Notes |
||
+ | |<kbd>Shift</kbd>+<kbd>🖰 LClick</kbd> the notes (first click is left side, second click is right side) |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Apply Effect to All Notes |
||
+ | |<kbd>Shift</kbd>+<kbd>🖰 LClick</kbd> an effect |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Navigate down/up 4 notes |
||
+ | |<kbd>Ctrl</kbd>+<kbd> ↓ </kbd> or <kbd>Ctrl</kbd>+<kbd> ↑ </kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Navigate to right/left column |
||
+ | |<kbd>Ctrl</kbd>+<kbd>→</kbd> or <kbd>Ctrl</kbd>+<kbd>←</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +1 (one semitone) |
||
+ | |<kbd>Shift</kbd>+<kbd>2</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +2 |
||
+ | |<kbd>Shift</kbd>+<kbd>W</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +3 |
||
+ | |<kbd>Shift</kbd>+<kbd>3</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +4 |
||
+ | |<kbd>Shift</kbd>+<kbd>E</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +5 |
||
+ | |<kbd>Shift</kbd>+<kbd>R</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +6 |
||
+ | |<kbd>Shift</kbd>+<kbd>5</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +7 |
||
+ | |<kbd>Shift</kbd>+<kbd>T</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +8 |
||
+ | |<kbd>Shift</kbd>+<kbd>6</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +9 |
||
+ | |<kbd>Shift</kbd>+<kbd>Y</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +10 |
||
+ | |<kbd>Shift</kbd>+<kbd>7</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +11 |
||
+ | |<kbd>Shift</kbd>+<kbd>U</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +12 (one octave) |
||
+ | |<kbd>Shift</kbd>+<kbd>i</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +13 |
||
+ | |<kbd>Shift</kbd>+<kbd>9</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +14 |
||
+ | |<kbd>Shift</kbd>+<kbd>O</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose +15 |
||
+ | |<kbd>Shift</kbd>+<kbd>0</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose -12 (one octave) |
||
+ | |<kbd>Shift</kbd>+<kbd>Z</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose -11 |
||
+ | |<kbd>Shift</kbd>+<kbd>S</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose -10 |
||
+ | |<kbd>Shift</kbd>+<kbd>X</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose -9 |
||
+ | |<kbd>Shift</kbd>+<kbd>D</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose -8 |
||
+ | |<kbd>Shift</kbd>+<kbd>C</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose -7 |
||
+ | |<kbd>Shift</kbd>+<kbd>V</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose -6 |
||
+ | |<kbd>Shift</kbd>+<kbd>G</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose -5 |
||
+ | |<kbd>Shift</kbd>+<kbd>B</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose -4 |
||
+ | |<kbd>Shift</kbd>+<kbd>H</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose -3 |
||
+ | |<kbd>Shift</kbd>+<kbd>N</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose -2 |
||
+ | |<kbd>Shift</kbd>+<kbd>J</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Transpose -1 |
||
+ | |<kbd>Shift</kbd>+<kbd>M</kbd> |
||
+ | | |
||
+ | | |
||
+ | |} |
||
==Music editor== |
==Music editor== |
||
(TODO) |
(TODO) |
||
+ | [[Category:Research]] |
Latest revision as of 21:33, 4 December 2023
!!! Work in progress !!!
Not all PICO-8 hardware has a keyboard, but when it does, there are many keyboard shortcuts that one can use. Known shortcuts are listed here.
- Important: the lists below all start with the shortcuts for a QWERTY keyboard layout on a Windows build of PICO-8. Key bindings for other keyboard layouts or platform builds are only listed if they are known to be different from the Windows Build.
- If your key isn't listed, or doesn't work right, try to use the Windows-style shortcut the way you would usually expect one to be done in your own OS. For instance, if you know Undo is Ctrl-Z on Windows, you'd want to try Cmd-Z on MacOS. Certain MacOS functions, but not all, permit the use of either the Ctrl or Cmd keys interchangeably. For instance, both Ctrl+C and Cmd+C will copy text on MacOS. As such, certain functions may have multiple redundant shortcuts listed under the MacOS column. As these are functionally equivalent, you can choose whichever shortcut works best for your workflow and/or preference.
- Also, if you are on a different regional layout, such as AZERTY or QWERTZ, try using the key that would be in the same physical position as the QWERTY key. And remember, there is a
keyconfig
command you can use to change in-game button assignments.
- Readers with knowledge of other platforms are encouraged to fill in the blanks if they know of keys that differ from the Windows layout. Don't worry too much about following the tricky formatting in these tables, unless you want to. Feel free to just enter whatever helpful notes you have, even if they aren't put into the tables. Someone else can do the formatting later if needed. Thanks!
Global use[]
Function | Windows | Linux | MacOS |
---|---|---|---|
Quit | Alt+F4 | Ctrl+Q | ⌘Cmd+Q |
Reload/Run/Restart | Ctrl+R | Ctrl+R | ⌘Cmd+R |
Quick-Save | Ctrl+S | Ctrl+S | ⌘Cmd+S |
Mute/unmute | Ctrl+M | Ctrl+M | ^Ctrl+M |
Editor toggle | Esc | Esc | Esc |
Full screen toggle | Alt+Enter | Alt+Enter | ⌘Cmd+F |
Save a screenshot to desktop | F1 / F6 Ctrl+6 |
^Ctrl+6 | |
Capture cartridge label image | F2 / F7 Ctrl+7 |
^Ctrl+7 | |
Start recording a video | F3 / F8 Ctrl+8 |
^Ctrl+8 | |
Save GIF video to desktop | F4 / F9 Ctrl+9 |
^Ctrl+9 | |
Toggle keyboard cursor | F5 / F10 Ctrl+0 |
^Ctrl+0 | |
Toggle FPS display | Ctrl+1 | ^Ctrl+1 | |
Previous editor | Alt+← | Alt+← | ⌥Alt+← |
Next editor | Alt+→ | Alt+→ | ⌥Alt+→ |
While running[]
Function | Windows | Linux | MacOS |
---|---|---|---|
Pause menu | P / Enter | ||
Performance Monitor | Ctrl+P |
See btn()
for details on default controller/keyboard mappings, and keyconfig
for info on changing those mappings.
Command Line[]
Function | Windows | Linux | MacOS |
---|---|---|---|
Copy (entire line) | Ctrl+C | ||
Paste | Ctrl+V | ||
History | ↑ / ↓ | ||
End-of-line | End Ctrl+E |
||
Start-of-line | Home Ctrl+A |
||
Kill to end-of-line | Ctrl+K | ||
Kill to start-of-line | Ctrl+U | ||
Clear screen | Ctrl+L |
Text Editor[]
Function | Windows | Linux | MacOS |
---|---|---|---|
Cut | Ctrl+X | ⌘Cmd+X | |
Copy | Ctrl+C | ⌘Cmd+C | |
Paste | Ctrl+V | ⌘Cmd+V | |
Select All | Ctrl+A | ⌘Cmd+A | |
Katakana (Japanese) Font Entry Mode Toggle | Ctrl+K | ⌘Cmd+K | |
Hiragana (Japanese) Font Entry Mode Toggle | Ctrl+J | ⌘Cmd+J | |
Puny (Small Caps) Font Entry Mode Toggle | Ctrl+P | ⌘Cmd+P | |
Glyph (Icons) Font Entry | Shift+ABC...XYZ | Shift+ABC...XYZ | |
Insert/overwrite toggle | Ins | ||
Add indented line and 'END' | Shift+Enter | ||
Start of line | Home Ctrl+W |
||
End of line | End Ctrl+E |
||
Start of document | Ctrl+Home Ctrl+ ↑ |
||
End of document | Ctrl+End Ctrl+ ↓ |
||
Previous word | Ctrl+← | ||
Next word | Ctrl+→ | ||
Previous function | Alt+ ↑ | ||
Next function | Alt+ ↓ | ||
Indent selection | ⇥Tab | ||
Un-indent selection | Shift+⇥Tab | ||
Undo | Ctrl+Z | ||
Redo | Ctrl+Y | ||
Find text in current tab | Ctrl+F | ||
Find text aGain | Ctrl+G | ||
Repeat search across tabs (Hyper search) | Ctrl+H | ||
Go to Line number | Ctrl+I Ctrl+L |
||
Duplicate current line | Ctrl+D | ||
Toggle comment Block | Ctrl+B | ⌘Cmd+B | |
Switch to next tab | Ctrl+⇥Tab | ^Ctrl+⇥Tab | |
Switch to previous tab | Ctrl+Shift+⇥Tab | ^Ctrl+Shift+⇥Tab |
Sprite editor[]
All tools:
Function | Windows | Linux | MacOS |
---|---|---|---|
Pan tool | Space+🖰 LClick+Drag | ||
Copy (see note below) | Ctrl+C | ||
Paste (at current sprite location) | Ctrl+V | ||
Undo/Redo (single-step) | Ctrl+Z | ||
Previous sprite | Q | ||
Next sprite | W | ||
Sprite above | Shift+Q | ||
Sprite below | Shift+W | ||
Previous color | 1 | ||
Next color | 2 | ||
Toggle full view | ⇥Tab | ||
Replace color | Ctrl+🖰 LClick | ||
Shift by one pixel | ← / → / ↑ / ↓ | ||
Flip Horizontal | F H |
||
Flip Vertical | V | ||
Rotate 90° CCW | R | ||
Zoom | < / > 🖰 Wheel |
Draw tool:
Function | Windows | Linux | MacOS |
---|---|---|---|
Copy | Ctrl+C | ||
Paste (at upper left) | Ctrl+V | ||
Replace color | Ctrl+🖰 LClick | ||
Color Picker | 🖰 RClick |
Stamp tool:
Function | Windows | Linux | MacOS |
---|---|---|---|
Stamp with color 0 transparent | LCtrl+🖰 LClick |
Select tool:
Function | Windows | Linux | MacOS |
---|---|---|---|
Select none | Enter |
Fill tool:
(n/a?)
Lower sprite sheet area:
Function | Windows | Linux | MacOS |
---|---|---|---|
Select multiple sprites (for flip, shift, copy, rotate) |
Shift+🖰 LClick+Drag |
Note: When a sprite or range of sprites is copied to the clipboard, they may be pasted into other programs as a text-encoded representation. This representation can be uploaded in a BBS post and will show as the actual sprite. Similarly, a sprite encoded in text may be copied from outside of PICO-8 and pasted into the sprite editor.
Map editor[]
Function | MacOS |
---|---|
Move a sprite to another sprite and changes all sprites on map equal to the sprite number to the new sprite number | Ctrl+X |
SFX editor[]
Both views[]
Function | Windows | Linux | MacOS |
---|---|---|---|
Swap pitch/note views | Tab | Tab | |
Increase Speed | Period | Period | |
Decrease Speed | Comma | Comma | |
Increase Speed by 4 | Shift + Period | Shift + Period | |
Decrease Speed by 4 | Shift + Comma | Shift + Comma | |
Switch to Next Sound Effect | = | = | |
Switch to Previous Sound Effect | - | - | |
Switch to n+4 Sound Effect | Shift+= | ||
Switch to n-4 Sound Effect | Shift+- | ||
Change all notes to the selected instrument | Shift+🖰 LClick on an instrument |
Note view[]
For each of the transpose shortcuts, you need to have notes selected.
Function | Windows | Linux | MacOS |
---|---|---|---|
Select Multiple Notes | Shift+🖰 LClick the notes (first click is left side, second click is right side) | ||
Apply Effect to All Notes | Shift+🖰 LClick an effect | ||
Navigate down/up 4 notes | Ctrl+ ↓ or Ctrl+ ↑ | ||
Navigate to right/left column | Ctrl+→ or Ctrl+← | ||
Transpose +1 (one semitone) | Shift+2 | ||
Transpose +2 | Shift+W | ||
Transpose +3 | Shift+3 | ||
Transpose +4 | Shift+E | ||
Transpose +5 | Shift+R | ||
Transpose +6 | Shift+5 | ||
Transpose +7 | Shift+T | ||
Transpose +8 | Shift+6 | ||
Transpose +9 | Shift+Y | ||
Transpose +10 | Shift+7 | ||
Transpose +11 | Shift+U | ||
Transpose +12 (one octave) | Shift+i | ||
Transpose +13 | Shift+9 | ||
Transpose +14 | Shift+O | ||
Transpose +15 | Shift+0 | ||
Transpose -12 (one octave) | Shift+Z | ||
Transpose -11 | Shift+S | ||
Transpose -10 | Shift+X | ||
Transpose -9 | Shift+D | ||
Transpose -8 | Shift+C | ||
Transpose -7 | Shift+V | ||
Transpose -6 | Shift+G | ||
Transpose -5 | Shift+B | ||
Transpose -4 | Shift+H | ||
Transpose -3 | Shift+N | ||
Transpose -2 | Shift+J | ||
Transpose -1 | Shift+M |
Music editor[]
(TODO)