Skip to content

macOS

asdf は 0.16 からディレクトリ構造が大幅に変化している

asdf は様々なランタイムを管理出来るバージョンマネージャです。 Golang で実装されています。 ただ、後発の Rust で実装された mise (旧名は rtx) は「asdf 用のプラグインは全て使えるが、asdf より速い」とうたっています。 これを受けてなのか、asdf は バージョン 0.16.0 の Changelog に下記の記載があります。 記載内容によると「バージョン 0.16.0 からより速く、シンプルで、メンテナンスし易いように書き直した」ようです。

Rewrite asdf in Golang The rewrite in Go was spread across 88 pull requests that are all included in this release. The primary goal of the rewrite was to create a codebase that was faster, simpler and easier to maintain. The rewrite tries to maintain feature parity with the previous version. However, a number of breaking changes were introduced. Some of these were due to the change of language, a few out of a desire to simplify the code, and some to improve the user experience. For the full list of breaking changes and the upgrade guide visit the Upgrading to 0.16.0 page on the asdf website. It is highly recommended that you read this guide before upgrading.

ですが、私の macOS 環境では 0.15 系から 0.16.1 へバージョンアップしたところ、下記のエラーが出るようになってしまいました。

/Users/USERNAME/.zshrc:.:10: no such file or directory: /opt/homebrew/opt/asdf/libexec/asdf.sh

.zshrc では バージョン 0.15 までのガイド に従って以下のように設定してありましたが、これがエラーになっているようです。

.zshrc
# asdf
. /opt/homebrew/opt/asdf/libexec/asdf.sh

Warp から Cisco ルータへ SSH した際のエラーを回避する

WarpiTermWezTerm と同じターミナルソフトウェアです。 現時点では macOS 版しか提供されていませんが、Warp is coming to Windows というページがあり、いずれ Windows 版も提供されるようです。 公式サイトのトップページには以下の記載あり、「AI 連携」を特徴にしています。

Become a command line power user on day one. Warp combines AI and your dev team’s knowledge in one fast, intuitive terminal.

Compare terminal tools というページもあります。 他のターミナルソフトウェアと Warp の比較がされており、例えば iTerm2 vs. Warp という比較もあります。

ただ、デフォルトの状態では Warp から (Linux 相手ではほぼ問題ありませんが) Cisco ルータなどへ SSH アクセスした際、エラーになることがあるようです。 この問題は GitHub の Invalid autocommand in SSH configuration #2836 で触れられていますが、この問題の解決方法をメモしておきます。

yabai 用に SIP を無効化すると X クライアントが起動しない

以前に macOS 13.5 で yabai & skhd を使ってデスクトップを切り替える というメモを書きました。 macOS で作業スペースを切り替えるには例えば以下の方法があります。

方法 費用 作業スペース切り替え時のアニメーション 備考
Mission Control 無料 無効化出来ない (多分) OS 標準なので、追加インストールが不要
TotalSpaces3 有料 無効化出来る 開発が停止している
skhdyabai 無料 無効化出来る -

私は頻繁に作業スペースを切り替える為、「作業スペース切り替え時のアニメーションを無効化出来ることは必須」なのですが、アニメーションを無効化出来ない Mission Control は候補になりません。 過去、TotalSpaces は愛用していたのですが、開発が停止してしまっている為、同じく候補に挙げるのは難しい状況です。 その為、作業スペースの切り替えには shkd と yabai を利用しています。

macOS 15 で日本語のライブ変換を無効化する

macOS 10.11 EI Capitan ごろから日本語のライブ変換がサポートされました。 ライブ変換を使うと「変換」(Space) を押さなくても自動的に日本語が変換されていくので、打鍵数が少し減ります。 ただ、ライブ変換は使い辛い面もあり、無効化したい場合もあるかもしれません。 そこで今回は macOS でライブ変換を無効化する手順をメモしておきます。

Homebrew で WezTerm をインストールする

Windows や macOS、Linux などのクロスプラットフォームで利用出来るターミナルエミュレータに Wez's Terminal Emulator があります。 通称「WezTerm」は Rust で書かれているそうです。 今回は Homebrew を使って macOS へ WezTerm をインストールする手順をメモしておきます。

WezTerm は OSS として GitHub で公開されており、リポジトリは Wez's Terminal にあります。 また、初期状態のショートカットキーは Default Key Assignments に掲載されています。