Обычный текстовый редактор — главный инструмент множества профессий. В частности, его используют программисты, веб-дизайнеры, журналисты, блогеры, которые чаще всего работают дистанционно по модели BYOD («принеси на работу собственное устройство»).

По идее, у пользователя Linux с выбором тестового редактора не должно возникнуть никаких трудностей, поскольку в репозитории любого дистрибутива таких программ очень много. С другой стороны, процедура выбора — настоящее проклятье для перфекциониста. Для того, чтобы протестировать все работающие в Linux текстовые редакторы и найти наиболее подходящий для решения своих задач, пользователю придётся потратить не один месяц. А если он хочет выбрать несколько подобных программ, то поиск не закончится никогда.

Возможно, именно поэтому даже достаточно опытные пользователи Linux зачастую устанавливают несколько текстовых редакторов. И запускают тот, который больше соответствует решаемой задаче, настроению или даже времени суток. Наверняка, подобный набор есть у каждого. Мой выглядит следующим образом.

vim

Один мой знакомый программист, набирая сотрудников в свой отдел, даёт им простое тестовое задание — найти ошибку в тексте небольшой программы и исправить её. Сам текст он открывает на своём ноутбуке в редакторе vim и смотрит, что будет делать соискатель. Причём, сама ошибка интересует его поскольку-постольку (она действительно очень простая и буквально бросается в глаза). Главное — умение эффективно работать в vim.

В-общем, vim — любимый редактор программистов. Или, по крайней мере, один из любимых — дискуссии «vim или emaсs» давно отнесены к «холиварам».

vim — классика Unix. Его прародитель — текстовый редактор vi — был написан ещё в конце 1970-х. Не исключено, что любовь к нему программистов вызвана тем, что именно этой программой пользовался их учитель, поэтому сперва пришлось его освоить, а потом понять, что искать что-то лучшее вряд ли имеет смысл.

Есть версии vim как для консольного, так и для графического режима. Во второй некоторые операции (например, открытие файла и его сохранение) можно выполнить интуитивно понятным способом — через кнопки и меню. Однако, даже самое простое использование этой программы невозможно без тщательного изучения документации.

Например, по умолчанию vim стартует в так называемом командном режиме, при котором нажатия клавиш воспринимаются как команды — копировать, удалить, переместить... Набирать или редактировать текст в этом режиме нельзя — для этого существует режим редактирования, переключиться в который можно по нажатию на «i» или «a». Причём, в первом случае текст будет вставляться на месте курсора, а во втором — непосредственно после курсора.

Также в vim доступен так называемый визуальный режим (в vi он отсутствует), при котором можно выделять блоки текста и применять к ним обычные команды — например, перемещения или замены. Блок в данном случае — это не набор строк, а просто прямоугольник. Это позволяет, в частности, не прибегая к функции поиска и замены, сократить все имена файлов, удалив из них название промежуточного каталога.

Для начинающего пользователя у vim есть всего один «недостаток» — чтобы работать с ним стало удобней, чем с обычным «блокнотом», следует потратить неделю-другую на его освоение и настройку «под себя». Если это по каким-либо причинам невозможно, то лучше сразу выбрать другой редактор.

SciTE

SciTE — текстовый редактор, также предназначенный в основном для редактирования кода. Его полностью русифицированная сборка есть только для Windows, поэтому пользователям десктопных Linux-систем придётся немного потрудиться, чтобы иметь возможность вводить кириллицу и видеть меню на русском языке.

SciTE обладает всеми функциями редактора кода — подсветкой синтаксиса, свёртыванием и развёртыванием блоков текста, автодополнением имён типов, функций и переменных, запуском компиляции, возможностью объединять несколько файлов в сессию... Для обработки открытых файлов редактор может вызывать внешние приложения.

Разумеется, это не означает, что для журналистов и блогеров SciTE совершенно бесполезен. У него есть одна очень привлекательная функция — экспорт файлов в форматы HTML, RTF, PDF, LaTeX и XML. Однако в некоторых случаях и тут может наблюдаться проблема с кодировками.

SciTE — очень перспективный редактор. Разумеется, он ещё нуждается в доработке, но есть смысл следить за этим проектом.

Geany

Geany — один из лучших графических редакторов для работы с текстами программ. Эта программа позиционируется создателями как легкая IDE (Integrated Development Environment), то есть интегрированная среда разработки программного обеспечения.

Своей популярностью редактор обязан множеству мелочей, способных существенно упростить работу по написанию кода. Например, текст новой программы можно создать из уже готового шаблона. Поддерживаются языки Си, Си++, PHP, Python, Ruby и т. д. Пара минут уже сэкономлена.

Все функции продвинутого текстового редактора в Geany присутствуют — развитые средства поиска и замены, включение и выключение динамического переноса строк, инверсия регистров, дублирование строки или выделения, подсветка синтаксиса многих языков программирования и многое другое. Если этого мало, то расширить функциональность можно при помощи плагинов — в частности, таким образом подключается модуль проверки орфографии, в том числе и «на лету».

