定時で帰りたい開発環境
はじめに
今年から新卒エンジニアになります。定時で帰れることを目指して、少しでも業務効率化できそうなツールをいろいろ探したり試している最中です。その中で馴染んだやつや使っているツールのメモ。
業務用のPCを使うことになると思うので、環境が変わったときにサッと入れ直せるように。
(セキュリティ面で使うことが難しいものもありそうですが、、、)
ターミナル環境
Ghostty
Zigで書かれた高速なターミナルエミュレータ。HashiCorpの共同創業者であるMitchell Hashimoto氏が開発している。
元々はiTermを使っていたが、Claude Codeとの相性がいいと聞いて乗り換えた。Kittyグラフィックスプロトコルに対応しているので、ターミナル上で画像プレビューもできる。yaziと組み合わせると便利。
bat
Rustで書かれた cat の代替コマンド。シンタックスハイライトが付くのでコードを読むときに見やすい。Gitインテグレーションで変更行もわかる。
パイプにも普通に使えるので、bat file.txt | pbcopy みたいな使い方もできる。
ripgrep
Rustで書かれた高速な grep 代替。とにかく軽量で使い心地がいい。
.gitignore を自動で考慮してくれるので、余計なファイルが引っかからない。大きいコードベースでも一瞬で検索できるので、コードを追うときに重宝しそう。
zoxide
以下の記事で紹介されていて導入した。
cd の強化版で、一度行ったディレクトリを覚えてくれる。z プロジェクト名 みたいに曖昧に打つだけでジャンプできる。frecency(frequency + recency)というアルゴリズムで、よく行く場所・最近行った場所を優先してくれる。
デフォルトは z コマンドだが、長年の習慣で cd を打ってしまうので、上記の記事を参考に cd にエイリアスして使っている。
また、cdi で履歴をインタラクティブに確認できるようにしている。少し前まで開発していたけどどこで作業してたっけ?みたいなとき、考えずに叩けば見つけられるので便利。
深いディレクトリに移動するとき、フルパスを打たなくてよくなったのが楽。
yazi
Rustで書かれたターミナル用ファイラー。Vimライクなキーバインドで操作できる。
導入のきっかけは、Finderを open . で開いて、操作して、閉じて...というのが面倒だったから。ターミナルで完結できるのがいい。
Ghosttyを使っているので画像プレビューも問題なくできる。ファイル操作がキーボードだけで完結するので、マウスに手を伸ばす回数が減った。
pik
プロセスをTUIで確認・終了できるツール。pik と打つだけでプロセス一覧が表示されて、選んで kill できる。
暴走したプロセスを止めたいとき、ps aux | grep ... して PID 調べて kill して...という手順が面倒だったので、これで一発になった。
ウィンドウ管理
yabai + skhd
yabaiはmacOS向けのタイル型ウィンドウマネージャ。skhdはホットキーデーモンで、キーボードショートカットでyabaiを操作できる。
おすすめされて使い始めたら、画面がごちゃつかなくなって業務効率が上がった。もうこれがないと作業できない。
ただし、macOSのシステム設定をいじる必要がある(SIP一部無効化、アクセシビリティ許可など)ので、業務PCでは導入が厳しいかもしれない。
導入時はこの記事を参考にした:
AeroSpace
yabaiの代替候補。i3やswayにインスパイアされたタイル型ウィンドウマネージャで、システム設定をいじらなくても使えるのが最大の特徴。
設定も aerospace.toml 一つで完結するらしい。業務用PCでyabai + skhdが使えなかったら試そうかなと思っている。
ユーティリティ
CleanShot X
Mac向けのスクショ・録画アプリ。GIFをサッと作れるのがいい。UI変更のPRで動きを見せたいときに使えそう。あと、撮ったスクショが画面左下にしばらく残ってくれて、そのままSlackとかにドラッグ&ドロップで貼れる。
買い切りなのもポイント。サブスク疲れしてるので助かる。
ChatGPT app
入れている方も多いと思うが、Option + Space でどこからでも呼び出せるデスクトップアプリ。
ちょっと調べたいとき、エラー文を投げたいときにすぐ聞ける。作業の流れを止めずに済むのがいい。
Tot
メニューバーから気軽にメモを取れるアプリ。ページが7つしかないというシンプルさが逆にいい。
ずっと使っている。ちょっとしたメモをサッと書いて、サッと参照できる。メモアプリを開くほどでもない内容を書き留めるのにちょうどいい。
gog
CLIからGoogleサービス(Gmail、Calendar、Drive等)を操作できるツール。
Claude CodeのようなAIエージェントと組み合わせると、「来週の空いている時間を教えて」「未読メールを要約して」みたいな指示でGoogleサービスを操作できるようになる。設定は少し手間だが、今のところ非常に便利。
macの設定
開発環境ではないが、地味に効率が上がった設定。
Finderのツールバーにairdrop
Finder > 表示 > ツールバーをカスタマイズ で、AirDropをツールバーに追加できる。
ファイルを選択して、ツールバーのAirDropアイコンにドラッグするだけで共有できる。iPhoneとのファイルのやり取りが一瞬になった。
三本指でウィンドウ一覧表示
トラックパッドを三本指で下にスワイプすると、開いているアプリのウィンドウが全て表示される(Mission Control)。
複数のデスクトップにまたがってブラウザやターミナルを開いているとき、目的のウィンドウをすぐに探して飛べる。研究室の先生に教えてもらった設定だが、これがないと不便に感じるレベルで馴染んでしまった。
設定方法:システム設定 > トラックパッド > その他のジェスチャ > Mission Control
フォント
Maple Mono
以下の記事で紹介されていて導入した。
リガチャ対応のコーディング用フォント。日本語にも対応している。
検討中
- AeroSpace(業務用PCでyabai + skhdが使えなかったら)
- Screenpipe - 24時間スクリーンと音声をキャプチャして、AIで業務を自動化するツール。データはローカル処理なのでセキュリティ面も安心らしい
合わなかった
設定ファイルの場所
| ツール | パス |
|---|---|
| Ghostty | ~/.config/ghostty/config |
| yabai | ~/.yabairc |
| skhd | ~/.skhdrc |
| AeroSpace | ~/.aerospace.toml |
おまけ: デスク周り
開発環境とは外れるが、デスク周りはPREDUCTS製品で揃えたい。圧倒的にかっこいい。
費用がかかりそうなので、まずは別のお手軽な昇降デスクを買って、Dashboardから徐々に買い揃えていく予定。
まとめ
定時で帰るために、少しでも作業を効率化できるツール。
他のツールも馴染んだら随時、追記します。
Discussion
いろいろまとまっていて良い記事でした、知らないのもあり参考になりました、ありがとうございます
CleanShot X は一応は買い切りですが、'One year of updates' とあるとおり一年たつとその次のバージョンへUpdateできなくなってしまいます。Updateしなければ使い続けられますが、Macは毎年OSがメジャーアップグレードされるので実質的な1年サブスクと買い切りの中間ぐらいな感じになってしまいますね…
最近はこういうアプリも増えてきて、もうちょっと高い金額でLifeTime Updateを保証してる購入オプションがあるものもあるので、CleanShot Xもそういうプランがあれば嬉しいなあと思っています。