--- title: Neovim as an IDE description: Introduction to Vim and NeoVim, Along with How to Use NeoVim Like Popular IDEs published: true date: 2025-02-13T07:54:40.067Z tags: ide, vim, neovim, nvim editor: markdown dateCreated: 2025-02-08T12:49:56.181Z --- # Vim/NeoVim ## Introduction **Vim** is a powerful open-source text editor that has been developed since the 1990s. Designed as a command-line editor, it offers highly customizable and personalizable features. **NeoVim** is a more modern version inspired by Vim, featuring better internal APIs and improved window management, making it a powerful tool for developers. ## Installation ### 1. **Vim** Vim is pre-installed on many Linux distributions such as Parch. To install the latest version, you can run the following command: ```bash sudo pacman -S vim ``` ### 2. **NeoVim** NeoVim is a more modern editor that can be easily installed with the following command: ```bash sudo pacman -S neovim ``` > Neovim is installed under the name `neovim` but it can be run using `nvim`. --- ## Turning NeoVim into an IDE NeoVim alone does not have all the tools necessary for developers, so by using available plugins, it can be transformed into an environment similar to existing IDEs. There are two main approaches for this. ### 1. **Pre-configured Configurations** For users who want to quickly set up a powerful development environment, using pre-configured setups is the best option. Some of the most popular configurations include: #### **AstroNvim** AstroNvim is a beautiful and feature-rich Neovim configuration focused on efficiency and extensibility. To install it, follow the [official AstroNvim documentation](https://docs.astronvim.com/). #### **NVChad** NVChad is a popular Neovim configuration that allows users to easily customize it. To install it, follow the [official NVChad documentation](https://nvchad.com/docs/quickstart/install). ### 2. **Installing from Scratch** To turn NeoVim into an IDE, you can install the necessary plugins one by one. This approach is suitable for users who want full control over their settings. For this, you need a plugin manager to manage other plugins. One of the most popular plugin managers is [lazy.nvim](https://www.lazyvim.org/). #### Installing the `lazy.nvim` Plugin Manager: 1. To install lazy.nvim, clone it using Git: ```bash git clone https://github.com/LazyVim/starter ~/.config/nvim ``` 2. After installation, remove the `.git` folder: ```bash rm -rf ~/.config/nvim/.git ``` 3. You can run it using the `nvim` command. now you need to install some plugins. Some of the most commonly used plugins include: - **LSP**: `nvim-lspconfig` - **Autocompletion**: `nvim-cmp` - **Project Manager**: `project.nvim` - **File Explorer**: `nvim-tree.lua` #### Sample Configuration: ```lua require("lazy").setup({ { "folke/tokyonight.nvim", -- Theme lazy = false, priority = 1000, config = function() vim.cmd([[colorscheme tokyonight]]) end, }, "neovim/nvim-lspconfig", -- LSP "hrsh7th/nvim-cmp", -- Autocompletion "nvim-tree/nvim-tree.lua", -- File explorer "mbbill/undotree", -- Undo history }) ``` > For installation using this method, you can follow the [official lazy.nvim documentation](https://www.lazyvim.org/). {.is-info} ## NeoVide [NeoVide](https://neovide.dev/) is a GUI for NeoVim that functions like a regular terminal but adds more features to NeoVim. #### Features - **Ligatures**: Support for ligatures and font shaping to improve code appearance. - **Animated Cursor**: Cursor animations make it easier to track the cursor's position. - **Smooth Scrolling**: Instead of line-by-line scrolling, pixel-by-pixel animations smooth the user experience. - **Blurred Floating Windows**: Floating windows have blurred backgrounds for better separation from the main screen. - **Emoji Support**: Displays emojis even if the main font doesn't include them. #### Installation: ```bash sudo pacman -S neovide ``` ## Plugin Marketplace Most likely, all the IDEs you've worked with before have had an official marketplace for installing plugins, but NeoVim does not have an official marketplace. To find plugins, you can search online for each plugin or browse unofficial resources. Below are some community-made lists of NeoVim plugins: - https://github.com/rockerBOO/awesome-neovim - https://neovimcraft.com/ - https://vimawesome.com/