public inbox for [email protected]
help / color / mirror / Atom feedFrom: Gavin M. Roy via PostgreSQL Announce <[email protected]>
To: PostgreSQL Announce <[email protected]>
Subject: New Postgres Language Server: postgres-lsp
Date: Sun, 21 Jun 2026 13:24:09 +0000
Message-ID: <[email protected]> (raw)
Built on [tree-sitter-postgres](https://github.com/gmr/tree-sitter-postgres), [postgres-lsp](https://github.com/gmr/postgres-lsp) implements the [Language Server Protocol](https://en.wikipedia.org/wiki/Language_Server_Protocol) for PostgreSQL SQL and PL/pgSQL. Point your editor at it for `.sql` files and get diagnostics, navigation, completion, and formatting backed by real PostgreSQL grammar rather than regex heuristics.
## Features
- **Diagnostics** — Parse errors from tree-sitter reported as LSP diagnostics
- **Semantic Tokens** — Syntax highlighting via semantic token classification
- **Document Symbols** — Outline of DDL statements (tables, functions, views, etc.)
- **Workspace Symbols** — Search across all open files
- **Go to Definition** — Navigate to table, function, type, and column definitions
- **Find References** — Find all usages of a symbol across the workspace
- **Hover** — Show definition source on hover
- **Completion** — Context-aware completion for keywords, tables, columns, and functions
- **Signature Help** — Parameter hints for function calls
- **Folding Ranges** — Collapse multi-line statements
- **Rename** — Rename symbols across the workspace
- **Code Actions** — Quick fixes and refactor rewrites
- **Formatting** — Reformat SQL using the styles supported by [libpgfmt](https://github.com/gmr/libpgfmt): river, mozilla, aweber, dbt, gitlab, kickstarter, mattmc3, pg_dump
- **PL/pgSQL Support** — Parses PL/pgSQL function bodies with language injection
Binaries and Installation instructions are available @ [https://github.com/gmr/postgres-lsp](https://github.com/gmr/postgres-lsp).
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected]
Subject: Re: New Postgres Language Server: postgres-lsp
In-Reply-To: <[email protected]>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox