RubyMineのターミナル(zsh)を立ち上げた時のエラーの回避


RubyMineを「2016.3」にあげた頃からか明確な時期は不明だが、Terminalを立ち上げた時にzshのエラーが出るようになってしまったことへの対処。Mac限定。

まとめ

  • /Applications/RubyMine.app/Contents/plugins/terminal/ 内に .zshenv へのシンボリックリンクを作成する。

原因

どうもRubyMine内のTerminalでzshを立ち上げると $ZDOTDIR に /Applications/RubyMine.app/Contents/plugins/terminal/ が設定される模様。 echo $ZDOTDIR してみるとわかる。

このディレクトリ内に .zshenv がないため、必要な環境変数が読み込めなかった模様。
.zshrc も読み込めないはずだが、こちらはデフォルトのファイルが置いてあって、$HOME以下のファイルを読み込んでいた気がする(もう消してしまったので分からず..)。

対応

  • $HOME/.zsh/.zshenv を読み込んでもらえればOKなので /Applications/RubyMine.app/Contents/plugins/terminal/ にこのファイルへのシンボリックリンクを張った。
  • .zshrc も確実に同じファイルを読み込んで欲しかったので .zshenv の中で $ZDOTDIR を $HOME/.zsh で上書きすることにした。
  • (要確認)Preference > Tools > Terminal の Shell Path にはオプションも渡せる模様。ここに何かしらセットすればこんな面倒なことしなくてもいいかも。