~/talk

Developing a Language Plugin: LSP versus the Joy of Learning

Talkat JetBrains Plugin Developer Conf 2025 · on Wednesday, 2025-11-05· [developer-experience]
links:none on file
slides:none on file

Built Luau support by combining IntelliJ’s LSP API with hand‑rolled features, getting 100 lines of code to boot a language server and basic completion and another 500 lines for auto‑download and platform binaries. Hits include an LSP id type mismatch that breaks diagnostics, missing features like rename unsupported (plus selection ranges, code vision, document symbols) that require 150+ lines to implement client‑side or fixing the server, so start with LSP but expect engineering and debugging.

AI-written summary · about

  1. 0:00Language plugin development intro
  2. 1:12New languages still created?
  3. 2:58IDE support vs LSP
  4. 4:23How LSP works
  5. 5:04LSP plugin in IntelliJ
  6. 7:29LSP server distribution challenges
  7. 9:56Debugging LSP quirks
  8. 13:07Diagnostics: push vs pull
  9. 16:21Fixing LSP compatibility
  10. 18:28LSP features and config
  11. 21:20Unsupported LSP in IntelliJ
  12. 23:27Missing features manually
  13. 25:34LSP performance and indexing
  14. 27:21LSP pros and cons
  15. 28:24Building language plugins advice
  16. 32:22Q&A: IDE features in LSP
  17. 34:13Q&A: Lightweight editors vs IDEs
  18. 34:56Q&A: IDE native in LSP
  19. 37:01Q&A: Disable LSP interference
  20. 37:43Q&A: LSP file awareness
  21. 39:09Summary: LSP vs learning joy
  22. 42:42Final Q&A and closing
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.