/nvim-config

My configurations of nvim

Primary LanguageVim script

nvim-config

This is a customized and high-efficiency Neovim configuration, especially for cpp project.

Install

git clone git@github.com:Ytinifni-zc/nvim-config.git ~/.nvim

cd ~/.config
ln -s ~/.nvim nvim

# Install vim-plug
curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \
    https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

# Install cquery
# see https://github.com/cquery-project/cquery/wiki/Getting-started

nvim +PlugInstall +qa

# If Languagecline install failed, go to the pluged folder and rerun ./install
cd ~/.local/share/nvim/plugged/LanguageClient-neovim && ./install.sh

# Customize your snippets
cd ~/.nvim
cp ./snippets/* ~/.local/share/nvim/plugged/neosnippet-snippets/neosnippets/

Plugins

Clang env configuration

Key Mapping:

  • <M-h>: hover
  • <M-d>: Jump to definition
  • <M-r>: List references
  • <M-s>: Document symbol
  • <M-n>: Remame(Refactor)
  • <M-f>: Formatting code

Project configuration

  • Neosnippets and Neosnippets-snippets are using for fast code templete completion.
  • Deoplete is the basic completing engine.
  • NERDTree shows a toggle to list the project directory.
    • <F3>: Open NERDTree toggle.
  • NERDTreeGitPlugin adds git status to NERDTree.
  • Tagbar shows a toggle for code structions.
    • <F2>: Open Tagbar toggle.
  • VimFugitive offers git operations commands in nvim.
    • :help fugitive: show handbook of VimFugitive.
  • Asyncrun compiles project and run in async buffer.
    • <F4>: cmake
    • <F5>: run single file
    • <F6>: run test
    • <F7>: make -j
    • <F8>: make run
    • <F9>: compile single file
    • <F10>: show Asyncrun toggle
  • Vim-gutentags generates tags silently to ~/.cache/tags
  • LeaderF supports fast function searching and jumping.
    • <C-l>: show LeaderF function.

Vision enhancer (May slow down nvim)

Screen shots