ВИЗУАЛЬНЫЙ по сравнению с Редактором – каково различие?

Они предлагают ту же основную функциональность: установите и удалите пакеты из командной строки.

Вот более подробное сравнение, размещенное на веб-сайте Exchange Стопки Ubuntu: https://askubuntu.com/questions/1743/is-aptitude-really-better-than-apt-get/1749#1749

190
01.01.2020, 03:55
5 ответов

EDITOR редактор должен смочь работать без использования "усовершенствованной" терминальной функциональности (как старый ed или ex режим vi). Это использовалось на терминалах телетайпа.

A VISUAL редактор мог быть полноэкранным редактором как vi или emacs.

Например, если Вы вызываете редактора через удар (использование C-x C-e), удар попробует сначала VISUAL редактор и затем, если VISUAL сбои (потому что терминал не поддерживает полноэкранного редактора), он пробует EDITOR.

В наше время можно уехать EDITOR сброс или набор это к vi -e.

151
27.01.2020, 19:28
  • 1
    Большая часть обработки приложений $VISUAL как отрывок оболочки, к которому они добавляют (заключенное в кавычки из оболочки) имя файла, но некоторая обработка это как название исполняемого файла, в котором они могут или не могут искать $PATH. Так лучше устанавливать VISUALEDITOR) к полному пути к исполняемому файлу (который мог быть сценарием обертки, если Вы хотите, например, опции). –  Gilles 'SO- stop being evil' 15.12.2010, 20:27
  • 2
    В современные времена, ed и подобный не очень популярны, таким образом, я полагаю, что нормально просто игнорировать VISUAL и используйте EDITOR. –  Pavel Šimerda 30.03.2014, 20:35
  • 3
    Спасибо за подсказку о C-x C-e в ударе.Очень удобно. –  mndrix 25.03.2015, 21:22
  • 4
    @PavelŠimerda, просто установив EDITOR недостаточно, например, для git на Ubuntu 12.04. Без VISUAL быть установленным git игнорирует EDITOR и просто использование nano (скомпилированный в значении по умолчанию, я предполагаю). –  maxschlepzig 25.04.2015, 13:24
  • 5
    @PavelŠimerda Это не имеет смысла, но это - конвенция. РЕДАКТОР раньше был для основанных на инструкции редакторов как ed. Когда редакторы с графический интерфейсами пользователя появились - и GUI, я имею в виду CLI GUI (энергия, emacs, etc. - думают ncurses), не настольная среда GUI - процесс редактирования, измененный существенно, таким образом, потребность в другой переменной возникла. В этом контексте CLI GUI и настольная среда редакторы GUI являются более или менее тем же, таким образом, можно установить ВИЗУАЛЬНЫЙ на также; однако, РЕДАКТОР предназначен для существенно другого рабочего процесса. Конечно, это является все историческим. Никто не использует редактора в эти дни. –  Zenexer 18.09.2016, 01:34

Отслеживание освобожденных блоков неизбежно в любой подходящей файловой системе, и ZFS не является исключением . Однако в ZFS существует простой способ почти мгновенного удаления каталога путем «отсрочки» базовой очистки. Технически он очень похож на предложение Жиля, но по своей сути надежен, не требуя дополнительного кода.

Если вы создадите снимок файловой системы перед удалением каталога, удаление каталога будет очень быстрым, потому что ничего не нужно будет исследовать/освобождать под ним, при этом на все еще будет ссылаться снимок. Затем можно уничтожить снимок в фоновом режиме, чтобы постепенно восстановить пространство.

d=yourPoolName/BackupRootDir/hostNameYourPc/somesubdir
zfs snapshot ${d}@quickdelete && { 
    rm -rf /${d}/certainFolder
    zfs destroy ${d}@quickdelete & 
}
-121--47672-

Введите : w! xsel -b для копирования визуального выбора. При нажатии клавиши : , когда визуальное выделение активно, вставляется диапазон, обозначающий визуальное выделение, в результате чего выполняется : '<,' > w! xsel -b .

При этом копируются все частично или полностью выбранные строки, т.е. строка, где начинается выбор, и строка, где заканчивается выбор, полностью включены, даже детали, которые не были выбраны. Я не знаю, как точно скопировать подборку.

