JST's Neovim Configuration
Hi, I'm Jean-Sébastien Trottier, owner of qualIP Software and Tech Lead at Cisco, working on the IOS-XR platform. This is my Neovim configuration.
Let's get things straight: Neovim is not an IDE, it's a text editor! Neovim is a fork of Vim that focuses on extensibility and usability.
But it's not like any other configurable text editor like Sublime Text, Atom, or VS Code. Neovim is highly extensible using the Lua programming language. This means that you are not limited to the features provided by the core editor or a predetermined set of configurations in a JSON file.
In short, as TJ DeVries coins it, it is a PDE, a Personalised Development Environment: You write code to mould the editor to your taste, your habits, your workflow. With the help of plugins, it can be made to look like an IDE but it will always be much more than just an IDE.
This configuration repository comes preinstalled with many plugins that offer a wide range of features out-of-the-box. Here are some of the highlights:
- Language servers (LSPs) (clangd, ruff, buildifier, bashls, ...)
- GitHub Copilot integration (completion & chat)
- Diagnostic messages
- Code completion
- Code formatting
- Snippets
- Code coverage integration
- Large project management / scopes (Neoscopes)
- Fuzzy finder (Telescope)
- Git integration (Fugitive, Gitsigns)
- Advanced syntax-based highlighting and indentation (Treesitter)
- Cosmetic candy (Nerd fonts, icons, colorschemes, statusline, code outline, ...)
- Tmux integration (vim-tmux-navigator)
Please see the installation guide.
For newbies and seasoned veterans alike, these are great starting points to enhance your Neovim experience:
- kickstart.nvim's (TJ DeVries's) The Only Video You Need to Get Started with Neovim
- Run the tutorial within Neovim:
:Tutor - Read the configs and explanations in
~/.config/nvim/init.lua
Please see the configuration guide.
See this cheatsheet for a quick reference to the keymaps and commands available in this configuration: Cheatsheet
Please see the troubleshooting guide.
JST's Neovim Configuration is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.
JST's Neovim Configuration is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with JST's Neovim Configuration. If not, see https://www.gnu.org/licenses/.
