Chapter 10: What Is the Language Server Protocol?
Chapter Overview
Part VI: Language Server Protocol | Tips 50-52
Understanding LSP architecture.
Tips in This Chapter
| Tip | Title | Mastered |
|---|---|---|
50 |
Understand the Language Server Protocol |
[ ] |
51 |
Meet LanguageClient-neovim |
[ ] |
Key Concepts
LSP architecture: client-server model for IDE features.
LSP Features
| Feature | Description |
|---|---|
Completion |
Context-aware suggestions |
Diagnostics |
Errors and warnings |
Go to Definition |
Jump to symbol definition |
Find References |
Find all usages |
Hover |
Documentation on hover |
Rename |
Project-wide rename |
Code Actions |
Quick fixes, refactors |
Formatting |
Auto-format code |
Neovim Native LSP
The book discusses LanguageClient-neovim. Neovim 0.5+ has native LSP:
-- Neovim native LSP (what I use)
vim.lsp.buf.definition()
vim.lsp.buf.references()
vim.lsp.buf.hover()
vim.lsp.buf.rename()
vim.lsp.buf.code_action()
Commands Learned
| Command | Description | Notes |
|---|---|---|
Practice
Commands I tried while reading:
" (Add commands you practiced)
Questions
Things I want to explore further.
Chapter Complete
-
Read entire chapter
-
Understood LSP architecture
-
Reviewed my LSP setup
Date completed: _