Skip to content
PICO-8 mode for Emacs
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore Initial empty commit Feb 12, 2018 Render sprites and labels inline in the buffer Feb 20, 2018
pico8-mode.el Remove tabs in code Feb 22, 2018

PICO-8 mode

pico8-mode is a major mode for Emacs which supports PICO-8 .p8 file code editing. It’s based on lua-mode.


  • Sets a dimmer color for non-Lua sections of the .p8 file
  • Offers basic auto-complete
    • Supports company-mode and completion-at-point
    • Completes PICO-8 builtins, functions, variables and arguments with some scoping
  • Navigation with xref
  • Documentation with eldoc
    • If PICO-8 manual path is set, then it shows builtin documentation from there.
  • Renders sprites and labels inline in the buffer.


For now do an manual installation, as it’s not in MELPA.

Customization variables are available at group pico-8.

For documentation lookup to work, set pico8-documentation-file to an absolute path to “pico-8.txt” which is included with PICO-8. After setting this variable, run pico8-build-documentation function to force a rebuild. This happens automatically when the mode is loaded.


  • lua-mode
  • Emacs >= 25.1 (tested with 26)


This mode uses some internal functions from lua-mode, which means that it might fail if lua-mode updates in an incompatible way.

You can’t perform that action at this time.