kickstart.nvim/README.md

2.4 KiB

⚙️ My Neovim Configuration

This is my personal neovim configuration and it's unlikely to be perfect for your use case.

What is in it?

  • Kickstart: based configuration
  • Neovimacs: modeless editing support, with common Emacs bindings in insert mode
  • Esc: to toggle between insert (emacs bindings) and normal (neovim mode)
  • Tabs: Prev (F1), Next (F2), New (F3), and Close (F4) to jump around
  • Tool Tabs: Terminal (F5)
  • Movement: Arrows and Tabs (and, yes, I know)
  • Batteries: Python LSP, completion, treesitter

📦 Installation

Prep

Neovim >= 0.10 or later is required, you may need to get it from the Neovim PPA or similar:

sudo add-apt-repository ppa:neovim-ppa/unstable
sudo apt-get update
sudo apt-get install neovim

Suggested Packages:

sudo apt install -y cargo gcc python3-pip python3-venv git make unzip ripgrep gzip wget curl fd-find npm xclip
sudo npm install -g tree-sitter-cli

If you have an old version of NodeJS, pick up a new one:

sudo npm cache clean -f
sudo npm install -g n
sudo n stable

Optional based on use-case:

sudo apt install -y golang luarocks cargo nodejs clang python3-pynvim

Cloning

cd ~/.config
git clone https://github.com/millerjason/neovimrc.git
ln -s neovimrc nvim

Maint

:Lazy         - upgrade packages
:Mason        - build external tools

Life with Neovim

Do you have everything and is it working correctly?

Checking overall health and options:

:checkhealth
:Telescope vim_options
:lua print(vim.inspect(vim.opt.XXXX))

Beyond which-key, you can use the following nvim commands to help you track down key bindings and resolve conflicts:

:verbose imap <C-n>   -- for insert mode
:verbose nmap <C-n>   -- for normal mode
:nmap <localleader>   -- to see leader commands
:WhichKey             -- see above
:lua = <expr>         -- run lua expression

Use nvim -u NONE -U NONE -N -i NONE to test with w/o config if things go wrong.

:help <module>           -- help for modules
:help telescope.setup()  -- help for the setup section
:Telescope help_tags     -- search help

References

Kickstart: kickstart.nvim Kickstart Video: Get Started with Neovim Docs: https://neovim.io/doc/user/