Install iterm2: https://iterm2.com/ Install brew: https://brew.sh/
Install necessary tools with brew:
brew install coreutils eza direnv git hub node python@3.12 pipx ripgrep ruby tig tmux tree vim zsh openssl@1.1
Clone this repository
git clone git@github.com:felixedel/dotfiles.git ~/.dotfiles
Symlink the necessary files into your HOME
directory:
ln -s ~/.dotfiles/git/.gitconfig ~/.gitconfig
ln -s ~/.dotfiles/git/.gitignore_global ~/.gitignore_global
ln -s ~/.dotfiles/tig/.tigrc ~/.tigrc
ln -s ~/.dotfiles/tmux/.tmux.conf ~/.tmux.conf
ln -s ~/.dotfiles/vim/.vimrc ~/.vimrc
Install oh-my-zsh: https://ohmyz.sh/
Symlink the zsh config file into your HOME
directory:
ln -s ~/.dotfiles/zsh/.zshrc ~/.zshrc
In case you created the symlink already before installing oh-my-zsh, the file will be overwritten by the install procedure. Thus, you have to create it again.
Clone necessary zsh plugin repositories
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
Link the custom ZSH theme to the oh-my-zsh
themes directory like so:
ln -s ~/.dotfiles/zsh/themes/felixedel.zsh-theme ~/.oh-my-zsh/themes/
Install tmux plugin manager: https://github.com/tmux-plugins/tpm and install all
plugins via prefix + I
.
- Color Theme: Tango Dark
- Font: DejaVu Sans Mono Nerd Font Complete 13pt (https://github.com/ryanoasis/nerd-fonts/blob/master/patched-fonts/DejaVuSansMono/Regular/complete/DejaVu%20Sans%20Mono%20Nerd%20Font%20Complete.ttf)
- Terminal type: xterm-256color
To allow jumping words via arrow keys, change the following key mappings in profile -> keys
:
Option+<-
:Send Escape Sequence
with valueb
Option+->
:Send Escape Sequence
with valuef
Appearance -> Windows -> Hide scrollbars General -> Selection -> Applications in Terminal may access clipboard
- Open tmux windows as native windows
Clone vundle to manage Vim plugins
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
Create the vim swapfiles directory:
mkdir ~/.vim/swapfiles
On first start of vim, run :PluginInstall
to install necessary plugins.
- Install FiraCode to enable font ligatures.
- Link the
settings.json
file from this repository to the original VS Code settings location:
ln -s ~/.dotfiles/vscode/settings.json ~/Library/Application\ Support/Code/User/settings.json
- Link the
keybindings.json
file from this repository to the original VS Code settings location:
ln -s ~/.dotfiles/vscode/keybindings.json ~/Library/Application\ Support/Code/User/keybindings.json
This is a list of plugins, I've currently installed in vscode:
- Black Formatter
- Flake8
- Docker
- GitLens
- Jupyter
- Prettier
- Pylance
- Python
- Vim
- vscode-icons
iTerm2 color schemes: https://github.com/mbadolato/iTerm2-Color-Schemes Nerd font for agnoster theme with venv icon: https://github.com/ryanoasis/nerd-fonts zsh themes: https://github.com/robbyrussell/oh-my-zsh/wiki/Themes How to write a ZSH theme: https://blog.carbonfive.com/writing-zsh-themes-a-quickref/