はじめまして。髙田と申します。 2020年に新卒でギフティに入社し、SaaS事業部でエンジニアとして働いております。
6月に開催された社内イベントのTechBashにて、「Macの開発環境構築2021」というタイトルで発表し、開発効率を向上させるために便利なツールをご紹介しました。
以下、発表内容です。
発表の目的
- 開発に役立つツールを紹介して、ちょっとでもみなさんの開発効率向上に役立てたらいいな
- Takadaが知らないツールを教えてほしい
前提
- 今回はMacを使うことを前提としている
話すこと
- Macの設定
- ランチャーアプリ
- 画面分割
- ターミナル関連で便利なツール
- DBMSのGUIツール
- ブラウザ関連
話さないこと
- エディタ関連
- 戦争が起こりそうなので何も話しません
VSCodeがおすすめです(無料で使える最強エディタ)
Macの設定
キーの入力速度を爆速にする
Macの下図の設定で、「キーのリピート速度」と「リピート入力認識までの時間」を最速にする設定はみなさんされていると思いますが、この限界を突破する方法があります。
爆速にする方法は以下の通り。エディタでカーソル移動するときに、vimのように爆速で移動することができるようになります。
$ defaults write -g InitialKeyRepeat -int 10 $ defaults write -g KeyRepeat -int 1 Mac再起動
参考:https://gist.github.com/hofmannsven/ff21749b0e6afc50da458bebbd9989c5
ランチャーアプリ
Alfred
- Mac標準のspotlightの進化系
- アプリを開くときに便利
- ブックマークにすぐアクセスできる
- ちょっとした電卓としても使える
- 課金するとクリップボードの履歴検索などさらに便利な機能が使えるらしい
画面分割
Rectangle
- 画面分割や画面移動が自由自在
ターミナル関連で便利なツール
iTerm2
- Mac標準搭載のターミナルよりもUIが綺麗で多機能
- 開発環境構築の記事でもよく紹介されている
powerlevel10k
- zshのテーマ
- ターミナルがおしゃれになる
- カスタマイズも簡単
fzf
- CLIでインクリメンタルな曖昧検索ができるようになるツール
- 似たようなツールでpecoもある(前はpecoを使っていたが、fzfの方がかっこいいので乗り換えた)
fzfの便利な使い方
1. gitのブランチ切り替え
設定方法(ctrl + \
にショートカットを割り当てる場合)
~/.zshrc
function git-branch-fzf() { local selected_branch=$(git for-each-ref --format='%(refname)' --sort=-committerdate refs/heads | perl -pne 's{^refs/heads/}{}' | fzf --query "$LBUFFER") if \[ -n "$selected_branch" ]; then BUFFER="git checkout ${selected_branch}" zle accept-line fi zle reset-prompt } zle -N git-branch-fzf bindkey "^\\" git-branch-fzf
2. コマンド履歴の検索
おそらくfzfインストール時に勝手に設定される。ctrl + R
で発動する。
3. リモートホストへのSSH
設定方法
~/.zshrc
# fzf_ssh function fzf_ssh () { local selected_host=$(grep "Host " ./ssh_config | grep -v '*' | cut -b 6- | fzf) if [ -n "$selected_host" ]; then echo "ssh -F ./ssh_config ${selected_host}" ssh -F ./ssh_config $selected_host fi }
ghq
- リポジトリ管理ツール
- 「どのプロダクトをどのディレクトリに置いたか忘れる」「プロダクト間のディレクトリ移動がめんどくさい」という悩みを解消できる
- fzfと組み合わせると、一瞬でディレクトリ移動ができるのでとても便利
Rust製のCLIツール
exa
- lsコマンドの進化系
- lsよりもおしゃれで速い
bat
- catコマンドの進化系
- catよりもおしゃれで速い
DBMSのGUIツール
TablePlus
- MySQL Workbenchが有名だが、TablePlusの方がUIが綺麗で使いやすい
- 無料版だと、同時にテーブルを2つまでしか開けないのがデメリット
ブラウザ関連
workona(ワコーナ)
- chromeのタブ管理ツール
- 「タブを開きすぎてどこに何のタブを置いたか分からん」という悩みを解消できる
以上、Macの開発環境構築2021についてご紹介させていただきました。他にもこんな便利ツールを知っているよという方は、是非教えてください。
少しでもこの記事が参考になれば幸いです。