Skip to content

minhanghuang/nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NeoVim

neovim

git clone https://github.com/minhanghuang/nvim.git ~/.config/nvim

#1 env

#1.1 Neovim

Neovim minimum version required: 0.8.3. If you wish to enable copying and pasteing functionality in SSH or docker containers, please upgrade to version 0.10.0 or later. related link

  • macOS
wget https://github.com/neovim/neovim/releases/download/v0.10.0/nvim-macos-x86_64.tar.gz
tar -zxvf nvim-macos-x86_64.tar.gz
sudo cp -r nvim-macos-x86_64/* /usr/local
Apple Silicon
wget https://github.com/neovim/neovim/releases/download/v0.10.0/nvim-macos-arm64.tar.gz
tar -zxvf nvim-macos-arm64.tar.gz
sudo cp -r nvim-macos-arm64/* /usr/local
  • Ubuntu
wget https://github.com/neovim/neovim/releases/download/v0.10.0/nvim-linux64.tar.gz
tar -zxvf nvim-linux64.tar.gz
sudo cp -r nvim-linux64/* /usr/local

#1.2 Font

#1.3 Node.js

The Node.js version I am using is selected as v15.4.0, and I am using nvm to manage the Node.js version

  • macOS
brew install nodejs yarn
# option
npm config set registry http://registry.npmmirror.com
yarn config set registry http://registry.npmmirror.com
  • Ubuntu
sudo apt update
sudo apt install -y nodejs npm
sudo npm install n -g
sudo n stable
curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt update
sudo apt install yarn
# option
sudo npm config set http://registry.npmmirror.com
yarn config set registry http://registry.npmmirror.com
  • nvm(option)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
source ~/.zshrc
nvm install 15.4.0
nvm alias default 15.4.0

#1.3 dependency

python3 -m pip install -r requirement.txt
  • macOS
brew tap universal-ctags/universal-ctags
brew install --HEAD universal-ctags
brew install ripgrep gnu-sed llvm tig
lazygit(Option)
# https://github.com/jesseduffield/lazygit?tab=readme-ov-file#homebrew
brew install lazygit
  • Ubuntu
sudo apt update
sudo apt install -y python3-venv
sudo apt install -y universal-ctags global llvm tig

ripgrep

# Ubuntu20.04+
sudo apt install -y ripgrep

# Ubuntu18.04
wget https://github.com/BurntSushi/ripgrep/releases/download/14.1.0/ripgrep_14.1.0-1_amd64.deb
sudo dpkg -i ripgrep_14.1.0-1_amd64.deb
lazygit(Option)
# https://github.com/jesseduffield/lazygit?tab=readme-ov-file#ubuntu
LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | grep -Po '"tag_name": "v\K[^"]*')
curl -Lo lazygit.tar.gz "https://github.com/jesseduffield/lazygit/releases/latest/download/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz"
tar xf lazygit.tar.gz lazygit
sudo install lazygit /usr/local/bin

# Supplement

#.1 Auto Completion With Python Protobuf

  1. installation
python3 -m pip install mypy-protobuf protobuf
export PATH=~/.local/bin:$PATH
  1. generate python protobuf
protoc -I=./ --python_out=. --mypy_out=. *.proto