--- title: "Vim" category: "Code editors" tagline: "The classic modal text editor, installed alongside the original vi." source: "pacman" package: "vim" command: "vim" website: "https://www.vim.org/" code: "https://github.com/vim/vim" links: - name: "The original vi (ex-vi)" url: "https://ex-vi.sourceforge.net/" --- ## What it is Vim is a text editor that runs in the terminal and is driven entirely from the keyboard. It's modal: in normal mode keys move around and edit, in insert mode they type text, and short commands combine into precise edits, such as `dw` to delete a word or `ci"` to change the text inside quotes. It's found on almost every Unix-like system, so the skills carry over to any server you log in to. Run `vimtutor` for a half-hour introduction. ## Why it's here - **Everywhere.** The same editor on your desktop and over SSH on any server. - **Fast to start, fast to edit.** It opens instantly and keeps your hands on the keyboard. - **The vi family.** Learn it here and Neovim, `vi` and Vim modes in other editors feel familiar. ## On CoreDesktop Vim is installed from pacman. CoreDesktop also installs `vi` from the AUR package of the same name: the original ex/vi editor from the 1970s, kept for anyone who wants the real thing. CoreDesktop's own editor shortcuts, `n` and `eff`, open Neovim, which is set up with kickstart.nvim. `eff` uses `$EDITOR` if you've set it, so `export EDITOR=vim` makes it open Vim instead. `update` keeps Vim current with the rest of the pacman packages, and `vi` with the AUR packages.