Upgrade to Pro — share decks privately, control downloads, hide ads and more …

My Mac Development Tools

My Mac Development Tools

Having recently set up 2 Macs for development, I kept a list of the tools I use and recommend. My workflow is oriented towards a command-line editor, tools, package managers, and minimal configuration.

Andrew Atkinson

November 23, 2021

More Decks by Andrew Atkinson

Other Decks in Technology


  1. Hardware Setup Work Laptop and Personal Laptop Large high-resolution monitor

    4K scaled to 3360x1890 for readability and space Trackpad for multi-touch gestures
  2. Goals Keyboard and command-line oriented workflow including primary editor Open

    source, package managers, version managers Prefer longevity and customization for editor Prefer more "stock" for terminal
  3. Mac OS Spaces Spaces Activate with 3-fingers swipe up Create

    separate spaces for personal web browsing, email Navigate between them, 3-finger swipe left/right or ctrl- left/right
  4. dotfiles and Mac OS defaults my dotfiles Mac OS defaults

    Key repeat rate, Font smoothing, Disable sound effects, etc. rake dotfiles & rake os_x_defaults
  5. Browser tabs and windows Chrome Cluster - Window & Tab

    Manager Command-m - Window Manager. Delete, re-organize tabs. Combine windows.
  6. Window Management Magnet: Keyboard and mouse snapping, divide into more

    segments Rectangle Based on Spectacle! Spectacle: Keyboard management of segments of screen Amethyst
  7. Fish Shell https://fishshell.com/ Works well out of the box Themes!

    Web-based configuration Oh My Fish - omf omf install boxfish fisher plugin manager
  8. Fish Shell rbenv Put this in ~/.config/fish/config.fish # rbenv support

    fish shell # https://github.com/rbenv/rbenv/issues/195 set PATH $HOME/.rbenv/bin $PATH set PATH $HOME/.rbenv/shims $PATH rbenv rehash >/dev/null 2>&1
  9. Fish Shell Functions Bash dict () { open dict:///"$@" ;

    } Fish function dict open dict:///"$argv" end
  10. Fish Shell CDPATH I keep my source code in ~/Projects

    Setting CDPATH makes it easy as a destination In Bash export CDPATH=.:~/Projects In Fish set -g CDPATH . ~/Projects
  11. CLI programs jrnl https://github.com/jrnl-org/jrnl/ Small journal entries Command examples and

    short notes Sync to Dropbox. Avoid sensitive information. jrnl jrnl --edit
  12. GitHub CLI https://cli.github.com/ brew install gh Usages: gh ssh-key add

    gh pr create [flags] create PRs in terminal gh pr view --web pr_number
  13. Vim 8 Package Management mkdir -p ~/.vim/pack/andyatkinson/start Git clone vim

    plugins to this directory ctags fzf.vim nerdtree tcomment_vim vim-distinguished vim-fugitive vim-rails vim-ripgrep vim-ruby
  14. Fuzzy Finder ( fzf ) https://github.com/junegunn/fzf brew install fzf vim

    (fzf) (vim, fzf, fish shell) :FZF in Vim history | fzf
  15. Misc! Itsycal - Menu bar calendar Jekyll - blog like

    a hacker Marp - slide deck like a hacker. Glow - render markdown in terminal