Самый простой способ сделать это - создать небольшой сценарий оболочки и поместить его в него ~/bin
, и установить переменную EDITOR так, чтобы он указывал на него:
#!/bin/bash if [ -z "$DISPLAY" ] then vim "$@" else gvim "$@" fi
При подключении к машине удаленно, используя ssh
, без -X
, я хотел бы, чтобы less
«с vи hg commit
открыть vim
. Я знаю, что могу сделать это с export EDITOR=vim
. Тем не менее, если я войти в систему локально или через ssh
с -X
, я хотел бы GVIM открыть в этих случаях. Можно ли это сделать, вызвав export EDITOR=gvim
правильный файл инициализации? Если да, то какой и как он работает?
Самый простой способ сделать это - создать небольшой сценарий оболочки и поместить его в него ~/bin
, и установить переменную EDITOR так, чтобы он указывал на него:
#!/bin/bash if [ -z "$DISPLAY" ] then vim "$@" else gvim "$@" fi
Обычно вы хотите установить свой редактор в своем локальном профиле (например, ~/.bash_profile
для bash, ~/.zprofile
для zsh или общего ~/.profile
). Этот файл выполняется каждый раз, когда вы входите в систему.
Простой способ переключения между графическим и неграфическим редактором - проверить, установлена ли DISPLAY
переменная среды при экспорте EDITOR
среды:
export EDITOR="$(if [[ -n "$DISPLAY" ]]; then echo 'gvim'; else echo 'vim'; fi)"
(Источник: https://wiki.archlinux.org/index.php/environment_variables#Examples )