Eshell - где находится каталог по умолчанию и путь? - PullRequest
1 голос
/ 07 ноября 2011

Два небольших вопроса относительно конфигурации Eshell.Я посмотрел на параметры настройки и даже исходный код, но безрезультатно.Может, мне стоило взглянуть получше.

  1. Когда я запускаю Emacs и открываю Eshell, каталог '~ / .emacs.d / elpa' вместо моего домашнего каталога '~ /', что я и ожидал.Я понятия не имею, откуда взялась эта конфигурация, и не нашел способа ее изменить.

  2. Я изменил $ PATH в своем .bashrc и настроил переменную Emacs 'exec-path' для своих нужд.Тем не менее, первое изменение не отражено в Eshell, он не знает об этом, в то время как bash знает.Как Eshell получает эту информацию и почему она отличается от bash своими знаниями об изменениях в этой переменной?

Спасибо за любые подсказки

Торстен

PS

Я нашел похожий вопрос [здесь] (/2686855/kakoi-ustanovochnyi-fail-chitaet-eshell-elisp-shell-pri-zapuske-kak-eshell-ustanavlivaet-svoi-put). Ответ на пункт 2. заключается в том, что eshell не читает .bashrc, поэтому $ PATH должен быть установлен в файле, который читается ранеепроцесс запуска. В моей системе Ubuntu

/etc/environment

кажется файлом, который Emacs читает при запуске, чтобы установить $ PATH.

1 Ответ

2 голосов
/ 07 ноября 2011

eshell запускается в текущем рабочем каталоге, который для вас (сразу после запуска Emacs) - "~ / .emacs.d / elpa". Вы можете изменить его вручную с помощью «M-x cd», но в этом нет необходимости. Если вы отредактируете какой-либо файл и запустите eshell из его буфера, eshell запустится в том же каталоге, что и файл.

Но если вы действительно хотите запускать каждый сеанс eshell в своем домашнем каталоге, вы можете сделать перехват вызова "cd" перед запуском eshell.

...