ln -s <path-to-dotfiles>/zshrc ~/.zshrc
ln -s <path-to-dotfiles>/tmux.conf ~/.tmux.conf
See Tmux Plugin Manager for setting up plugins.
brew install zellij
ln -s <path-to-dotfiles>/zellij ~/.config/zellij
ln -s <path-to-dotfiles>/alacritty ~/.config/alacritty
Setup themes
git clone https://github.com/alacritty/alacritty-theme ~/.config/alacritty-theme
ln -s <path-to-dotfiles>/wezterm ~/.config/wezterm
These fonts are nice to have and can be used for 'vim-devicons' / nvim-web-devicons
plugins:
brew tap homebrew/cask-fonts
brew install --cask font-jetbrains-mono-nerd-font
See vim/.vimrc
file in this repo for use with vim
.
Install the following dependencies:
- yarn
brew install fd
brew install fzf
brew install ripgrep
brew install xclip
brew install ccls
brew install cmake
brew install bear
cargo install proximity-sort
pip3 install --user jedi
pip3 install --user pynvim
pip3 install --upgrade neovim
You can symlink the configuration in ./nvim
to ~/.config/nvim
(on MacOS):
ln -s <path-to-dotfiles>/nvim ~/.config/nvim
For opinionated configs:
-
ln -s <path-to-dotfiles>/lunarvim/lvim ~/.config/lvim
-
See Astronvim Config repository for setting up Astronvim and clone the config for it.
Run neovim and install additional language servers:
:LspInstall clangd rust_analyzer sumneko_lua cmake marksman vimls
Install additional tree sitter:
:TSInstall bash cpp c lua markdown rust
-
See Lazyvim Config repository for setting up Lazyvim and clone the config for it.
-
See NvChad Config repository for setting up NvChad and clone the config for it.
Change the debugger to rust-gdb
:
:let termdebugger="rust-gdb"
Add .gdbinit
:
set startup-with-shell off
Vimspector is already in the configs.
Install gadgets (the config has vimspector_install_gadgets
set to ones for Python, C++ and Rust):
:VimspectorInstall CodeLLDB
Add .vimspector.jsom
in project root:
{
"configurations": {
"launch": {
"adapter": "CodeLLDB",
"filetypes": ["rust"],
"configuration": {
"request": "launch",
"program": "${workspaceRoot}/target/debug/pbr-rust",
"args": ["-t", "1", "scenes/test/example.pbrt"],
"env": {
"RUST_LOG": "info"
}
}
}
}
}
Add ~/.vim/plugged/vimspector/gadgets/macos/.gadgets.d/lldb-vscode.json
:
{
"adapters": {
"lldb-vscode": {
"variables": {
"LLVM": {
"shell": "brew --prefix llvm"
}
},
"attach": {
"pidProperty": "pid",
"pidSelect": "ask"
},
"command": [
"${LLVM}/bin/lldb-vscode"
],
"env": {
"LLDB_LAUNCH_FLAG_LAUNCH_IN_TTY": "YES"
},
"name": "lldb"
}
}
}
Generate compile_commands.json
in project folder root which can be used by clangd
LSP with
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON
.
cmake -D CMAKE_BUILD_TYPE=Debug -S . -B Debug -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
cp Debug/compile_commands.json ./
OR use bear
:
bear -- cmake -D CMAKE_BUILD_TYPE=Debug -S . -B Debug
See Getting Started for ~/.gitconfig
changes (not committed in this repo so as not to expose name, email, etc.
brew install git-delta
ln -s <path-to-dotfiles>/lazygit ~/.config/lazygit