Skip to content

siliconwitch/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌈 Welcome to my dotfiles 👨🏻‍💻

Curated development environment that I use on my machines. Follow these instructions if you'd like to set up something similar, otherwise simply explore the dotfiles for inspiration.

Fancy Terminal Preview

Initial MacOS Setup

  1. Install Git

    xcode-select --install
  2. Create a new ssh key

    ssh-keygen
  3. Configure Git

    # Set up the git globals
    git config --global user.name "my name"
    git config --global user.email "mymail@gmail.com"
    git config --global core.excludesfile ~/.config/git/ignore
  4. Install the Homebrew package manager

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
    # Temporarily export brew to the PATH
    export PATH=$PATH:<whatever the above gave as the bin path>
  5. Clone this repository into the .config folder

    mv ~/.config ~/old-config
    git clone --recursive https://github.com/siliconwitch/dotfiles.git ~/.config
  6. Install applications:

    brew install \
       affinity-photo \
       blender \
       btop \
       cloc \
       discord \
       drawio \
       dropbox \
       fd \
       figma \
       fish \
       font-roboto-mono-nerd-font \
       fzf \
       gcc-arm-embedded \
       gh \
       go \
       google-chrome@dev \
       ical-buddy \
       jq \
       karabiner-elements \
       kicad \
       koekeishiya/formulae/yabai \
       localsend \
       lua \
       mullvad-vpn \
       neofetch \
       node \
       nordic-nrf-command-line-tools \
       obs \
       python \
       raspberry-pi-imager \
       raycast \
       raycast \
       saleae-logic \
       segger-jlink \
       steam \
       the-unarchiver \
       tmux \
       vlc \
       vnc-viewer \
       wezterm \
       wireshark-app \
       xmind \
       zed
  7. Set default terminal to fish

    echo $(which fish) | sudo tee -a /etc/shells
    chsh -s $(which fish)
    
    # Remove bash and zsh related files if you like
    rm -r .bash*
    rm -r .zsh*
  8. Other manually installed appsı

Custom keyboard shortcuts

Window management

  • Capslock - Escape if clicked, or Ctrl if held
  • Fn-Space - Opens a new terminal
  • Fn-Enter - Opens a new editor window
  • Fn-Escape - Toggles tiling window manager off and on
  • Fn-b - Balances titled windows
  • Fn-r - Rotates tiled windows clockwise

Fish

  • Ctrl-t - Fuzzy change directory
  • Ctrl-r - Fuzzy search history

Tmux

  • Ctrl-n - New window

  • Ctrl-a H - Navigate to previous window

  • Ctrl-a L - Navigate to next window

  • Ctrl-a Ctrl-h - Split window left

  • Ctrl-a Ctrl-j - Split window down

  • Ctrl-a Ctrl-k - Split window up

  • Ctrl-a Ctrl-l - Split window right

  • Ctrl-a h - Navigate one pane left

  • Ctrl-a j - Navigate one pane down

  • Ctrl-a k - Navigate one pane up

  • Ctrl-a l - Navigate one panel right

  • Ctrl-\ - Navigate to previous pane

  • Ctrl-a Ctrl-x - Kill pane

  • Ctrl-a Shift-1 - Show US Pacific time

  • Ctrl-a Shift-2 - Show US Central time

  • Ctrl-a Shift-3 - Show US East Coast time

  • Ctrl-a Shift-8 - Show London time

  • Ctrl-a Shift-9 - Show Central European time

  • Ctrl-a Shift-0 - Show China time

  • Ctrl-a _ - Hide calendar

  • Ctrl-a + - Show calendar and local time

About

My personal dev environment configuration

Resources

License

Stars

Watchers

Forks