そういえば、こういう流れあったな、と思い出したので自分も書いてみる。 (書いてみようと思って書いてなかったやつ)

OS

macOSが中心。

たまにSwift触るけど頻度下がってるのでLinuxも使いたいなと思いつつ、GUIは一番macOSが洗練されていて使いやすいと感じているのでSSHするとかmultipassとかでLinux VM立てて使う感じに落ち着きそう。

エディタ

基本的にターミナル上でvim。neovimにしないのは特に理由はない。ターミナル上で完結するのが好きなので、GUIエディタは必要に応じて使う程度。

JetBrains製品も必要に応じて使うけど、最近はJetBrains製品をあまり使う機会がない。

コーディングエージェント

GitHub CopilotとCloud Codeを併用。

GitHub Copilotは賢いコード補完として、vim上でオムニ補完とかその他の補完と組み合わせて使ってる。

Cloud Codeはあんまり活用できている感はないんだけど、テストコード生成とかPlan modeを壁打ち相手として使ってる。 skillsとかあんまり活用できてないので今後の課題かな。

コード生成全部任せるよりはペアプログラミング的に使うのが自分には合ってる気がする。 よくコーディングエージェントがドライバーで自分はナビゲータ、みたいな話を聞くけど、自分の場合は逆の方がしっくり来てる。

しっくり来てる、というか、その方が面白いというか。自分の場合、コードを書いて問題を理解するタイプなので、コードを書かないと理解が進まなくて適切に指示もできない。時代に遅れている、と言われれば、そう。

あんまり物量が求められるような領域のコードを書いてない、というのもあるかも。

ターミナルエミュレータ

macOS標準のTerminal.app を使ってる。

ただTerminal.appに不満がないわけではなくて、ペインとかタブとかいらない。ショートカットキーで暴発するのが嫌。 ターミナルマルチプレクサはtmuxを使ってるので、そっちでペインとタブとかを管理しているので。

最近WezTermで 直前のコマンド出力をコピーする みたいなことができるのを知って、ちょっと興味が出てきているが大半の機能は不要なので乗り換えるかどうかは微妙。

むしろ自作してもええんちゃうか、って思っている今日この頃。

ターミナルマルチプレクサ

前述のようにtmuxを使っている。

ペインとかタブとかの管理以外にもキーボードだけで範囲選択できたりとかも便利。

シェル

bashを使っている。

はるか昔にzsh使っていたが、zsh特有の機能をあまり使わなかったのでbashに戻した。

ランチャー

Alfredを使っているけど、標準のSpotlightでも全く問題がないことに最近気づいた。

フォント

あまりこだわりがないのでSF Monoを使っている。リガチャは趣味じゃない。

Webブラウザ

Firefox

たま〜にうまく動かないWebサイトが出てきたときはSafari, Chromeの順で試す。

開発環境のセットアップ

Homebrew

言語ランタイムの管理はasdf。

mitamae を開発環境のプロビジョニングツールを使ってる事例見て、興味が出てきた。

dotfiles

thara/dotfiles

設定ファイルの配置はGNU Stow。

ノートテイキング

vimwiki/vimwiki

どこでvim開いてても <Leader>w<Leader>w でdaily noteにジャンプしてサッと書けるようにしている。 ファイルフォーマットはmarkdownにしてるので、Obsidianから開くこともある。

キーボード

MacBook Air 2022 M2を常用しているので、それの組み込みキーボードを使っている。

外付けキーボードもいっぱい持ってるけど、ハードウェアとしてラップトップが好きなのでこれを使いがち。

キーリマッパー

Karabiner-Elementsを長年愛用。

とはいえ複雑なリマップはしておらず、コマンドキーによる英数/かな切り替えぐらいなので、 ⌘英かな に移行してもいいかもしれない。

マウス・トラックパッド

ラップトップ好きとはいえ、組み込みトラックパッドだと手首が痛くなるのでロジクール MX ERGO MXTB1sを使っている。

まとめ

すでに考え方としては制約の中で選ぶもの で書いてあるので、それを実際にどう運用しているかが現れている感じ。

10年以上同じような感じでやってきているので、あまり大きな変化はないけど、細かい部分での改善は続けていきたい。