##概要
年末年始ごろに流行っていた「開発環境現状確認」ですが、色々あって没にしていたものを今更ながら投稿します。
##OS
OS は Windows11, NixOS, macOS を持っています。
大学に入る前は Windows11 をメインで使っていましたが、私の通っている大学の指定 PC が Mac Book のため、macOS を使っています。最大ストレージが 256GB のため、日々容量の少なさに苦しみながら使っています。
macOS はメイン機として、プログラミングや大学の課題をやる時に使っています。Windows 11 は基本的にゲームをする時くらいしか使ってます。NixOS は Hyprland を導入していますが、特に何か目的があるわけではなく、ほぼお遊びで触っているだけです。
##キーボード・トラックパッド
キーボードは MacBook の内蔵キーボードを使っています。分割キーボードに手を出したい気持ちはあるものの、購入競争に勝てなかったり予算がなかったり等の理由で、まだ手を出せていません。
MacBook のトラックパッドを使っています。正直このトラックパッドが非常に優秀なので、わざわざマウスを買う必要性を感じていません。一応、何かあった時のために Logicool M575 というトラックボールマウスを持っています。
##エディタ
以前は VSCode を使っていましたが、Neovim に移行しました。拡張機能を入れすぎて起動時に重くなるのが煩わしかった且つ Vim のキーバインドにする拡張機能でコードを書くのが楽しかったからという理由で使い始めました。Neovim の主要なプラグインだけ書いておきます。
- プラグイン管理:
lazy.nvim - LSP 管理: Mason.nvim, mason-lspconfig.nvim
- FuzzyFinder:
Snacks.nvim (picker) - Completion:
blink.cmp
ちょうどこの記事を書いているときに、0.12.0 がリリースされました。0.12.0 には vim.pack という組み込みプラグインマネージャーが入っています 1 が、今のところは lazy.nvim の機能に満足しているので移行することはないです。vim.pack じゃないとだめ!みたいなことにならない限り移行することはないと思います。
##ターミナル
Windows11 を使っていたときはコマンドプロンプトを使っていましたが、macOS への移行を機に WezTerm を使い始めました。WezTerm は Neovim と同じ Lua というプログラミング言語で設定を書くことができるのでかなり自由度が高いです。最近は、Ghostty が非常に高速と話題になっていますが、正直 WezTerm に満足しているので移行する予定は今のところ無いです。
##シェル・プロンプト
シェルは fish を使っています。fish は特に設定をしなくてもデフォルトでシンタックスハイライトや補完が使えるので便利です。
プロンプトは Windows11 を使っていたころの名残りで Oh My Posh というのを使っています。Git のブランチやシェルの種類などが表示されるので結構気に入っています。余談ですが、私の環境では Oh My Posh の方が Starship よりも動作が高速でした。
-1774800557535.webp)
##AI ツール
GitHub Copilot CLI
AI は GitHub Copilot CLI を使っています。Claude Code や Codex には無いプレミアムリクエストという方式が採用されています。モデルごとに 1 リクエストあたりの倍率が決められていて、その倍率に応じて使用量が 100% から減っていく感じです。換算がトークンではなくリクエスト毎なので上手いこと使えば他の AI ツールよりも安く使えます。自分は GitHub Education で GItHub Pro に入っているので無料で使えます。
##ランチャー
ランチャーは Raycast を使っています。正直あんまり使いこなせていません。クリップボードの履歴とカラーピッカーをそれぞれ⌘ + Shift + Vと⌘ + Shift + Cに割り当てているくらいです。それくらいしか設定してません。Raycast の良い活用方法がいまいちよく分かっていないので、有識者の方はぜひ教えてください。##IME
IME はmacSKKを使っています。
使い始めて一ヶ月くらいしか経っていないのでまだ入力が慣れていませんが、変換のストレスが 無くなったことはかなり大きいです。
今まで macOS で使っていた IME の遍歴は macOS 標準 IME→azooKey→macSKK って感じです。
標準搭載 IME は、はっきり言って最悪です。
- 入力中に勝手に変換される。(設定でオフにできる)
- 誤変換が積み重なって変換の質が悪くなる。
- 一部のアプリで変換ウィンドウが消える。
などなど致命的な問題が複数あったので使うのをやめました。
azooKey については、公式サイトに「高精度なニューラルかな漢字変換エンジン『Zenzai』を導入した、オープンソースの日本語入力システム」とある通り、変換の質はそこそこ良かったです。ただ、一度変換した候補が学習リセットをしないかぎり、常に一番上に来るというバグ?仕様?がありました。一応対策として上位に表示させたい文字をユーザー辞書に登録することで回避はできますが、全単語でそれを行うのは不可能であり、煩わしくなって使うのをやめました。変換の質を高めるために導入したのに、自分で手間をかけて調整しにいくという本末転倒な状況になってしまいました。
##フォント
フォントは Udev Gothic NF を使っています。BIZ UD ゴシックと JetBrains Mono を合成したプログラミング向けフォントで、非常に見やすいです。全角スペースが「□」で可視化されるので、全角スペースによるエラー対策にもなったりします。また、Nerd Font 版なので、エディタやプロンプトでアイコンを表示できる点も Neovim を使う上で重宝しています。
##ブラウザ
昔からの名残りでVivaldi を愛用しています。Zen Browser を使っていたこともありましたが、肌に合わなかったので辞めました。垂直タブやマウスジェスチャーがデフォルトで搭載されています。他にもカレンダーやメールなどの機能がブラウザ上で完結しますし、Chromium ベースなので Chrome 拡張機能が使えるのもポイントが高いです。
##環境管理
###パッケージ管理
CLI ツールは Nixpkgs、GUI ツールは Homebrew casks、プロジェクトごとの設定は mise で管理しています。Nixpkgs だけだと対応していないアプリもあるので GUI ツールは Homebrew casks を使っています。mise はチーム開発をする際に便利なので使っています。
###dotfiles
dotfiles の管理は、Nix の Home Manager を使用しています。以前は chezmoi を使っていましたが、自分の使わない機能が多かったので使うのをやめました。環境をゼロから宣言的に管理できるので、再構築の手間が省けて非常に重宝しています。
##おわりに
また来年頃に書く予定なのでどのくらい変化があるのか楽しみ。




