Для тщательности и пользы искателей, вот то, что они делают... Это - общественная Wiki, поэтому не стесняйтесь добавлять эквиваленты другой оболочки (очевидно, $BASH_SOURCE будет отличаться).
test.sh:
#! /bin/sh
called=$_
echo $called
echo $_
echo $0
echo $BASH_SOURCE
test2.sh:
#! /bin/sh
source ./test.sh
$./test2.sh
./test2.sh
./test2.sh
./test2.sh
./test.sh
$ sh ./test2.sh
/bin/sh
/bin/sh
./test2.sh
./test.sh
$./test2.sh
./test2.sh
./test2.sh
./test2.sh
$/bin/sh ./test2.sh
/bin/sh
/bin/sh
./test2.sh
$
$ ./test2.sh
./test.sh
./test.sh
./test.sh
$ zsh test.sh
echo
test.sh
$
Раньше было больше ограничений, но начиная с GNU Emacs 23, интерфейс текстового режима может сделать большую часть того, что может сделать графический интерфейс. Кроме того, начиная с GNU Emacs 23 можно объединить X кадров и кадры текстового режима в том же экземпляре Emacs.
Выполнение в пределах терминала, которые могут распознать входные сочетания клавиш Emacs, потому что эмулятор терминала часто не передает отличные escape-последовательности для всех сочетаний клавиш. Большинство эмуляторов терминала не поддерживает все комбинации модификаторов с символами ASCII (вещи как C-S-a
или C-;
или модификаторы кроме Ctrl
, Shift
и Meta
/Alt
). Вы не можете различать tab
от C-i
или backspace
от DEL
(или C-h
в зависимости от установки эмулятора терминала). Существует предложенный стандарт для кодирования escape-последовательностей систематическим способом, но много популярных терминалов не поддерживают его.
В терминале Вы становитесь полужирными, возможно, курсив и подчеркивание и однако много цветов терминальные поддержки. Под X, Emacs может использовать несколько шрифтов и изображений на дисплее. Полезно ли это или не является главным образом персональным предпочтением. Не пробивайте его, пока Вы не попробовали ЛАТЕКСНУЮ блокировку шрифта (в AUCTeX) и рендеринг математических символов и схем через x-символ (я попробовал и не любил его). Если Вы используете Emacs в качестве браузера, поддержка изображения плюс (или не).
В терминале Вы ограничены поддержкой терминала кодировки (но наиболее, по крайней мере, поддерживайте основные функции Unicode в наше время). Эти X интерфейсов позволяют Emacs выбрать свои собственные шрифты и смешать их в наборах шрифтов; это полезно при редактировании многоязычных документов, которые не покрыты единственным шрифтом. У меня нет достаточного опыта с нелатинскими языками, чтобы сказать, лучше ли Emacs, чем Ваш типичный эмулятор терминала в преодолении “трудных” языков (комбинированные символы, двойная ширина, слева направо (который Emacs 23 не поддерживает так или иначе, Emacs 24 должен)).
В графическом интерфейсе существует очевидно поддержка мыши. В текстовом интерфейсе можно включить поддержку мыши при выполнении в эмуляторе терминала под X с xterm-mouse-mode
. Можно получить X поддержки буфера обмена также. Версия GUI имеет несколько дополнительных функций как подсказки, предотвращение мыши и активированные мышью контекстные меню.
Можно использовать строку меню с любым интерфейсом. X версий могут поднять значки во главе кадра (панель инструментов), не, что я когда-либо видел любое использование для них. Вы также не получаете диалоговые окна или полосы прокрутки в текстовых режимах. Вы не получаете удобство нескольких-кадров, такое как панели кнопок быстрого доступа или ediff кадр управления.
Одним словом: Нет.
GUI является просто слоем удобства меню и таким образом, которые позволяют Вам видеть некоторые инструменты, которые Вы имеете в Вашем распоряжении сразу и щелчок для активации, но это - просто альтернативный интерфейс к той же программе. Единственными вещами, которые можно было считать дополнительными "функциями", является интеграция со средой. Скопировать/вставить, перетащите файлы к окну для открытия, подобные вещи.
То же идет для vim
по сравнению с gvim
. Программа является тем же, окно является необычной оберткой на той же лошадиной силе.