Mason.nvim: package manager for Neovim: LSP&DAP servers, linters, and formatters
mason.nvim is a cross-platform package manager for Neovim, supporting LSP and DAP servers. The latest version is v1.10.0, with installation via Packer and vim-plug, allowing customization.
Read original articlemason.nvim is a portable package manager designed for Neovim, facilitating the installation and management of Language Server Protocol (LSP) servers, Debug Adapter Protocol (DAP) servers, linters, and formatters through a unified interface. It is compatible with all major operating systems, including Linux, macOS, and Windows. The latest version available is v1.10.0. The package manager simplifies the process of managing external editor tools and is recommended to be used alongside other plugins such as lspconfig, nvim-dap, and null-ls.nvim for enhanced functionality. Installation can be done via popular package managers like Packer and vim-plug, with setup requiring a simple Lua command. Key commands include `:Mason` to open a graphical status window, `:MasonInstall <package>` to install a package, and `:MasonUninstall <package>` to remove a package. Users need to ensure they have Neovim version 0.7.0 or higher, along with utilities like git, curl, or wget, and unzip for Unix systems, or PowerShell for Windows. Customization options are available through the setup function, allowing users to modify the behavior and appearance of the package manager.
- mason.nvim is a package manager for Neovim, supporting LSP and DAP servers.
- It is cross-platform, functioning on Linux, macOS, and Windows.
- The latest version is v1.10.0, with installation options via Packer and vim-plug.
- Key commands facilitate package management, including installation and uninstallation.
- Customization is possible through the setup function in Lua.
Related
My (Neo)Vim workflow
An experienced Vim user shares tips on optimizing the (Neo)Vim experience through Personalized Development Environment (PDE), covering search techniques, keybindings, plugins, movement enhancements, text manipulation, quickfix list, spell check, and status line customization.
Deno 1.45: Workspace and Monorepo Support
Deno 1.45 introduces workspace and monorepo support, enhances Node.js compatibility, updates deno install, deprecates deno vendor, and more. Improved dependency management and configuration sharing streamline development workflows.
Show HN: Claude.vim – a different take on AI pair programming
The Vim plugin "Claude for AI Pair Programming" enables collaboration with Claude, a pair programmer, offering chat, code modifications, task execution, and Python evaluation. Installation requires cloning the repository and obtaining a Claude API key.
Show HN: Vdm, a sane alternative to e.g. Git submodules
vdm is a versioned-dependency manager that simplifies external dependency management across programming languages. It requires Git, supports YAML/JSON spec files, and offers future enhancements for synchronization and remote types.
I Made an Extended Version of Vimtutor – Introducing Vimtutor Sequel
The vimtutor-sequel GitHub repository provides advanced Vim lessons, including commands and tutorials. Installation is available via Homebrew or manual cloning, and it is licensed under the MIT License.
As opposed to being a plugin manager, mason is a package manager. It installs editor-agnostic tools like LSPs, linters, or formatters.
As opposed to system-level package managers like homebrew, mason is specifically integrated in nvim. Other than having an UI inside nvim, this entails features such as auto-installing packages when bootstrapping nvim on a new machine.
As opposed to language-specific package managers such as npm or pip, mason includes packages across languages. That means instead of having to install one tool with npm, one with cargo, one with pip etc., you can install all your nvim-related packages just with mason.
While a plugin manager is basically a necessity, mason is more of a nice-to-have tool for nvim. It is convenient for some people, while others prefer using their existing package managers.
What motivates people to keep creating new ones?
Related
My (Neo)Vim workflow
An experienced Vim user shares tips on optimizing the (Neo)Vim experience through Personalized Development Environment (PDE), covering search techniques, keybindings, plugins, movement enhancements, text manipulation, quickfix list, spell check, and status line customization.
Deno 1.45: Workspace and Monorepo Support
Deno 1.45 introduces workspace and monorepo support, enhances Node.js compatibility, updates deno install, deprecates deno vendor, and more. Improved dependency management and configuration sharing streamline development workflows.
Show HN: Claude.vim – a different take on AI pair programming
The Vim plugin "Claude for AI Pair Programming" enables collaboration with Claude, a pair programmer, offering chat, code modifications, task execution, and Python evaluation. Installation requires cloning the repository and obtaining a Claude API key.
Show HN: Vdm, a sane alternative to e.g. Git submodules
vdm is a versioned-dependency manager that simplifies external dependency management across programming languages. It requires Git, supports YAML/JSON spec files, and offers future enhancements for synchronization and remote types.
I Made an Extended Version of Vimtutor – Introducing Vimtutor Sequel
The vimtutor-sequel GitHub repository provides advanced Vim lessons, including commands and tutorials. Installation is available via Homebrew or manual cloning, and it is licensed under the MIT License.