計算物理屋の研究備忘録

Linux, Cygwin, Mac, zsh, emacs等の使い方、設定などのメモ

シェルのPATHをEmacsに引き継がせる

UbuntuのランチャーからGUIEmacsを起動すると、シェルのPATHが引き継がれない。(ターミナルから起動するとちゃんと引き継ぐ)。過去にpyenvを使って入れたPythonでjediを設定するときにこの問題に出くわした。シェルのPATHが引き継がれないと、Emacs上では自分でいれたPythonではなく、システムの/usr/bin/pythonなどを見にいってしまう。

簡単にシェルのPATHを引き継ぐ方法があった。

参考のサイトはここ

qiita.com

上のリンク先に書いてあるようにすればいい。

  1. package.elを使ってMELPAなどからexec-path-from-shellをインストー
  2. init.elなどに(exec-path-from-shell-initialize)と書いておく

これで普段使ってるシェルのPATHを引き継ぐことができる。簡単。

——— 2017/06/21 追記 ———-
Macでも同じことをしようとしたらうまくいかなかった。Macではitermの設定でzshを使っていて、ログインシェル自体はbashのままだった。exec-path-from-shellでは、デフォルトのログインシェルのPATHなどを引き継ぐらしい。

参考サイト kiririmode.hatenablog.jp

Macのログインシェルをzshに変更する。GUIから変更可能

システム環境設定 –> ユーザとグループ –> 左下の鍵を外す –> ユーザを右クリック –> 詳細オプション

——— 追記終了 ———-