Чрезвычайно полезный элемент интерфейса — нижняя панель, состоящая из пяти вкладок (статус, компилятор, сообщения, заметки и терминал). Кстати, встроенный терминал довольно широко используется журналистами и блогерами, когда необходимо вставить в текст команду и результат её выполнения.

FocusWriter

Концепция этого редактора такова — ничего не должно отвлекать человека от набора текста. Поэтому в штатном режиме все элементы интерфейса спрятаны. Более того, по умолчанию FocusWriter запускается в полноэкранном режиме и закрывает рабочий стол.

Но редактор не так прост, как это может показаться на первый взгляд. Во-первых, это даже не редактор, а текстовый процессор начального уровня с возможностью форматирования. Доступны полужирный шрифт и курсив, подчёркивание и зачёркивание, надстрочные и подстрочные индексы, а также выравнивание абзацев.

Во-вторых, поддерживается работа с документами формата ODT. То есть, для каких-то несложных задач FocusWriter может заменить LibreOffice.

В программе имеется встроенный таймер. Очень полезно для сотрудников, которые должны успеть выполнить работу к определённому сроку — можно настроить его так, что за несколько минут до «дедлайна» он подаст сигнал.

Интересная возможность — определение условий для обычной дневной задачи. Допустим, сотрудник решил, что должен уделять работе не больше шести часов в день. Программа будет отслеживать этот параметр и сообщать, какой процент от плана уже выполнен. Мелочь, а дисциплинирует.

Наконец, тему оформления можно настроить так, чтобы работать было приятно. Поддерживается даже размещение картинки на заднем плане. Все темы сохраняются, их можно менять в зависимости от освещения, настроения и прочих условий.

TEA Editor

Аргументы в пользу этого редактора — он действительно хороший и почти отечественный, поскольку написан киевлянином Петром Семилетовым. В лучших традициях свободного ПО программа разрабатывалась в первую очередь для себя, поэтому пользоваться им очень удобно, если разделяешь точку зрения автора на то, каким должен быть правильный текстовый редактор.

Одно из главных достоинств этого редактора — умение работать с любыми кодировками. Сейчас этот вопрос не так актуален, как раньше, но всё-таки иногда попадаются «проблемные» файлы.

В программу встроен календарь, поддерживающий заметки. Удобно для сотрудника, который постоянно должен ориентироваться на всевозможные планы, графики и «дедлайны».

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

В программу включены инструменты для вёрстки. Правда, на в формат DOC, а в HTML или LaTeX. Иными словами, редактор изначально ориентирован на не бумагу, а на онлайн. Что по нынешним временам вполне естественно.

Есть и забавные функции. В частности, TEA Editor может преобразовать русские и английские фразы в последовательность сигналов азбуки Морзе. Поэтому начинающему радисту программа тоже может пригодиться.

Gedit

Gedit — штатный текстовый редактор систем, основанных на рабочем столе GNOME. Программа не отягощена лишними функциями и проста в освоении. Из необязательных для текстового редактора возможностей имеется разве что подсветка синтаксиса и список поддерживаемых языков весьма велик.

При необходимости функциональность программы может быть расширена при помощи плагинов. Кстати, именно плагин отвечает за такую важную возможность, как просмотр статистики текста.

Для одновременной работы с несколькими текстами в Gedit есть боковая панель с двумя вкладками. Одна — для списка открытых документов, другая — для простого менеджера файлов.

На фоне других аналогичных программ с большими возможностями и оригинальными интерфейсами Gedit выглядит, прямо скажем, довольно бледно. Но именно за это его и любят пользователи, которым надо работать, а не разбираться в настройках.

Kate

Продвинутый редактор для рабочего стола KDE. Функционально он похож на Geany.

Kate полностью соответствует концепции KDE. Настроек очень много, и терпеливый пользователь может в результате получить именно такой редактор, какой ему нужно. Но наряду с этим конфигурация по умолчанию прекрасно подойдёт не особо требовательному человеку.

Kate поддерживает не только вкладки, но и разделение рабочего окна на несколько частей. Очень удобно для сотрудника, которому по каким-либо причинам нужно иметь перед глазами несколько текстов и вносить изменения во все одновременно.

Не забыты и поклонники старого доброго vim — в программе доступен специальный режим ввода, копирующий тот, что принят в культовом редакторе. Так что ретроградам даже не придётся расставаться со своими привычками.

Наконец, Kate — чуть ли не единственный редактор, где в строке состояния может отображаться количество символов текущего документа. Чрезвычайно полезная функция для технических писателей и так называемых копирайтеров, которым нужно не только написать внятный текст, но и уместить его в некоторые заранее определённые рамки.

KWrite

Младший брат Kate, который также входит в стандартную поставку рабочего стола KDE. У него поменьше возможностей и набор настроек не так богат.

Хотя имеется и подсветка синтаксиса, и режим ввода в стиле vi, и возможность экспорта в HTML. Даже поддерживаются закладки на фрагменты текста.

Если у пользователя нет каких-то специальных задач, то разницы между Kate и KWrite он может вообще не заметить. Не исключено, что выбор между этими программами делается исключительно ради самого выбора.