# Skink vs Micro

> Skink vs Micro: same keys and the same settings.json and bindings.json. Micro has Lua plugins and maturity; Skink adds LSP, tree-sitter, git and AI agents.

Source: https://skink.cc/compare/micro/

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.

## Who should pick Micro

- **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.

## Who should pick Skink

- **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.

## Feature comparison

| | 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 |

## Bring your Micro config over

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:

```sh
mkdir -p ~/.config/skink
cp ~/.config/micro/settings.json ~/.config/micro/bindings.json ~/.config/skink/
```

Then run `:reload` inside Skink, or restart it.

### What carries over

- **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.

```json
{
  "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.

**Note:**
Micro's mouse bindings are not used. Skink handles the mouse directly: click, drag, Alt+click for cursors, middle-click to close a tab.

## Keys that are the same

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

## Keys that are new in Skink

| 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](https://skink.cc/editing/typed-commands/).

Full table: [shortcuts](https://skink.cc/reference/shortcuts/).

## Try it

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

Micro and Skink install side by side.

Next: [quick start](https://skink.cc/start/quick-start/), or [Skink vs nano](https://skink.cc/compare/nano/).
