Quick links: help overview · quick reference · user manual toc · reference manual toc
Go to keyword (shortcut: k)
Site search (shortcut: s)
nvim.txt  	Nvim


                            NVIM REFERENCE MANUAL


Nvim                                              nvim neovim nvim-intro

Nvim is based on Vim by Bram Moolenaar. Nvim is emphatically a fork of Vim,
not a clone: compatibility with Vim (especially editor and Vimscript features,
except Vim9script) is maintained where possible. See vim-differences for
the complete reference.

- If you already use Vim, see nvim-from-vim for a quickstart.
- If you have never used Vim or Nvim before, see below.

                                      Type gO to see the table of contents.

==============================================================================
What now?                                                    nvim-quickstart

To learn how to use Vim in 30 minutes, try the tutorial: 

    :Tutor<Enter>

Or watch this 10-minute video: https://youtu.be/TQn2hJeHQbM .

To customize Nvim, you will need a config file. Create your init.lua by
copying the "example_init.lua" file: 

    :exe 'edit' stdpath('config') .. '/init.lua'
    :read $VIMRUNTIME/example_init.lua

See lua-guide for practical notes on using Lua to configure Nvim.

"IDE" features in Nvim are provided by LSP.

If you are just trying out Nvim for a few minutes, and want to see the
extremes of what it can do, try one of these popular "extension packs" or
"distributions" (Note: Nvim is not affiliated with these projects, and does
not support them):

- lazyvim https://www.lazyvim.org/
- nvchad https://nvchad.com/
- kickstart https://github.com/nvim-lua/kickstart.nvim
  - Not recommended; use $VIMRUNTIME/example_init.lua instead.

However, we recommend (eventually) taking time to learn Nvim from its stock
configuration, and incrementally setting options and adding plugins to your
config as you discover a need.

==============================================================================
Transitioning from Vim                                         nvim-from-vim

1. To start the transition, create your init.vim (user config) file: 

    :exe 'edit '.stdpath('config').'/init.vim'
    :write ++p

2. Add these contents to the file: 

    set runtimepath^=~/.vim runtimepath+=~/.vim/after
    let &packpath = &runtimepath
    source ~/.vimrc

3. Restart Nvim, your existing Vim config will be loaded.

See provider-python and provider-clipboard for additional software you
might need to use some features.

Your Vim configuration might not be entirely Nvim-compatible (see
vim-differences). For example the 'ttymouse' option was removed from Nvim,
because mouse support is always enabled if possible. If you use the same
vimrc for Vim and Nvim you could guard 'ttymouse' in your configuration
like so:

    if !has('nvim')
        set ttymouse=xterm2
    endif

And for Nvim-specific configuration, you can do this:

    if has('nvim')
        tnoremap <Esc> <C-\><C-n>
    endif

For a more granular approach use exists():

    if exists(':tnoremap')
        tnoremap <Esc> <C-\><C-n>
    endif

Now you should be able to explore Nvim more comfortably. Check nvim-features
for more information.

                                                        portable-config
Because Nvim follows the XDG base-directories standard, configuration on
Windows is stored in ~/AppData instead of ~/.config. But you can still share
the same Nvim configuration on all of your machines, by creating
~/AppData/Local/nvim/init.vim containing just this line: 
    source ~/.config/nvim/init.vim

==============================================================================
 vim:tw=78:ts=8:et:ft=help:norl:


Quick links: help overview · quick reference · user manual toc · reference manual toc