[macOS] 拡張子とアプリの関連付け

[M1 Mac, Big Sur 11.6.8]

Finderからファイルを開こうとした場合、”情報を見る”で開くアプリを選択できますが、設定してもすぐにデフォルトに戻ってしまいます。

この仕様はWindowsに比べて著しく劣っているところでもあります。

SwiftDefaultAppsを使えばデフォルトのアプリを変えることが可能です。

なぜ標準でこの機能を搭載しないのか不思議です。

[macOS] Linux USBインストールメディアの作成

備忘録として。

USBメモリのドライブパス確認

diskutil list

USBメモリをexFATで初期化(/dev/disk5の場合)

diskutil eraseDisk ExFAT NONAME /dev/disk5

USBメモリのマウント解除

diskutil unmountDisk /dev/disk5

ddコマンドでISOイメージをコピー

sudo dd if=ubuntu-22.04.1-desktop-amd64.iso of=/dev/disk5 bs=16m

[macOS] キーチェーンのパスワードを急に要求しだした

[M1 Mac, Big Sur 11.6.5]

codesignコマンド実行時に急にパスワードを要求するようになりました。

以下の方法で解決しました。

1.macOSのログインパスワードをシステム環境設定”ユーザとグループ”から設定し直す。今回はこれまでと同じパスワードを再設定しました。

2.キーチェーンアクセスを起動し、システムのキーチェーンアクセスを開く。

3.Mac Developer ID Applicationの秘密鍵を右クリックし、”情報を見る”を選択。

4.”アクセス制御”タブをクリックし、”これらのアプリケーションによるアクセスを常に許可”のところに”/usr/bin/codesign”を登録する。

これでうまくいきました。なお解決後、秘密鍵の内容を確認すると登録したはずのcodesignは消えていました。それでも問題ありません。

macOSに関する奇妙な現象は枚挙にいとまがなく、今では怒りもわかず気にならなくなりました。Appleに報告してもまず対応しないので、程よい距離感で付き合っていくことにしました。

[VSCode] PlantUMLのプレビュー表示ができない

[M1 Mac, Big Sur 11.6.5, VSCode 1.67.1]

PlantUMLのプレビュー表示のショートカットキーはoption + Dですが、偏微分記号∂が入力されてしまいます。

macOS Big Surのキーボードビューアを確認すると確かに∂がアサインされています。つまりショートカットキーの設定が不適切です。

VSCodeのキーボードショートカット設定でshift + command + Dに変更しました。

US配列だったらoption + Dで正常にプレビュー表示できるのでしょうか?このキーはWindowsでしか使えない気もします。

キーボードビューア

[VSCode] settings.jsonのファイルパス

[M1 Mac, Big Sur 11.6.5, VSCode 1.67.1]

Macの場合、settings.jsonは以下のパスに配置されています。

使い始めた頃はアプリからの呼び出し方が分からなくて苦労しました。

結構深いところにあるので、やはりアプリから呼び出す方が早いでしょう。左下の管理ギアにある”設定”を選択し、右上に出現する”ページをめくるような”マークをクリックします。

$HOME/Library/Application Support/Code/User/settings.json

[macOS] プログラミング環境の移行 VSCode, Homebrew, PyPI(pip), シェル変更

TimeMachineなしでMontereyからBig Surに2回目のダウングレード中です。かなキー連打の日本語変換機能をAppleScriptで実装できなかったのとキーボード(Logicool K375s)が不調になったことが主な理由です。

TimeMachineデータは残しておらず、いい機会なので一から構築しています。

今はUSBストレージで作業していますが、iCloudやGitHubを介してスクリプトで自動化もできそうです。ただ今のところiCloudは同期が遅くて正直使えないです。

1.VSCode[エディタ]

ホームディレクトリの.vscodeディレクトリをコピーするだけです。

2.Homebrew[パッケージ管理]

1)移行元でBrewfileを作成する。

brew bundle dump

2)ホームに作成されたBrewfileを移行先のホームにコピーする。

3)シェルをzshからbashに変更する。(前環境がbashの場合)

# シェルの確認
echo $SHELL

# シェル変更
chsh -s /bin/bash


4)移行先にHomebrewをインストール後、以下コマンドでデータを取り込む

# Homebrewのインストール
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# データの取り込み
brew bundle

3.PyPI(Python Package Index) [Pythonパッケージ管理]

1)移行元でrequirements.txtを作成する。テキストファイル名はなんでも可。

pip freeze > requirements.txt

2)移行先のホームにコピーする。

3)移行先でrequirements.txtを取り込む。

pip install -r requirements.txt

[macOS] Pythonの開発環境構築 非pyenv

[Mac mini M1, macOS Big Sur 11.6.5]

Big SurにてPythonの開発環境を一から再構築してみました。pyenvは使わず、公式サイトからダウンロードしたPython3.10.4固定です。

ディレクトリ読み込みの優先順位は.bash_profileで設定しています。最初はpipがどこにも見当たらず少し焦りました。結局pip3をファイル名変更したシンボリックリンクとして使っています。

export PATH="/Library/Frameworks/Python.framework/Versions/3.10/bin"
export PATH=$PATH:"/usr/local/bin"
export PATH=$PATH:"/usr/bin"
export PATH=$PATH:"/bin"
# python
# /usr/local/binに3.10.4のシンボリックリンクを作成

ln -s /Library/Frameworks/Python.framework/Versions/3.10/bin/python3 /usr/local/bin/python

# pip
# /usr/local/binにpip3のシンボリックリンクを作成

ln -s /Library/Frameworks/Python.framework/Versions/3.10/bin/pip3 /usr/local/bin/pip

ファイル名を変えない場合は.bash_profileに以下の記述を追加します。

alias python="python3"
alias pip="pip3"

SIP(System Integrity Protection)を解除しても/usr/binのファイルを入れ替えることができないので、/usr/local/binに配置しました。

設定前後のpythonおよびpipファイルは以下のようになります。実効ファイルの配置ディレクトリ(色付きセル)はwhichコマンドで確認しました。