В каждой системе UNIX доступно несколько текстовых редакторов. Их можно использовать для ввода и коррекции документов, командных файлов, программ и записей данных. Стандартным для большинства систем UNIX и самым старым является редактор ed. Он представляет собой строковый редактор. Еще один строковый редактор ex является почти копией редактора ed, но о нем стоит упомянуть, поскольку он является частью более мощного редактора vi. Для работы с редактором vi требуется знание некоторых команд ex.
В UNIX имеются также ограниченные учебные версии редакторов под названием red, edit, view и vedit. Кроме того, UNIX часто поставляется с программой форматирования текста troff, написанной Джозефом Осанной (Joseph Osanna), или одним из ее вариантов. Более развитый вариант этой программы nroff – это программируемые форматировщики, преобразующие текстовые файлы в формат, пригодный для печати.
Самым современным из редакторов является emacs, первоначаотно разработанный Ричардом Сталлманом (Richard Stallman) и перенесенный в UNIX Джеймсом Гослингом (James Gosling). Этот экранный редактор не имеет режимов, так как команды вводятся комбинациями Control+клавиша. У него очень много встроенных возможностей.
Наконец, нужно сказать несколько слов и о редакторе sed. У этого редактора нет интерактивного режима, но он очень удобен при внесении повторяющихся изменений во многие файлы. Все остальные редакторы являются интерактивными: вы открываете файл, изменяете текст и сохраняете файл. В редакторе sed вы вводите список команд для изменения текста и список файлов, в которых производятся изменения. После этого sed выполняет операции без вашего участия, вставляя изменения в файлы.
Имеются два важных отличия редакторов друг от друга.
1. Редакторы, которые не показывают текст, называются строковыми редакторами. Редакторы, которые показывают полный экран текста, так что все операции редактирования видны, называются экранными редакторами.
2. Редакторы, которые не позволяют применять команды в процессе ввода нового текста, имеют два режима работы: режим вставки и командный режим. В зависимости от того, что вы хотите делать, приходится переключаться из одного режима в другой. Большинство современных текстовых процессоров позволяют вводить команды и текст без переключения режимов.
Эти два различия проявляются только при изменении текста в ранее сохраненных текстовых файлах. В процессе ввода нового текста текстовые редакторы выглядят почти одинаково.
Строковые редакторы не показывают измененный текст без ввода команды вывода на экран. Такие редакторы одновременно работают только с одной строкой текста, чем и объясняется название «строковый редактор». Так как редактор не показывает строку текста, в процессе редактирования невозможно перемещать курсор взад и вперед. Кроме того, отсутствует команда удаления слова, поскольку редактор работает только с целой строкой.
Экранные редакторы всегда показывают содержимое файла. При изменении слова оно сразу же видно.