← Powrót do strony głównej Lekcja 11: Mason
Mason to menedżer pakietów dla LSP servers, DAP servers, linterów i formatterów. Ułatwia instalację i zarządzanie narzędziami deweloperskimi.
Otwieranie Mason
| Skrót | Opis |
<Space>pm | Otwórz Mason |
:Mason | Komenda otwierająca Mason |
Nawigacja w Mason
| Klawisz | Opis |
i | Instaluj pakiet |
X | Odinstaluj pakiet |
u | Aktualizuj pakiet |
U | Aktualizuj wszystko |
1, 2, 3, 4 | Przełącz zakładki (LSP/DAP/Linter/Formatter) |
f | Filtruj / szukaj |
q | Zamknij Mason |
Kategorie pakietów
Mason zarządza czterema typami narzędzi:
| Zakładka | Typ | Przykłady |
1 | LSP Servers | lua-language-server, typescript-language-server, pyright |
2 | DAP Servers | debugpy, node-debug2-adapter, codelldb |
3 | Linters | eslint, pylint, shellcheck |
4 | Formatters | prettier, black, stylua, rustfmt |
Popularne LSP do instalacji
| Język | Nazwa w Mason |
| JavaScript/TypeScript | typescript-language-server |
| Python | pyright lub pylsp |
| Rust | rust-analyzer |
| Go | gopls |
| Lua | lua-language-server |
| HTML/CSS | html-lsp, css-lsp |
| JSON | json-lsp |
| Bash | bash-language-server |
Konfiguracja LSP w AstroVim
Po instalacji LSP w Mason, AstroVim automatycznie wykryje i skonfiguruje serwer. Możesz też dodać własną konfigurację w:
~/.config/nvim/lua/user/plugins/mason.lua
💡 Wskazówka: Po zainstalowaniu nowego LSP, zrestartuj Neovim (:qa i otwórz ponownie) aby zmiany zaczęły działać.
Null-LS / none-ls
AstroVim używa none-ls do integracji linterów i formatterów:
| Skrót | Opis |
<Space>lf | Formatuj dokument |
<Space>ln | Przejdź do następnego błędu lintera |
💡 Ćwiczenie: Otwórz Mason (<Space>pm), zainstaluj LSP dla swojego ulubionego języka (np. typescript-language-server dla JS/TS), zrestartuj Neovim i sprawdź czy autouzupełnianie działa.