毎朝のケーブル抜き差しに嫌気が差していた

自分はリモートワークではなく毎日出社している。 職場のセキュリティポリシーで、退社時にマシンをロッカーにしまわなければならない。 デスクに置きっぱなしにできないため、出退勤時や会議のたびに、複数のケーブルを抜き差ししていた。 モニター2台分のケーブル、キーボードのケーブル、トラックパッドの充電ケーブル、ACアダプタ。 これら4〜5本のケーブルを毎回抜き差しするのは、小さいようで積もり積もるとかなりのストレスになる。

それを解決したのが、Plugableの7ポートUSB-Cドッキングステーション(デュアルHDMI対応、100Wパススルー充電対応) だった。 USB-Cケーブル1本をMacBook Proに差すだけで、モニター2台とキーボード、トラックパッドの充電、本体への給電がすべてまとまる。 2年ほど前の購入時は17,980円で、このクラスのドッキングステーションとして手頃だった。 記事を書くにあたって確認したら26,568円に値上がりしていた。円安の影響だろうか。

デスク上のPlugable製USB-Cドッキングステーション

ケーブル問題はこれで片付いたが、道具の見直しはその後も続いた。 今年に入ってエディタとターミナルを入れ替え、パッケージ管理はまだ整理の途中だ。 ここ2年ほどの変化をまとめて書いておく。

デスク周りの構成

マシンはMacBook Pro 14インチ(2024年、M4)で、メモリ32GB、ストレージ1TB。 macOS Sequoiaを使っていて、職場の管理ポリシーの関係で最新版には上げていない。

2026年7月時点では、M4の処理性能に不満はない。 コンテナを複数立ち上げながらAIエージェントを動かしても発熱が少なく、処理が詰まる感覚がない。

キーボードはVORTEX KEYBOARD M0110 を使っている。 1984年の初代Macintoshのキーボードをオマージュしたモデルで、見た目に惹かれて選んだ。 レトロ感が好きなのだと思う。 かつてカメラでOLYMPUS OM-D E-M5やNikon Dfを持っていたので、キーボードの好みにもその傾向が出ている。

以前はTokyo60 や分割キーボードの7sPro を試してきた。 HHKBレイアウト自体は好きだが、本物のHHKB(静電容量無接点方式)は使ったことがない。 昔、HHKB Lite2 for Macを持っていたが、キー荷重の重さと打鍵音のうるささから、すぐに使うのをやめてしまった。 7sProを数年使い、気分転換に別のキーボードを試してみたくなったタイミングでM0110を見つけた。

キーキャップは韓国のメーカーSWAGKEYSのDoodlecaps Nakseo に換装している。 手描きの落書き風イラストが印字されたユニークなセットで、見た目の独自性が気に入っている。 キースイッチは遊舎工房のFairy Silent Linear Switch に変えた。 自作キーボードキットを組み立てて使うようになってからは、軽いキー荷重を好んでいる。 この静音リニアスイッチも押し心地が軽い。 比較的安めなのもよかった。

コンパクトで独特な見た目が気に入っている。

Doodlecaps Nakseoキーキャップを装着したM0110キーボード

ポインティングデバイスは長らくApple Magic Trackpad 2を一択で使ってきた。 Macの内蔵トラックパッドと同じ感覚でジェスチャー操作ができるためだ。

しかし、最近になってKeychron初の親指操作型トラックボールであるKeychron T1 HE を注文した。 初のトラックボールへの挑戦で、記事執筆時点では2026年9月頃に発送される予定だ。 到着を楽しみに待っている。

iTerm2 と tmux を両方捨てた

ターミナルエミュレータをiTerm2からGhostty に変えた。

iTerm2に大きな不満があったわけではないが、見た目が古くなってきていた。 GhosttyはGPUアクセラレーションに対応している。 自分の環境では起動と描画が速く感じるし、設定ファイルもシンプルで必要な設定は数行で済む。 インストール直後から使えて、余計な設定をする必要がない。

マルチプレクサはtmuxからherdr に乗り換えた。 herdrは最近になって人気が出てきているツールで、AIエージェントとの連携を最初から考慮して設計されたターミナルマルチプレクサだ。 tmuxzellijで同じ環境を作ろうとするとプラグインやスクリプトを自力で組み合わせる必要があるが、herdrはほぼゼロコンフィグで動く。 なお、ローカルで使うのをやめただけで、今でもリモートサーバーにSSH接続したときにはtmuxを使用している。 cmuxmuxyorcaなど、AIエージェント対応を謳うターミナルツールも試したが、自分には使わない機能のほうが多かった。 Ghosttyherdrはどちらも「設定が少なくてすぐ使える」という点で相性がよく、今のところこの組み合わせが一番合っている。

