Skip to content
/
Try

Skink vs Micro

Find an action in F1, bind it in bindings.json.

Skink started from Micro. It uses Micro’s default key bindings and the same settings.json and bindings.json formats, so your muscle memory carries over.

The difference is what is built in. Skink ships language servers, tree-sitter, git, project search, terminal tabs and an AI agent client. Micro keeps a small core and adds features through Lua plugins.

  • Plugins. You use Micro plugins or write your own in Lua. Skink has no plugins or scripting yet.
  • Maturity. Micro has been around since 2016. Skink is alpha.
  • Micro’s own formats. You like Micro’s syntax files and colorschemes and want to keep customising them.
  • Minimalism. You want the smallest feature set that does the job.
  • IDE features without plugins. You love Micro’s keys but want completion, hover, go to definition, rename, code actions and formatting out of the box.
  • Syntax-aware editing. Tree-sitter highlighting, syntax-aware selection (Alt+O / Alt+I) and folding.
  • Git in the editor. Gutter marks, stage and revert hunks, blame, a git panel and conflict resolution.
  • AI agents. You run AI coding agents and want them in the editor, not just next to it.
Skink Micro
Editing model Modeless, Micro keys Modeless
Mouse On On by default (mouse option)
LSP Built in Community plugins
Syntax tree-sitter, 19 languages Regex YAML syntax files, many languages
Built-in terminal Terminal tabs, dock, history search term command
Tabs and splits Yes Yes
Git Gutter, hunks, blame, panel, diff diff gutter plugin
Project search, file tree Built in Plugins
AI agents ACP client, prompt box, agent panel No
Plugins None yet Lua plugins with a plugin manager
Clipboard over SSH OSC 52 by default "clipboard": "terminal"
Works over plain SSH Yes Yes
Footprint Small Small
Maturity Alpha Mature

Skink reads the same file formats from its own folder, ~/.config/skink (or $SKINK_CONFIG_DIR). It does not read ~/.config/micro by itself, so copy the files over:

Terminal window
mkdir -p ~/.config/skink
cp ~/.config/micro/settings.json ~/.config/micro/bindings.json ~/.config/skink/

Then run :reload inside Skink, or restart it.

  • bindings.json uses Micro’s key names and action names, including chains. "Copy|CopyLine" runs the first that works, "Escape,Deselect" runs both, and "command-edit:goto " opens the command line pre-filled.
  • settings.json accepts Micro’s options where Skink has the same feature, for example tabsize, tabstospaces, autoclose and colorcolumn (Skink also has rulers). Options for features Skink lacks have no effect.
  • Comments. Skink also accepts // comments and trailing commas in both files.
  • Not supported. Bindings that call Micro plugin actions or Lua do nothing.
{
"Ctrl-j": "Save",
"Alt-g": "command-edit:goto ",
"Ctrl-c": "Copy|CopyLine"
}

As in Micro, a capital letter after Alt- in bindings.json means Shift: "Alt-G" is Alt+Shift+G.

Everything from Micro’s defaults works as before:

  • Ctrl+S save, Ctrl+Q quit
  • Ctrl+F find, Ctrl+N / Ctrl+P next / previous match
  • Ctrl+E command line
  • Ctrl+D multiple cursors
  • Ctrl+U / Ctrl+J record / replay a macro
  • Alt+, / Alt+. previous / next tab
Key Typed command Does
Alt+P :recent Quick open: tabs, recent and project files
F1 :palette Command palette
F8 / Ctrl+B :files / :sidebar File tree / hide the sidebar
F12 / Shift+F12 :toggleterm / :newterm Toggle to the terminal / new terminal
Alt+S :grep Search in all files
Alt+G, Alt+K, Alt+R :def, :hover, :refs Definition, hover, references
Ctrl+G :ask AI prompt box for the selection
Alt+Shift+C :gitpanel Git panel

To run a typed command, press Ctrl+E, type the name and press Enter. Every key has one. See typed commands.

Full table: shortcuts.

Terminal window
curl -fsSL https://skink.cc/install.sh | sh
skink .

Micro and Skink install side by side.

Next: quick start, or Skink vs nano.