$30 off During Our Annual Pro Sale. View Details »

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
PRO

November 23, 2021
Tweet

More Decks by Andrew Atkinson

Other Decks in Technology

Transcript

  1. My Mac  Dev Env 2021 October 2021 Andrew Atkinson

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

    4K scaled to 3360x1890 for readability and space Trackpad for multi-touch gestures
  3. 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
  4. 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
  5. 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
  6. Browser tabs and windows Chrome Cluster - Window & Tab

    Manager Command-m - Window Manager. Delete, re-organize tabs. Combine windows.
  7. Terminals I use iTerm Other terminals: Terminator Kitty Alacritty

  8. Tmux Keyboard navigation of panes Book recommendation: tmux 2: Productive

    Mouse-Free Development
  9. Window Management Magnet: Keyboard and mouse snapping, divide into more

    segments Rectangle Based on Spectacle! Spectacle: Keyboard management of segments of screen Amethyst
  10. 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
  11. 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
  12. Fish Shell Functions Bash dict () { open dict:///"$@" ;

    } Fish function dict open dict:///"$argv" end
  13. 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
  14. CLI programs tldr https://github.com/tldr-pages/tldr Like man pages - but just

    the examples! tldr curl tldr psql
  15. 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
  16. 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
  17. GitHub T - fuzzy finder Command-K - omnibar

  18. 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
  19. Fuzzy Finder ( fzf ) https://github.com/junegunn/fzf brew install fzf vim

    (fzf) (vim, fzf, fish shell) :FZF in Vim history | fzf
  20. ripgrep ( rg ) https://github.com/BurntSushi/ripgrep Incredibly fast rg TODO app/models

  21. Misc! Itsycal - Menu bar calendar Jekyll - blog like

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