
macOS VenturaでSublime Textをターミナルから起動する方法
こんにちは。私は以前はwindowsを使っており、pythonやらWebアプリケーション開発に興味が出てきたぐらいからmacの方がいいな〜と漠然と思っていました。
Udemyなどオンラインスクールを利用していると講師はほとんどmacで説明していました。内容をwindowsに変換するのも面倒なので、今回macを導入した次第であります。
そこでいきなり表題の問題にぶち当たりました。環境変数などを設定するやり方などはWeb上でいくつか記事は見つかるのですが、少し年数が経っていてmacOS Catalina以降のやり方を見つけるのが困難でした。最初はすぐにWeb上で見つかるだろうと思っていたので検索を続けていたのですが、時間がもったいないと思い始めたところで、『あ、ChatGPTさんに聞いてみよ』という考えに至りました。
・・・ChatGPTさん一発で答え出してくれました。
なので、解決方法をここに掲載します。
macOS Catalina以降、システムフォルダへの書き込みが制限されているため、従来の方法でターミナルからSublime Textを起動することができません。この記事では、それをどのように解決するかを解説します。
問題の詳細
Sublime Textをターミナルから起動するためには、通常、シンボリックリンクを作成してパスに追加します。しかし、macOS Catalina以降では、システムディレクトリへの書き込みが制限されており、/usr/local/binにシンボリックリンクを作成しようとすると"Operation not permitted"というエラーメッセージが表示されます。
解決策
/usr/local/binはユーザが自由に利用できるディレクトリなので、ここにシンボリックリンクを作成することで問題を解決します。以下に手順を示します。
ターミナルを開き、以下のコマンドを入力して/usr/local/binディレクトリを作成します。
sudo mkdir -p /usr/local/bin
次に、Sublime Textの実行可能ファイルへのシンボリックリンクを/usr/local/binに作成します。以下のコマンドをターミナルに入力します。
sudo ln -s /Applications/Sublime\ Text.app/Contents/SharedSupport/bin/subl /usr/local/bin/
これで、ターミナルからsublコマンドを実行するとSublime Textが起動するようになります。
ただし、この方法が機能するためには、/usr/local/binがシステムのPATHに含まれている必要があります。含まれていない場合は、シェルの設定ファイル(.bashrc、.bash_profile、.zshrcなど)に以下の行を追加します:
export PATH="/usr/local/bin:$PATH"
そして、新しいターミナルセッションを開始するか、または現在のセッションで以下のコマンドを実行して変更を反映させます:
source ~/.bashrc
(.bashrcを使用している場合。.bash_profileや.zshrcを使用している場合は、適宜読み替えてください)
これで、macOS VenturaでターミナルからSublime Textを起動することができます。