Переменная $PATH не правильно установила в gvim/MacVim, когда это открыто от средства поиска

Я использую MacVim (в основном gvim для Mac).

Если я открываю macvim из командной строки затем мой $PATH переменная будет правильно установлена.

Если я открываюсь, macvim через наводят и кликают со средством поиска, $PATH переменная НЕ будет правильно установлена.

Кто-либо может дать мне некоторое понимание?

Примечание: Я знаю, по крайней мере, что часть моего пути установлена в ~/.bashrc, но я не уверен, где остальная часть его установлена.


Примеры:

Если я открываю macvim от терминала:

% gvim basic.tex 

И затем в MacVim я иду:

:!echo $PATH
/opt/local/bin:/opt/local/sbin:/sw/bin:/sw/sbin:/Applications/MacVim.app/Contents/M
acOS:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/texbin:/usr/X11R6/bin 

Это - правильный путь.


Когда я открываю файл с мышью (в средстве поиска)

Когда я иду:

:!echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin  

Это дает мне немного пути. Почему?

17
задан sixtyfootersdude 27 July 2010 в 14:35
поделиться

2 ответа

Место для установки переменных среды на Mac для приложений с графическим интерфейсом пользователя (запускаемых через окно входа в систему, Finder и т. Д.) - это ~ / .MacOSX / environment.plist

В качестве альтернативы в MacVim вы можете выбрать запуск процессов vim в оболочке входа в систему (посмотрите в настройках).

Для получения дополнительной информации см. этот пост .

7
ответ дан 30 November 2019 в 11:59
поделиться

Разница в ПУТЬ, вероятно, как-то связана с различием между оболочкой входа в систему (вход в систему) и оболочкой без входа в систему (отображение консоли).

На странице руководства bash:

Когда bash вызывается как интерактивная оболочка входа в систему ... он ищет ~ / .bash_profile ...

Когда запускается интерактивная оболочка, которая не является оболочкой входа в систему, bash читает и выполняет команды из /etc/bash.bashrc и ~ / .bashrc ...

Чтобы обойти эту проблему, я добавил следующий код в мой ~ / .bash_profile , сообщая ему источник моего ~ / .bashrc , если он существует:

if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi
3
ответ дан 30 November 2019 в 11:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: