
私はメモを取るために org mode の emacs を使用しています。 org mode では、入力すると PDF にエクスポートできると読みましたC-c C-e lp
。 これを入力すると、*Org PDF LaTeX Output*
バッファに次のように表示されます。
/bin/bash: pdflatex: コマンドが見つかりません
$ pdflatex
しかし、ターミナルで実行すると、プログラムは実行されます。emacs は bash にログインしないため、$PATH
変数にアクセスできないのだと思います。
これを修正する方法をご存知ですか。よろしくお願いします。
答え1
Emacs PATH がログイン シェルの内容をコピーしない場合にも同じ問題が発生します。Emacs *scratch* バッファーでこれを実行します。
(getenv "PATH")
"/usr/bin:/bin:/usr/sbin:/sbin"
(または、 を押してM-x
と入力しgetenv
、 と入力しますPATH
。)
pdflatex
ターミナルのログインシェルでの場所を次のように検索しました:
> which pdflatex
/Library/TeX/texbin/pdflatex
そこで、そのディレクトリを PATH に追加しました。たとえば、次のように追加します.emacs
。
(setenv "PATH" (concat (getenv "PATH") ":/Library/TeX/texbin"))
そして再度M-x load-file
ソースを実行し、 と入力します~/.emacs
。これで、C-c C-e lp
Org-mode で動作します:
PDF file produced.
(クロスポストスタックオーバーロー。