u/cxzukin r/ProgrammingLanguages • Recommends
On “January 2025 monthly "What are you working on?" thread”
#lsp#languageserverprotocol#go
119K subscribers • 4 videos on Hallway
Intermediate. Assumes working knowledge.
132K views2 years ago2 recommendations
Programming languagesTools and practiceGoVim, Emacs and editorsTesting
TJ DeVries builds a Language Server Protocol server from scratch in Go without dependencies, demonstrating JSON-RPC encoding and decoding.
In this video, we build an entire Language Server from an empty Go project with literally no dependencies. Along the way, we'll use Go's standard library, builtin unit testing and Neovim to learn the most effective way that I know - by building something. There's no "Fill in the rest of the owl" - it's each step along the way. Hopefully by the end you really understand what's happening with Language Servers Leave a like or comment, and subscribe of course! ;) Repo Link: github.com/tjdevries/educationalsp Neovim: Neovim btw - Introduction - Read the Friendly Manual - Transport Mechanism - RPC Encode - RPC Encode Test - RPC Decode - RPC Decode Test - Decoding Method - Decoding Content - Building - Building main.go - Split Function - Split Function Impl - Logging - Add basic Logging - VERY FIRST MESSAGE - Server life cycle - More decoding - Decoding Initialize - Initialize Response - Language Server Things - Text Document Synchronization - Start of "compiler" - Start of "Analysis" - Syncing State - Changing Documents - Hover Structu - First Hover Response - Making Hover Interactive - Goto Definition - Code Actions Demo - Code Actions Explained - Completion - Diagnostics - Conclusion ### Links Twitch: twitch.tv/teej_dv Twitter: twitter.com/teej_dv Github: github.com/tjdevriesWhat people say. Recommended as a great entry-level introduction to implementing the Language Server Protocol from scratch.
u/cxzukin r/ProgrammingLanguages • Recommends
On “January 2025 monthly "What are you working on?" thread”
u/meni04in r/ProgrammingLanguages • Recommends
On “Need help implementing a language server for my project”
u/cxzukin r/ProgrammingLanguages • Mentions
On “Advice? Adding LSP to my language”