Skip to content

ofer987/dotfiles

 
 

Repository files navigation

Installation Instructions

Technology Install Command Latest Instructions
iTerm2 N/A https://iterm2.com
Brew /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"; https://github.com/Homebrew/brew
Neovim brew install neovim; https://github.com/neovim/neovim
Vim brew install vim; https://github.com/vim/vim
Tmux brew install tmux;
Fish brew install fish; https://fishshell.com/
zoxide brew install zoxide https://github.com/ajeetdsouza/zoxide
fzf brew install fzf https://github.com/junegunn/fzf
Fisher curl -sL https://git.io/fisher | source && fisher install jorgebucaran/fisher; https://github.com/jorgebucaran/fisher
Karabiner N/A https://github.com/pqrs-org/Karabiner-Elements
Pry gem install pry; https://github.com/pry/pry
NVM curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash; https://github.com/nvm-sh/nvm
Git Scripts N/A Set the GitHub Personal Authentication Token as env -x GITHUB_TOKEN <personal-pat> in ~/.yadr/fish/config.personal.fish

Configuration Instructions

Git-scripts submodule

  1. git submodule update --recursive;

Fish and Starship

  1. mkdir -p -- ~/.config;
  2. ln -s ~/.yadr/fish ~/.config/fish;
  3. ln -s ~/.yadr/starship.toml ~/.config/starship.toml;
  4. curl -sL https://git.io/fisher | source && fisher install jorgebucaran/fisher;
  5. fisher install edc/bass;
  6. fisher install oh-my-fish/theme-coffeeandcode;
  7. fisher install dracula/fish;

Make Fish be the Default Shell

  1. Add the result of which fish to /etc/shells
  2. chsh -s $(which fish) in Bash

iTerm2

  1. Load settings from ~/.yadr/iTerm2, Preferences -> General -> Preferences

Starship Cross-shell Prompt

  1. Follow the instructions at https://starship.rs/
  2. Install the NerdFont FiraCode font for iTerm2

Node && Yarn

  1. nvm install 14.17
  2. nvm install 18.14
  3. ln -s ~/.yadr/nvmrc ~/.nvmrc
  4. npm install --global yarn

IntelliJ IDEA

  1. defaults write com.jetbrains.intellij ApplePressAndHoldEnabled -bool false

.NET Core

Install from Microsoft.

Install in the home directory (~) on Thomson Reuters computers because of permissions.

Python

  1. Install pyenv, brew install pyenv
  2. Install pipx, brew install pipx, and follow extra instructions at https://pypi.org/project/pipx/
  3. Install pipenv, pipx install pipenv

Neovim and Vim

Install both Neovim and Vim via Brew, and then run,

  1. pip3 install pynvim --upgrade
  2. yarn global add neovim
  3. gem install neovim

Configure GitHub Copilot

  1. :Copilot setup
  2. :Copilot enable

vim-plug

  1. Install vim-plug, https://github.com/junegunn/vim-plug, for both Neovim and Vim

Plugins

  1. ln -s ~/.yadr/vim ~/.vim;
  2. ln -s ~/.yadr/vimrc ~/.vimrc;
  3. mkdir -p -- ~/.config/nvim;
  4. ln -s ~/.yadr/vimrc ~/.config/nvim/init.vim;
  5. ln -s ~/.yadr/vim/spell ~/.config/nvim/spell;
  6. nvim +PlugClean +PlugInstall +PlugUpdate;
  7. vim +PlugClean +PlugInstall +PlugUpdate;
  8. vim +OmniSharpInstall;

Language Servers

  1. gem install rubocop;
  2. ln -s ~/.yadr/rubocop/config.yml ~/.rubocop.yml;
  3. ln -s ~/.yadr/ruby/ruby-version ~/.ruby-version;
  4. npm install -g vim-language-server;
  5. gem install solargraph;
  6. mkdir -p ~/.config/solargraph;
  7. ln -s ~/.yadr/solargraph.yml ~/.config/solargraph/config.yml;
  8. pip install python-language-server;
  9. npm install -g typescript typescript-language-server;
  10. npm install -g bash-language-server;
  11. npm install -g vscode-css-languageserver-bin;
  12. npm install -g vscode-html-languageserver-bin;
  13. npm install -g dockerfile-language-server-nodejs;
  14. brew install llvm;
  15. ln -s ~/.yadr/nvmrc ~/.nvmrc
  16. For TypeScript (via CoC):
  17. execute in Neovim: :CocInstall coc-tsserver
  18. execute in Neovim: :CocInstall coc-css
  19. execute in Neovim: :CocInstall coc-json
  20. execute in Neovim: :CocInstall coc-solargraph
  21. execute in Neovim: :CocInstall coc-powershell
  22. execute in shell: ln -s ~/.yadr/coc-settings.json ~/.config/nvim/coc-settings.json;

Configure Solargraph by following its documentation

Git

  1. ln -s ~/.yadr/git/gitconfig ~/.gitconfig

Tmux

  1. git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm;
  2. ~/.tmux/plugins/tpm/tpm;
  3. ln -s ~/.yadr/tmux/tmux.conf ~/.tmux.conf;
  4. ln -s ~/.yadr/tmux/tmux.user.conf ~/.tmux.user.conf;
  5. Run ~/.tmux/plugins/tpm/tpm
  • If the Plugins do not exist at ~/.tmux/plugins then install them manually
    1. git clone https://github.com/tmux-plugins/tpm
    2. git clone git@github.com:tmux-plugins/tmux-yank.git
    3. git clone git@github.com:ofer987/tmux-airline-dracula.git
  1. Silence bell:
  2. Preferences -> Profiles -> Terminal -> Silence bell
  3. Fonts:
  4. Font Book -> Add -> ~/.yadr/fonts/Fira Code Regular Nerd Font Complete.otf
  5. Preferences -> Profiles -> Text -> FiraCode Nerd Font
  6. Meta Key:
  7. Preferences -> Profiles -> Keys -> General -> Left Option Key set to Esc+

Pry

  1. ln -s ~/.yadr/irb/pryrc ~/.pryrc;
  2. ln -s ~/.yadr/irb/aprc ~/.aprc;

Karabiner

  1. ln -s ~/.yadr/karabiner ~/.config/karabiner;

LaunchBar

  1. Install LaunchBar from http://launchbar.com
  2. Licence can be found in ofer987@gmail.com email inbox
  3. Install custom actions by executing, ~/.yadr/LaunchBar/create_action

Future Plans

TODO: Consider moving the entire ~/.config directory into ~/.yadr and then adding a .gitignore file within it to preclude machine-dependent files

Key Mappings

Key Mappings

Chrome

  1. Install Rearrange Tabs
  2. Install Pin Tab
  3. Install Autocrate
  4. Install Bavardo

About

These are my dotfiles, containing configurations for a macOS environment: Tmux, Fish, Neovim, Karabiner. Originally forked from @skwp's dotfiles.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 44.7%
  • Ruby 34.1%
  • Vim Script 20.8%
  • Other 0.4%