Конечно, если Vim компилируется с помощью опции + буфер обмена , просто используйте "+ y .

Я искал способ сделать "+ использовать xsel , когда Vim не имеет поддержки буфера обмена , но я не получил полностью рабочего ответа, это кажется очень сложным.

-121--98987-

Поскольку, кажется, нет ни одной среды, в которой vi или подобное могло бы привести к сбою, я решил установить VISUAL на что-то, что нуждается в X DISPLAY, а EDITOR на ex.

В основном, это просто, кажется, вызывает у меня проблемы, когда какая-то программа не использует VISUAL.

0
27.01.2020, 19:28

Некоторые инструменты принимают только EDITOR, например встроенная оболочка fc :

-e ENAME  select which editor to use.  Default is FCEDIT, then EDITOR, then vi
2
27.01.2020, 19:28

Я пришел к выводу, что $ VISUAL является графическим, а $ EDITOR - это командная строка. Если не определено, все, что ищет $ VISUAL , должно , а затем попробовать $ EDITOR .

( Требуется ссылка: Я бы хотел получить соответствующую документацию, возможно, справочную страницу или спецификацию POSIX?)

На данный момент у меня есть такие вещи в моем ~ /.bashrc и ~ / .zshrc :

EDITOR="$(command -v vim)"

# we have gvim, not in an SSH term, and the X11 display number is under 10
if command -v gvim >/dev/null 2>&1 \
&& [ "$SSH_TTY$DISPLAY" = "${DISPLAY#*:[1-9][0-9]}" ]; then
  export VISUAL="$(command -v gvim) -f"
  SUDO_EDITOR="$VISUAL"
else
  SUDO_EDITOR="$EDITOR"
fi

gvim без -f не будет работать с программами, которые должны обработать ваши изменения. Это определенно включает sudoeditor ( sudo -e ).

Это может сломаться, если у вас есть пробел в пути к vim. Если это проблема, либо установите его должным образом, либо рассмотрите символические ссылки вроде / usr / local / bin / gvim

2
27.01.2020, 19:28

Принятый ответ, вероятно, является хорошим кратким описанием, но это будет попытка углубиться, когда различие между VISUAL и EDITOR все еще может иметь значение (основываясь на ответе Адама Каца ).

В спецификации POSIX по-прежнему проводится различие между редакторами визуального режима и линейными редакторами. Это действительно имело значение в те дни, когда позиционирование курсора по последовательным соединениям было трудным (особенно из-за скорости последовательного соединения). В статье Википедии о vi дается некоторая полезная информация о различиях между vi (редактором визуального режима) и ex (строковым редактором). Если вы углубитесь в исследование, вы найдете раздел «ОБОСНОВАНИЕ» в спецификации «ex» , в котором указывается причина того, что различие все еще присутствует в спецификации:

Оно признано что части vi было бы трудно, а то и невозможно удовлетворительно реализовать на терминале в блочном режиме или терминале без какой-либо формы адресации курсора, поэтому это не {{1 }} обязательное требование, чтобы такие функции работали на всех терминалах. Однако предполагается, что реализация vi должна обеспечивать полный набор возможностей на всех терминалах, способных поддерживать {{1 }} их.

Я не нуждался в этом с тех пор, как отказался от своего модема на 300 бод, но я могу представить, что люди, которые используют медленные последовательные линии для подключения к встроенным системам (и / или через очень рискованные соединения) , могут по-прежнему цените возможность иметь предпочтительный редактор строкового режима, отличный от «визуального» редактора, такого как vi.Коды терминалов в стиле VT100 через узкое, медленное соединение с потерями могут быть "раздутыми" в ограниченных приложениях.

Остальным из нас кажется, что «правильный» ответ - «сделайте их обоих предпочтительными редакторами». Было бы нормально использовать это различие для локального / графического редактора (например, Sublime или gvim) по сравнению с редактором окон терминала (например, vi или emacs), но, вероятно, существует множество устаревших причин, по которым это, вероятно, не будет работать так, как ожидалось. .

37
27.01.2020, 19:28

Теги

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