Mam problem z trybem terminalu Emacsa. Jestem użytkownikiem Maca i używam Emacsa pobranego ze strony emacsformacosx.com; zainstalowałem także ESS i AucTex.
Pracuję z R, LaTex, Sweve i, zarządzam wszystkimi z Emacsem. Kiedy chcę skompilować plik Sweave, otwieram terminal i używam „R CMD Sweave myfile.Rnwmsgstr "polecenie wygenerowania pliku myfile.tex. Po tym używam"pdflatex myfile.tex", aby skompilować plik LaTex.
Wszystkie te polecenia działają dobrze, jeśli są używane w terminalowej aplikacji systemu osx, ale polecenie pdflatex nie działa, jeśli korzystam z trybu tymczasowego Emacsa:
bash: pdflatex: nie znaleziono polecenia
Czy masz jakieś propozycje?
EDYTOWAĆ Dzięki za sugestię, rozwiązałem problem, dodając do .emacs to:
(defun set-exec-path-from-shell-PATH ()
(let ((path-from-shell
(replace-regexp-in-string "[[:space:]n]*$" ""
(shell-command-to-string "$SHELL -l -c "echo $PATH""))))
(setenv "PATH" path-from-shell)
(setq exec-path (split-string path-from-shell path-separator))))
(when (equal system-type "darwin) (set-exec-path-from-shell-PATH))
Znalazłem to w tekst linku
Najlepsza Riccardo
Odpowiedzi:
1 dla odpowiedzi № 1W OS X zmienne środowiskowe dla programów GUI są ustawione w ~/.MacOSX/environment.plist
. Istnieje wiele specyficznych dla Emacsa obejść, takich jak używanie (setenv "PATH" (shell-command-to-string "echo -n $PATH"))
które można znaleźć rozrzucone po Stack Overflow i ogólnie w Internecie.