- Developer use system: Ubuntu version greater than 22.04 LTS
├── coc-settings.json
├── images
│ ├── coc.png
│ ├── lazy.png
│ └── leaderf.png
├── init.lua
├── lazy-lock.json
├── lua
│ ├── colorscheme.lua
│ ├── config
│ │ ├── airline.lua
│ │ ├── doxygen_toolkit.lua
│ │ ├── leaderf.lua
│ │ ├── nerdcommenter.lua
│ │ ├── nvim-aerial.lua
│ │ ├── nvim-autopairs.lua
│ │ ├── nvim-coc.lua
│ │ ├── nvim-indent-blankline.lua
│ │ ├── nvim-markdown.lua
│ │ ├── nvim-tree.lua
│ │ ├── nvim-treesitter.lua
│ │ ├── nvim-treesitter-textobjects.lua
│ │ └── nvim-ts-rainbow.lua
│ ├── keymaps.lua
│ ├── options.lua
│ └── plugins.lua
└── README.md
- neovim stable version greater than 0.10.0
sudo add-apt-repository ppa:neovim-ppa/stable -y
# OR sudo add-apt-repository ppa:neovim-ppa/unstable -y
sudo apt-get update
sudo apt-get install -y neovim
nvim --version
OR
- Download neovim appimage and Install
# Select the latest version
https://github.com/neovim/neovim/releases
- nodejs version greater than 16.0
curl -sL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
node --version
sudo apt-get install -y npm
sudo npm install npm@latest -g
npm -v
sudo npm install -g neovim
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/yarnpkg-archive-keyring.gpg > /dev/null
echo "deb [signed-by=/etc/apt/trusted.gpg.d/yarnpkg-archive-keyring.gpg] https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt-get update
sudo apt-get install yarn
yarn --version
sudo apt-get install -y python3 python3-venv python3-dev python3-pip python3-neovim
python3 --version
pip3 install --upgrade pip
pip3 --version
pip3 install pynvim
pip3 install --upgrade pynvim
sudo apt-get install -y universal-ctags
ctags --version
sudo apt-get install -y clang
clang --version
clang++ --version
- Set clang as default compiler
# update-alternatives --install <link> <name> <path> <priority>
sudo update-alternatives --install /usr/bin/cc cc /usr/bin/clang 100
sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++ 100
- OR
# update-alternatives --install <link> <name> <path> <priority>
sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-14 100
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-14 100
# Switch between GCC and Clang toolchains
sudo update-alternatives --config cc
clang -v
# Switch between GCC and Clang++ toolchains
sudo update-alternatives --config c++
clang++ -v
sudo apt-get install -y ccls
ccls --version
- Install nerd-fonts
# download FiraCode Nerd Font
wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.3.0/FiraCode.zip
# unzip fonts
unzip FiraCode.zip -d ~/.local/share/fonts
# flush fonts cache
fc-cache -fv
- Terminal set fonts (
FiraCode Nerd Font Mono Regular 13
)
OR
wget https://github.com/ryanoasis/nerd-fonts/releases/download/v3.3.0/Hasklig.zip
unzip Hasklig.zip -d ~/.local/share/fonts
fc-cache -fv
- Preferences -> Profiles -> default -> General -> Font
- Preferences -> Profiles -> Unnamed -> Custom font
- Clone neovim config
cd ~/tools
git clone [email protected]:Albert866/neovim_lua_config.git
cd ~/.config
ln -s ~/tools/neovim_lua_config/ nvim
-
Auto install plugins
-
Open neovim
nvim
-
-
check health in neovim
:checkhealth
- sudo apt-get install -y bear
- Run
bear -- make
cmake -S . -B build -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
cmake --build build
OR into CMakeLists.txt file
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
gn gen out
ninja -C out -t compdb cc cxx > compile_commands.json