(→Global use: fps toggle) |
(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 |
||
(35 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 ⌃↩⌤⌫⌦⌧⇥⇤␣⎋⇪⏏⇞⇟↖↘←→↑↓ --> |
||
==Global use== |
==Global use== |
||
− | {| class="article-table" |
+ | {| class="article-table" style="width: 100%;" |
− | !Function |
+ | !scope="col" style="width: 34%;"|Function |
+ | !scope="col" style="width: 22%;"|Windows |
||
− | !Windows |
||
+ | !scope="col" style="width: 22%;"|Linux |
||
− | !Linux |
||
+ | !scope="col" style="width: 22%;"|MacOS |
||
− | !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> |
||
|- |
|- |
||
|Save a screenshot to desktop |
|Save a screenshot to desktop |
||
− | |<kbd>F1</kbd> / <kbd>F6</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> |
+ | |<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> |
+ | |<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> |
+ | |<kbd>F4</kbd> / <kbd>F9</kbd><br /><kbd>Ctrl</kbd>+<kbd>9</kbd> |
| |
| |
||
+ | |<kbd>^Ctrl</kbd>+<kbd>9</kbd> |
||
+ | |- |
||
+ | |Toggle keyboard cursor |
||
+ | |<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> |
||
|} |
|} |
||
==While running== |
==While running== |
||
− | {| class="article-table" |
+ | {| class="article-table" style="width: 100%;" |
− | !Function |
+ | ! scope="col" style="width: 34%;" |Function |
+ | ! scope="col" style="width: 22%;" |Windows |
||
− | !Windows |
||
+ | ! scope="col" style="width: 22%;" |Linux |
||
− | !Linux |
||
+ | ! scope="col" style="width: 22%;" |MacOS |
||
− | !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 87: | 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" |
+ | {| class="article-table" style="width: 100%;" |
− | !Function |
+ | ! scope="col" style="width: 34%;" |Function |
+ | ! scope="col" style="width: 22%;" |Windows |
||
− | !Windows |
||
+ | ! scope="col" style="width: 22%;" |Linux |
||
− | !Linux |
||
+ | ! scope="col" style="width: 22%;" |MacOS |
||
− | !MacOS |
||
|- |
|- |
||
− | | |
+ | |<u>C</u>opy (entire line) |
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
||
| |
| |
||
Line 111: | Line 138: | ||
| |
| |
||
| |
| |
||
− | | |
+ | |- |
+ | |<u>E</u>nd-of-line |
||
− | |||
+ | |<kbd>End</kbd><br /><kbd>Ctrl</kbd>+<kbd>E</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Start-of-line |
||
+ | |<kbd>Home</kbd><br /><kbd>Ctrl</kbd>+<kbd>A</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |<u>K</u>ill to end-of-line |
||
+ | |<kbd>Ctrl</kbd>+<kbd>K</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Kill to start-of-line |
||
+ | |<kbd>Ctrl</kbd>+<kbd>U</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Clear screen |
||
+ | |<kbd>Ctrl</kbd>+<kbd>L</kbd> |
||
+ | | |
||
+ | | |
||
+ | |} |
||
==Text Editor== |
==Text Editor== |
||
+ | {| class="article-table" style="width: 100%;" |
||
− | |||
+ | ! scope="col" style="width: 34%;" |Function |
||
− | {| class="article-table" |
||
+ | ! scope="col" style="width: 22%;" |Windows |
||
− | !Function |
||
+ | ! scope="col" style="width: 22%;" |Linux |
||
− | !Windows |
||
+ | ! scope="col" style="width: 22%;" |MacOS |
||
− | !Linux |
||
− | !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> |
| |
| |
||
| |
| |
||
|- |
|- |
||
|Start of document |
|Start of document |
||
− | |<kbd>Ctrl</kbd>+<kbd>Home</kbd> |
+ | |<kbd>Ctrl</kbd>+<kbd>Home</kbd><br /><kbd>Ctrl</kbd>+<kbd> ↑ </kbd> |
| |
| |
||
| |
| |
||
|- |
|- |
||
|End of document |
|End of document |
||
− | |<kbd>Ctrl</kbd>+<kbd>End</kbd> |
+ | |<kbd>Ctrl</kbd>+<kbd>End</kbd><br /><kbd>Ctrl</kbd>+<kbd> ↓ </kbd> |
| |
| |
||
| |
| |
||
Line 213: | 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> |
+ | |<kbd>Ctrl</kbd>+<kbd>H</kbd> |
| |
| |
||
| |
| |
||
|- |
|- |
||
+ | |Go to <u>L</u>ine number |
||
− | |Duplicate current line |
||
+ | |<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> |
||
− | | |
||
− | |} |
+ | |} |
==Sprite editor== |
==Sprite editor== |
||
All tools: |
All tools: |
||
− | {| class="article-table" |
+ | {| class="article-table" style="width: 100%;" |
− | !Function |
+ | ! scope="col" style="width: 34%;" |Function |
+ | ! scope="col" style="width: 22%;" |Windows |
||
− | !Windows |
||
+ | ! scope="col" style="width: 22%;" |Linux |
||
− | !Linux |
||
+ | ! scope="col" style="width: 22%;" |MacOS |
||
− | !MacOS |
||
|- |
|- |
||
+ | |Pan tool |
||
− | |Copy |
||
+ | |<kbd>Space</kbd>+<kbd>🖰 LClick+Drag</kbd> |
||
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |<u>C</u>opy (see note below) |
||
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
||
| |
| |
||
Line 275: | 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 294: | Line 389: | ||
|- |
|- |
||
|Replace color |
|Replace color |
||
− | |<kbd>Ctrl</kbd>+<kbd>🖰  |
+ | |<kbd>Ctrl</kbd>+<kbd>🖰 LClick</kbd> |
| |
| |
||
| |
| |
||
Line 303: | 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 319: | Line 414: | ||
|- |
|- |
||
|Zoom |
|Zoom |
||
− | |<kbd><</kbd> / <kbd>></kbd> |
+ | |<kbd><</kbd> / <kbd>></kbd><br /><kbd>🖰 Wheel</kbd> |
| |
| |
||
| |
| |
||
Line 325: | Line 420: | ||
Draw tool: |
Draw tool: |
||
− | {| class="article-table" |
+ | {| class="article-table" style="width: 100%;" |
− | !Function |
+ | ! scope="col" style="width: 34%;" |Function |
+ | ! scope="col" style="width: 22%;" |Windows |
||
− | !Windows |
||
+ | ! scope="col" style="width: 22%;" |Linux |
||
− | !Linux |
||
+ | ! scope="col" style="width: 22%;" |MacOS |
||
− | !MacOS |
||
|- |
|- |
||
+ | |<u>C</u>opy |
||
− | |Copy |
||
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
|<kbd>Ctrl</kbd>+<kbd>C</kbd> |
||
| |
| |
||
Line 342: | Line 437: | ||
|- |
|- |
||
|Replace color |
|Replace color |
||
− | |<kbd>Ctrl</kbd>+<kbd>🖰  |
+ | |<kbd>Ctrl</kbd>+<kbd>🖰 LClick</kbd> |
+ | | |
||
+ | | |
||
+ | |- |
||
+ | |Color Picker |
||
+ | |<kbd>🖰 RClick</kbd> |
||
| |
| |
||
| |
| |
||
Line 348: | Line 448: | ||
Stamp tool: |
Stamp tool: |
||
− | {| class="article-table" |
+ | {| class="article-table" style="width: 100%;" |
− | !Function |
+ | ! scope="col" style="width: 34%;" |Function |
+ | ! scope="col" style="width: 22%;" |Windows |
||
− | !Windows |
||
+ | ! scope="col" style="width: 22%;" |Linux |
||
− | !Linux |
||
+ | ! scope="col" style="width: 22%;" |MacOS |
||
− | !MacOS |
||
|- |
|- |
||
|Stamp with color 0 transparent |
|Stamp with color 0 transparent |
||
− | |<kbd>LCtrl</kbd>+<kbd>🖰  |
+ | |<kbd>LCtrl</kbd>+<kbd>🖰 LClick</kbd> |
| |
| |
||
| |
| |
||
Line 361: | Line 461: | ||
Select tool: |
Select tool: |
||
− | {| class="article-table" |
+ | {| class="article-table" style="width: 100%;" |
− | !Function |
+ | ! scope="col" style="width: 34%;" |Function |
+ | ! scope="col" style="width: 22%;" |Windows |
||
− | !Windows |
||
+ | ! scope="col" style="width: 22%;" |Linux |
||
− | !Linux |
||
+ | ! scope="col" style="width: 22%;" |MacOS |
||
− | !MacOS |
||
|- |
|- |
||
|Select none |
|Select none |
||
Line 373: | Line 473: | ||
|} |
|} |
||
− | + | Fill tool: |
|
+ | |||
− | {| class="article-table" |
||
+ | (n/a?) |
||
− | !Function |
||
+ | |||
− | !Windows |
||
+ | Lower sprite sheet area: |
||
− | !Linux |
||
+ | {| class="article-table" style="width: 100%;" |
||
− | !MacOS |
||
+ | ! 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 sprites<br />(for flip, shift, copy, rotate) |
||
− | |View sprite sheet |
||
− | |<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. |
||
− | Fill tool: |
||
− | |||
− | (n/a?) |
||
==Map editor== |
==Map editor== |
||
+ | {| class="article-table" |
||
− | (TODO) |
||
+ | !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)