Statac's language server for Sublime Text.
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-10-27 13:14:06 +00:00
.python-version feat: start Statac's language server for files in a Statac site 2026-10-23 19:06:40 +01:00
CHANGELOG.md docs: add a README and a changelog 2026-10-27 12:50:19 +00:00
LICENSE-APACHE feat: start Statac's language server for files in a Statac site 2026-10-23 19:06:40 +01:00
LICENSE-MIT feat: start Statac's language server for files in a Statac site 2026-10-23 19:06:40 +01:00
LSP-statac.sublime-commands feat: start Statac's language server for files in a Statac site 2026-10-23 19:06:40 +01:00
LSP-statac.sublime-settings fix: leave schemes to LSP's default, which is the same 2026-10-27 13:14:06 +00:00
Main.sublime-menu feat: start Statac's language server for files in a Statac site 2026-10-23 19:06:40 +01:00
plugin.py feat: start in a site that has a content folder and no statac.yaml 2026-10-25 13:20:13 +00:00
README.md docs: add a README and a changelog 2026-10-27 12:50:19 +00:00
sublime-package.json feat: start Statac's language server for files in a Statac site 2026-10-23 19:06:40 +01:00

LSP-statac

Statac's language server in Sublime Text, through the LSP package. In a Statac site, Sublime Text shows each problem statac check finds as you type, and offers completion, hover, go to definition, find references and fixes. When you rename a page's file, the links to it are updated.

It needs Statac 0.7.0 or later. With an earlier Statac, Sublime Text says only that the server stopped.

Installing

  1. Install Statac.
  2. In Sublime Text, run Package Control: Install Package, and install LSP, then LSP-statac.
  3. Open a folder that holds a Statac site: a statac.yaml file, or a content folder.

The server starts for a file inside a site and leaves every other file alone.

Keys

Sublime Text gives hover, fixes and go to definition no key of its own. To add them, run Preferences: Key Bindings and add these lines to your own key bindings, choosing other keys if these are taken:

[
    {
        "keys": ["primary+k", "primary+i"],
        "command": "lsp_hover",
        "context": [{"key": "lsp.session_with_capability", "operand": "hoverProvider"}]
    },
    {
        "keys": ["primary+."],
        "command": "lsp_code_actions",
        "context": [{"key": "lsp.session_with_capability", "operand": "codeActionProvider"}]
    },
    {
        "keys": ["f12"],
        "command": "lsp_symbol_definition",
        "args": {"side_by_side": false, "force_group": true, "fallback": true, "group": -1},
        "context": [
            {"key": "lsp.session_with_capability", "operand": "definitionProvider"},
            {"key": "auto_complete_visible", "operand": false}
        ]
    }
]

Find references is on Shift+F12 already. To rename a page's file and update the links to it, run LSP: Rename Path, or choose LSP: Rename… on the file in the sidebar.

Settings

Sublime Text looks for statac on the path, then where Homebrew, the install script, Cargo, Scoop and winget put it. To use another, run Preferences: LSP-statac Settings and give its whole path:

{
    "command": ["/path/to/statac", "lsp"]
}

More

Licence

MIT or Apache-2.0, at your choice: LICENSE-MIT, LICENSE-APACHE.