This is my configuration for a Neovim setup, mainly focused on React and Web development.
- Neovim config using Lazy.nvim
- tmux
- zsh (Oh My Zsh + powerlevel10k)
- Windows Terrminal
- AutoHotkey bindings
- Neovim ≥ 0.9.0
- Git
- LazyVim
- a Nerd Font (I use Liga SF Nerd Font)
- For Telescope:
- ripgrep
- fd
- Windows Terminal (or other terminal emulator)
A Bash Script is available to automatize the steps below for you!
sudo apt update && sudo apt install -y tar curl && mkdir ~/install-config && cd ~/install-config && curl https://codeload.github.com/mateuscqueiros/dotfiles/tar.gz/master | tar -xz --strip=2 dotfiles-master/install && chmod -R u+x ~/install-config && echo "0" | ./install.sh && rm -rf ./install-configBreak down:
# Make sure you are on root before all of this
sudo apt update && sudo apt install tar curl
# Create a installation directory
mkdir ~/install-config && cd ~/install-config
# Download and extract the installation folder
curl https://codeload.github.com/mateuscqueiros/dotfiles/tar.gz/master | \tar -xz --strip=2 dotfiles-master/install
# Give exec permission to folder and run the script
chmod -R u+x ~/install-config && echo "0" | ./install.shAfter that, restart your machine. Open Neovim and let Lazy install the plugins. Once possible, open a file and let Mason install the LSPs (just leave it alone for about a minute). Set a colorscheme through :colorscheme rose-pine. After all downloads finish, quit Neovim and reopen it. You are done!
Generate a new SSH key.
ssh-keygen -t ed25519 -C "mateuscqueiros@gmail.com"Copy the content of ~/.ssh/id_ed25519.pub and paste it in your Github account.
xclip -sel clip < ~/.ssh/id_ed25519.pubTest the connection.
ssh -T git@github.comAdd the key to the ssh-agent.
ssh-add ~/.ssh/id_ed25519This config is optimal for Debian or Ubuntu. My main workspace is Ubuntu WSL. Make sure to not just blindly run the commands. Read the comments, as they add some important instructions and references.
Install git, install FUSE and clone this repo at your root.
sudo apt install git
sudo add-apt-repository universe
sudo apt install libfuse2
git clone https://github.com/mateuscqueiros/dotfiles ~/.configInstall Zsh
sudo apt update
sudo apt install zsh -y
zsh --version
# Initialize ZSH
# When prompted press '0'
zshInstall Oh My Zsh:
sh -c "$(wget https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
# When asked if you want to make ZSH your default sheel press 'Y'Symlink ~/.config/zsh/.zshrc:
rm -rf ~/.zshrc
ln -s ~/.config/zsh/.zshrc ~/.zshrcDownload Oh My Zsh plugins:
# powerlevel10k
# https://github.com/romkatv/powerlevel10k?tab=readme-ov-file#oh-my-zsh
git clone --depth=1 https://gitee.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
# zsh-autosuggestions
# https://github.com/zsh-users/zsh-autosuggestions/blob/master/INSTALL.md#oh-my-zsh
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
# zsh-syntax-highlighting
# https://github.com/zsh-users/zsh-syntax-highlighting/blob/master/INSTALL.md#oh-my-zsh
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
Source ~/.zshrc:
source ~/.zshrcIf you have not done it yet, set up SSH keys so Zsh can start the ssh-agent when you logiN.
If the content of ~/.config/zsh/.zshrc was overwritten by Oh My Zsh at some point then copy and paste it from this repository.
sudo apt install tmux
git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm;
ln -s ~/.config/tmux/.tmux.conf ~/.tmux.confInstall the following dependencies:
sudo apt install ripgrep
sudo apt install fd-findInstall Neovim from AppImage
# Make sure you are on root before all of this
curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim.appimage
chmod u+x nvim.appimage
sudo mv nvim.appimage /usr/local/bin/nvim
# Clone the actual Neovim config to ~/.config/nvim
git clone https://github.com/mateuscqueiros/nvim.config ~/.config/nvim
# Start plugin installation by Lazy
nvim ~/.config/nvimOnce the installation process from Lazy is finished quit Neovim and run it again. That’s it!
Note: some errors related to coloschemes may appear. To fix that, just select a colorscheme and restart Neovim.
