March 29, 2026
Code autocomplete, comment chaos
Show HN: Create a full language server in Go with 3.17 spec support
Build-your-own editor brain drops in Go; HN dreams, debates, and robot jokes
TLDR: A new Go library makes it easy to build an editor helper with smart features. The crowd cheered DIY plugins, joked about having nothing to serve, and teased the “robotic” vibe—agreeing it’s a big push toward making everyday tools feel smarter and more helpful.
Go devs just dropped owenrumney/go-lsp, a do‑it‑yourself toolkit for building an “editor brain” — the helper program behind auto‑complete, hover info, and quick fixes. It targets the latest Language Server Protocol (a common way editors talk to helpers) and lists support for big features like references, rename, and formatting. The reveal sparked DIY energy.
Strongest takes? Builders itching to ship. One commenter loved the clean interface and nifty debug server, then vowed to bolt this onto their command‑line app as an editor plugin. Another laughed: they now want to build a server, but have nothing to serve. A side thread went philosophical, praising Markdown’s human‑first design as the model for winning tools.
Then came the jokes. A deadpan “Hmmm :robot:” at a severity enum teased the robotic feel of specs, fueling playful “are we over‑engineering this?” banter. Still, the mood stayed go build: this lowers the barrier to giving any project editor superpowers. Expect hackers turning CLIs into smart sidekicks and niche languages into surprisingly polished experiences.
Key Points
- •go-lsp is a Go library for building Language Server Protocol (LSP) servers.
- •The library targets LSP version 3.17 and lists supported features in a table.
- •It abstracts JSON-RPC framing, message dispatch, and LSP type definitions.
- •Lifecycle (initialize, shutdown, exit) and control ($/cancelRequest, $/setTrace) operations are supported.
- •Text document sync and many language features (completion, hover, definition, references, formatting, rename, codeAction/codeLens/documentLink with resolve) are supported.