Other editors
syntaqlite implements the Language Server Protocol. Any editor with LSP support can use it.
Setup
Start the language server:
syntaqlite lsp
This runs on stdio. Point your editor's LSP client at this command.
The server supports:
textDocument/publishDiagnostics— syntax and semantic errorstextDocument/formatting— format document or rangetextDocument/completion— keywords, functions, table/column namestextDocument/semanticTokens/full— context-aware highlighting
Neovim
With nvim-lspconfig:
vim.lsp.config('syntaqlite', {
cmd = { 'syntaqlite', 'lsp' },
filetypes = { 'sql' },
root_markers = { '.git' },
})
vim.lsp.enable('syntaqlite')
Helix
Add to ~/.config/helix/languages.toml:
[[language]]
name = "sql"
language-servers = ["syntaqlite"]
[language-server.syntaqlite]
command = "syntaqlite"
args = ["lsp"]
Other editors
The pattern is the same for any LSP client: set the command to
syntaqlite lsp and associate it with SQL files. The server communicates over
stdin/stdout using JSON-RPC.