Ghosttyとherdrを組み合わせたターミナル画面

WezTermNeovimは設定の自由度が高いぶん、使いこなすには時間がかかる。 自分はそこに労力を割きたくないので、今は選んでいない。

フォントとテーマは妥協の産物でもある

フォントはUDEV Gothic を使っている。 ターミナルではUDEV Gothic 35NF、エディタではリガチャ対応版のUDEV Gothic 35NFLGを使って、==<=といった演算子を合字で表示している。

UDEV Gothicを選んだのは次の理由から。

  • 半角と全角の文字幅比率が3対5で、英語と日本語が混在するファイルが読みやすい
  • 0OIl1など似た文字の識別がしやすい
  • 0の中心に斜め線が入っているデザインが好き(点が入っているタイプは好みでない)
  • Nerd Fontsに対応していてstarship のアイコンが崩れない

長い間Ricty Diminishedを使ってきたが、サポート終了に伴って別のフォントを探すことになった。 MyricaFira Codeなどを試しながら1年ちょっと変遷した結果、現在のフォントに落ち着いた。

配色テーマはGhosttystarshipZed のすべてでCatppuccin Frappéに統一している。 本当に好きなのはIKKI VSCode Dark Theme だが、VSCode以外には存在しない。 かといって自分でポートするのも面倒なので、人気があって主要ツールに移植されているCatppuccinに落ち着いた。 完全に妥協だけど、ツールをまたいで揃っていると気持ちがいい。

starshipのプロンプトはCatppuccin Powerlineプリセットをほぼそのまま使っている。

VS Code をやめた理由

10年使ったVS Codeをやめた。

直接のきっかけは、2026年5月に拡張機能の更新を攻撃経路とするサプライチェーン攻撃が話題になったことだった。 自分への直接の被害はなかったが、VS Codeの拡張機能を使い続けることに不安を感じた。

ただ、これだけが理由ではなかった。

起動が年々重くなっていて、拡張機能の組み合わせが原因だとわかっていても対処していなかった。 GitHub Copilotの料金体系が変わって、使い続けるモチベーションが下がっていた。 10年分の設定と拡張機能が積み上がって、身動きが取りにくくなっていた。

移行先としてCursorWindsurfも検討したが、VS Codeをベースにした派生エディタは候補から外した。 根本的な問題を引き継ぐことになると思ったから。 vimNeovimは以前から試していたけど、キーバインドに馴染めなかった。

Zedが人気になってきたタイミングで試してみたら、起動が速く、設定がシンプルで、使い始めのハードルが低かった。 Rustで書かれているという信頼感もある。 「一番ましだった」という選び方で、Zedに熱狂しているわけではない。

正直なところ、まだ不満が残っている。 Git操作の機能がVS Codeより薄いため、Lazygit を使ってターミナルで操作している。 コミットメッセージの自動生成についても、別記事の「Lazygit x aicommit2 で AI コミットメッセージ生成を組み込む 」で書いた構成を組んで解決した。 拡張機能のエコシステムが小さくて、VS Codeにあった代替がないものもある。

それでも使い続けているのは、起動速度と軽さの体感が明らかに違うからだ。 VS Codeを10年使ってきた自分でも、ここまで差があるのかと思った。

Zedエディタでコードを開いている画面

設定の少ないツールを選んでいる

開発環境では、設定に労力を割かずに使い始められることを重視している。 GhosttyherdrZedは、どれもインストール直後からほぼそのまま使える。

バージョン管理は、anyenvからasdf、そして2〜3年前にmise へと移行してきた。 miseasdfと互換性があったため、移行コストが少なかった。

今はHomebrewmiseを併用している。 最近のmiseは言語ランタイムだけでなく、dotfilesHomebrewのパッケージも直接管理できるようになった。 設定とパッケージ管理もmiseに集約することを検討しているが、移行コストを把握しきれていないので、まだ決断していない。

今後やりたいことは二つある。 Homebrewdotfilesmiseに集約することと、ターミナルでのGit操作ワークフローを完全に馴染ませることだ。 エディタ側で解決するのを待つのではなく、Lazygitを中心にした操作に頭を切り替えようとしている。

完成した構成ではないけれど、毎朝USB-Cケーブル1本を差すだけで作業を始められるし、エディタ起動時のちょっとしたイライラも減った。 この二つの改善だけでも、環境を見直した価値はあった。