Skip to content

mac Setup

foolmacky edited this page Feb 21, 2023 · 22 revisions

■homebrewについて

macにOSSをインストールする場合、gitから取得してmakeする場合とhomebrewを使う場合があるが、同じソフトウエアでも両者は導入先や管理が異なっている。
なので、homebrewを使って入れたものはupdateもhomebrewを使うなど、混在させ無いほうがいい。

■iTerm2を入れる

普通にダウンロードして、導入。
color設定、右クリックにpaste設定
macOSをアップデートしたときなど、iTerm2のドックアイコンを右クリックして、windowのprofile作成メニューが出ないことがあるが、明示的に再度再起動すると出るようになる

現在の.zshrc

export PATH=$HOME/.nodebrew/current/bin:$HOME/.cargo/bin:$HOME/go/bin:$PATH
export RUSTC_ROOT="$(rustc --print sysroot)"
export RUST_SRC_PATH="${RUSTC_ROOT}/lib/rustlib/src/rust/src"

PROMPT="%B%F{051}%n > %f%b"
[ -n "$RANGER_LEVEL" ] && PROMPT="%B%F{red}R $PROMPT"
ranger() {
	if [ -z "$RANGER_LEVEL" ]; then
		/usr/local/bin/ranger "$@"
	fi
}

alias rng=ranger
alias ls='ls -G'

bindkey -v
bindkey '^P' history-beginning-search-backward
bindkey '^N' history-beginning-search-forward

if which plenv > /dev/null; then evel "$(plenv init - zsh)"; fi

iTermを最初に起動したときに常に日本語入力がONになってしまうのを英数キーをスクリプト入力して防ぐ。環境設定のprofile/Send text at startに以下のスクリプトを入れる

osascript -e 'tell application "System Events" to key code 102'

■karabinerElement

