Я на Mac OS X, но я думаю, что то же самое для других Unix.

Каждый раз, когда я набираю vi на терминале, я хочу открыть версию Vim с графическим интерфейсом (в Mac OS это называется mvim).

Для моего пользователя это работает, добавив псевдоним в мой ~/.profile:

alias vi='mvim'

Но когда мне нужно sudo vi , он открывает vi терминала, потому что у него нет установленного псевдонима.

Я попытался установить псевдоним для пользователя root в /etc/profile но он не работал. Я также попытался сделать /usr/bin/vi символической ссылкой на mvim , но это тоже не сработало.

Как я могу сделать так, чтобы каждый пользователь, включая root, набирал в Терминале vi , он открывает окно Vim?

1 ответ1

1

/etc/profile не оценивается, когда вы запускаете sudo ... насколько я знаю, и проблема с символической ссылкой заключается в mvim ; если вы посмотрите на это, у него есть эти строки:

# GUI mode, implies forking
case "$name" in m*|g*|rm*|rg*) gui=true ;; esac

Поскольку вы запустили его с помощью sudo vi имя не соответствует критериям запуска в режиме графического интерфейса.

Вы можете просто заменить эти две строки на gui = true чтобы "принудительно" включить режим графического интерфейса, но я не уверен, что еще это может сломать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .