6.15. Назначение редактора по умолчанию

Проблема

Некоторые программы (например, crontab и quota) используют редактор по умолчанию. Чаще всего этим редактором оказывается какое-нибудь устаревшее или неудобное приложение, а вы стали поклонником Vim, JOE или другого современного текстового редактора. Как назначить в качестве редактора по умолчанию программу, которая вам нравится?

Решение

Для назначения редактора по умолчанию отредактируйте переменные окружения в файлах ~/.bashrc или ~/.bash_profile. Файл ~/.bashrc является предпочтительным, потому что он распространяется на все экземпляры командного процессора, открытые во время одного сеанса. Содержимое файла ~/.bash_profile читается только при входе в систему.

Включите в ~/.bashrc следующие строки:

EDITOR=vim
VISUAL=$EDITOR
export EDITOR VISUAL

Разумеется, вы можете задать любой редактор по своему выбору. Обычно рекомендуется использовать консольные текстовые редакторы вроде JOE, Pico, Vim или Emacs. Также можно выбрать редактор для X-систем, например Kwrite или GEdit. Однако имейте в виду, что в некоторых ситуациях система X может быть недоступна, поэтому выбор графического редактора подходит не всегда. Консольные редакторы более универсальны и надежны в критических ситуациях.

Важно использовать обе переменные — VISUAL и EDITOR. Переменная VISUAL является пережитком более ранних версий Unix, но по-прежнему поддерживается многими программами. Использование обеих переменных обеспечивает совместимость с различными утилитами и сценариями, которые могут обращаться к любой из них.

Кроме того, убедитесь, что файл ~/.bashrc включён в ~/.bash_profile, чтобы все изменения были активны при входе в систему:

# include .bashrc if it exists
if [ -f ~/.bashrc ]; then
    source ~/.bashrc
fi

Эта команда проверяет наличие файла ~/.bashrc и, если он существует, выполняет его содержимое. Это гарантирует, что переменные окружения, такие как EDITOR и VISUAL, будут загружены при каждом входе в систему, независимо от того, как вы запускаете терминал.

См. также

bash(1).