ダウンロードして導入
設定はcaps lock -> 左ctrl
右option -> command
サイトからテンプレートを導入してctrl+{ -> ESC

■symantec norton

ライセンスを拡張更新(無料)して、インストール
safariのpluginも導入した

■fire fox

firefoxが好きだったのだが、BigSurにアップしてからブラウザを使っているときに度々ハングアップするようになったので、safariに切り替えようと思う
その後FFもアップして安定したので、また戻した
fire foxの画面スクロールなどの操作をvim風にキーで行えるプラグイン「Vimium」を導入。長いドキュメントの最後に移動するときなどが楽になった

j : 下に1行スクロール
K : 上に1行スクロール
d : 下に半ページスクロール
u : 上に半ページスクロール
G : 一番下にスクロール
gg : 一番上にスクロール

■ranger

sourceからinstall

git clone https://github.com/ranger/ranger.git

.zshrcに設定を入れる

PROMPT="%B%F{051}%n > %f%b"
[ -n "$RANGER_LEVEL" ] && PROMPT="%B%F{red}R $PROMPT"
ranger() {
	if [ -z "$RANGER_LEVEL" ]; then
		/usr/local/bin/ranger "$@"
	fi
}

alias rng=ranger
alias ls ='ls -G'

bindkey -v
bindkey '^P' history-beginning-search-backward
bindkey '^N' history-beginning-search-forward

if which plenv > /dev/null; then evel "$(plenv init - zsh)"; fi
  • rangerで予めEditorに紐付いていない拡張子のファイルは設定に追加することができる
    ~/.confing/ranger/rifle.confがない場合は、以下のコマンドを打つと、defaultの設定ファイルがコピーされるので、エントリを追記する
ranger --copy-config=rifle
  • 設定は上の方の記述が優先されるので、「# Define the editor for non-text files + pager as last action」より上に、期待する設定を追加
ext mod = $EDITOR --"$@"

rangerはpythonのプログラムだが、macOSのpythonは2.7, developer toolをインストールすることでv3.xが別ディレクトリに導入される
rangerの起動スクリプト(/usr/local/bin/ranger)は developer toolの3.xを直接冒頭で指定して実行する形になっているが、ranger本体のライブラリの場所はdevelopper toolとことなっているため、import rangerでエラーが発生する
python3.8がどこをライブラリのimportパスに指定しているか調べて、ranger本体のディレクトリのsimbolic linkをそこに作成する

#!/Library/Developer/CommandLineTools/usr/bin/phthon3
import sys
print(sys.version)
print(sys.path)

#このスクリプトで表示されるpathのsite-packagesディレクトリの下にlinkを作成
#ranger本体の場所
/usr/local/lib/python3.8/site-packages/ranger
  • あるいはrangerの起動スクリプトが指定しているpython3のパスにlinkを作成する
//error message
ranger:2: /usr/local/bin/ranger: bad interpreter: /Library/Developer/CommandLineTools/usr/bin/python3: no such file or directory

sudo ln -s /Library/Frameworks/Python.framework/Version/3.9/bin/python3 /Library/Developer/CommandLineTools/usr/bin/python3
  • または別の対応法として、環境変数PYTHONPATHにrangerがインストールされているPATHを追加する
#macOSに導入されているpytho3を判定して、通常はこのディレクトリにインストールされる
/usr/local/lib/python3.8/site-packages/ranger

#.zshrcにエントリを追加
export PYTHONPATH=/usr/local/lib/python3.8/site-packages:$PYTHONPATH

  • macOS montereyからrangerを最初に起動する際にxcodeによるbuildが行われ、数十秒待たされるようになった。そのあたりの仕組の変化はよくわかっていない。

■shiftIt

インストール、keyバインディング設定

  • cmd+1 - 4, 0(center), l(fullscreen)

■mac os big surの導入されているappとの互換性

karabinar-element ver13で対応済み
shiftitは現行バージョンで動作するようだ

■golang

  • brewでもインストールできるが、公式のpkgでインストールした。
  • 導入される場所がbrew版と異なる
  • uninstallするには /usr/local/go ディレクトリと、/etc/paths.d/go ファイルを削除する

■LibreOffice for mac install

■node.js install

macの場合複数のnode.jsをnodebrewを使って管理することができます。

typescript-language-server をlanguage server としてinstallする
R foolmacky > npm install -g typescript typescript-language-server
/Users/foolmacky/.nodebrew/node/v14.5.0/bin/tsserver -> /Users/foolmacky/.nodebrew/node/v14.5.0/lib/node_modules/typescript/bin/tsserver
/Users/foolmacky/.nodebrew/node/v14.5.0/bin/tsc -> /Users/foolmacky/.nodebrew/node/v14.5.0/lib/node_modules/typescript/bin/tsc
/Users/foolmacky/.nodebrew/node/v14.5.0/bin/typescript-language-server -> /Users/foolmacky/.nodebrew/node/v14.5.0/lib/node_modules/typescript-language-server/lib/cli.js
+ typescript-language-server@0.4.0
+ typescript@3.9.6
added 19 packages from 11 contributors in 4.407s

vimrcに設定を入れる
https://blog.micheam.com/2019/05/21/vim-lsp-setting-for-typescript/

■rangerの設定にrust source fileをvimでopenする設定を入れる

.config/ranger/rifile.conf

# Define the "editor" for text files as first action
mime ^text,  label editor = ${VISUAL:-$EDITOR} -- "$@"
mime ^text,  label pager  = "$PAGER" -- "$@"
!mime ^text, label editor, ext xml|json|csv|tex|py|pl|rb|js|sh|php|rs = ${VISUAL:-$EDITOR} -- "$@"
!mime ^text, label pager,  ext xml|json|csv|tex|py|pl|rb|js|sh|php|rs = "$PAGER" -- "$@"

■rust関連

https://github.com/rust-lang/rls

Rustfmt fomatter

racer コード補完

rlsはracerをstaticに使っているので、直接racerをinstallする必要はない
https://github.com/racer-rust/racer
https://github.com/racer-rust/vim-racer
Racer is used as a static library in RLS ということなのでRLSで使われていると思う

rls

rustのsource codeをダウンロード
rustup component add rls rust-analysis rust-src
非同期でのソースチェックなどは、ソース配置がcargoコマンドで設定したプロジェクトになっていないと、動作しない
適当なディレクトリにsourceをかいてrustcでビルドできるが、その状態の場合、vimの構文チェックなどは、動作しない

RUSTI

debugging for rust
https://rustc-dev-guide.rust-lang.org/compiler-debugging.html

■ダウンロードしたプログラムなどを実行しようとすると、アラートダイアログが出て実行できない

  • すべてのプログラムの実行を許可するオプションは、「セキュリティーとプライバシー」設定に出ていないが、以下のコマンドを打つことで、設定できる
sudo spctl --master-disable

このコマンドを打つことで、オプションの選択肢が追加される

■Xcode Developer Tool

  • インストールにやたら時間がかかることがある。気長に放置すれば導入される。
  • Xcodeはinstallしたときのapple IDと紐付いてしまうため、導入後にmacのappleIDを変更すると、XCodeだけ以前のAppleIDにログインしないとUpdateできなくなったりする
    その際、画面上は「iTune Storeにログインしろ」というポップアップが出て、いくら現在の正しいAppleIDとパスワードを入力してログインしても、ポップアップは消えない。
  • そうなってしまったら、一旦XCodeは完全に削除して、インストールし直したほうが良い。そのためには以下のコマンドでディレクトリ・ファイルを削除する

■macOS Monterey UPDATE

  • 2021.12.5 updated.当初は最悪文鎮化する不具合があったようだが、apple側で対処が完了したので、導入した。時間的には30min程度
  • アップデート後、Google日本語入力が正常に起動せず、再度インストールする必要があった。nortonを含めて、それ以外のプログラムはまだ異常は遭遇していない。
  • すでにHigh Sierraのときから、rangerが正しく起動できな状態になっていたが、python3がそもそも導入パスが変わったのか起動できなくなった
  • Montereyからネットワークの応答性をチェックするコマンドが標準でインストールされる
> networkQuality
==== SUMMARY ====
Upload capacity: 76.907 Mbps
Download capacity: 78.544 Mbps
Upload flows: 16
Download flows: 12
Responsiveness: High (1616 RPM)

■その他

  • nortonのアップデートとかを実行すると、ネットワークが何故か不安定になる。再起動しないと解消されない
  • 他にも、特にnortonのアップデートが実施されたあとでvpnのプロセスがやたらCPUを食った状態になってファンが強烈に回ったりする。
  • アクティビティモニタでprocessをkillするか、macを再起動すれば状況は解消される

Clone this wiki locally