Журнал LinuxFormat - перейти на главную

LXF70:Сравнение

Материал из Linuxformat
(Различия между версиями)
Перейти к: навигация, поиск
(gedit)
(GNU Emacs)
 
(не показаны 9 промежуточных версий 2 участников)
Строка 1: Строка 1:
 
__TOC__
 
__TOC__
 +
 +
= Сравнение: Текстовые редакторы =
 
'' '''Том Вилкинсон''' ('''Tom Wilkinson''') решил проверить широко распространённую в LXF теорию о том, что в наше время невозможно найти приличный текстовый редактор.''
 
'' '''Том Вилкинсон''' ('''Tom Wilkinson''') решил проверить широко распространённую в LXF теорию о том, что в наше время невозможно найти приличный текстовый редактор.''
  
Строка 5: Строка 7:
  
 
В этом месяце мы протестировали 8 самых популярных редакторов. Многие из них предлагают на выбор как текстовый, так и графический интерфейсы пользователя и предоставляют разнообразные функции, самыми ценными из которых являются проверка орфографии, подсветка синтаксиса и автоматические отступы.
 
В этом месяце мы протестировали 8 самых популярных редакторов. Многие из них предлагают на выбор как текстовый, так и графический интерфейсы пользователя и предоставляют разнообразные функции, самыми ценными из которых являются проверка орфографии, подсветка синтаксиса и автоматические отступы.
 +
{{Врезка|
 +
Заголовок=Редактирование без редактора|
 +
Содержание=Конечно, текстовые файлы можно редактировать вообще без использования текстовых редакторов. любая утилита командной строки, обрабатывающая текстовую информацию, может выступать в роли такого редактора, включая cat (обычно он используется для передачи содержимого файла другой программе) и dd (предназначен для создания и копирования снимков диска). С помощью таких утилит, как sed и grep, используемых в комбинации с вышеперечисленными, можно сделать практически всё, что угодно. Хотя вы вряд ли будете использовать этот метод слишком часто, он может оказаться бесценным в случае разрушения файловой системы.
 +
 +
Если у вас действительно много времени, вы можете написать свою собственную программу редактирования текста с помощью любого языка программирования. Но, вероятно, всё же быстрее будет использовать что-нибудь готовое.|
 +
Ширина=300px
 +
}}
  
 
Текстовые редакторы отличаются от текстовых процессоров своим предназначением, хотя их функциональность и инструменты часто пересекаются. Текстовые процессоры нужны, в первую очередь, для создания и форматирования текстовых документов. Редакторы же должны суметь прочитать и изменить произвольный текстовый файл, поэтому их функции сосредоточены вокруг
 
Текстовые редакторы отличаются от текстовых процессоров своим предназначением, хотя их функциональность и инструменты часто пересекаются. Текстовые процессоры нужны, в первую очередь, для создания и форматирования текстовых документов. Редакторы же должны суметь прочитать и изменить произвольный текстовый файл, поэтому их функции сосредоточены вокруг
 
манипуляций с текстом. Форматирование и окончательный вывод остаются при этом на совести web-браузеров, компилятора LateX или других приложений, преобразующих сырой текст в законченный документ.
 
манипуляций с текстом. Форматирование и окончательный вывод остаются при этом на совести web-браузеров, компилятора LateX или других приложений, преобразующих сырой текст в законченный документ.
  
Многие текстовые редакторы предоставляют функции, особенно полезные для программистов. Подсветка синтаксиса и автоматические отступы это, пожалуй, самые важные из инструментов такого рода. Они позволяют с одного взгляда понять, что введённый код в общих чертах корректен, что все блоки правильно вложены друг в друга и не содержат очевидных ошибок.
+
Многие текстовые редакторы предоставляют функции, особенно полезные для программистов. Подсветка синтаксиса и автоматические отступы это, пожалуй, самые важные из инструментов такого рода. Они позволяют с одного взгляда понять, что введённый код в общих чертах корректен, что все блоки правильно вложены друг в друга и не содержат очевидных ошибок.
  
 
Подсветка синтаксиса ярко выделяет ключевые слова, а также показывает различными цветами имена переменных и данные. Кроме того, цветами могут выделяться переменные разных типов или вызовы функций. автоматические отступы помогают увидеть каждый блок кода по отдельности, вложенные блоки отодвигаются дальше, что существенно упрощает чтение. Конечно, это может быть полезно только в том случае, если вы согласны с тем, каким способом расставляет отступы программа, так как стилей форматирования кода существует столько же, сколько и
 
Подсветка синтаксиса ярко выделяет ключевые слова, а также показывает различными цветами имена переменных и данные. Кроме того, цветами могут выделяться переменные разных типов или вызовы функций. автоматические отступы помогают увидеть каждый блок кода по отдельности, вложенные блоки отодвигаются дальше, что существенно упрощает чтение. Конечно, это может быть полезно только в том случае, если вы согласны с тем, каким способом расставляет отступы программа, так как стилей форматирования кода существует столько же, сколько и
 
программистов. Хороший редактор позволит вам выбрать ваш собственный стиль.
 
программистов. Хороший редактор позволит вам выбрать ваш собственный стиль.
  
Еще одно важное обстоятельство способность редактора работать в текстовой консоли. В случае возникновения серьёзных проблем с системой графическая оболочка может оказаться недоступна. В этой ситуации редактор, способный запускаться в текстовом режиме, будет просто необходим.
+
Еще одно важное обстоятельство способность редактора работать в текстовой консоли. В случае возникновения серьёзных проблем с системой графическая оболочка может оказаться недоступна. В этой ситуации редактор, способный запускаться в текстовом режиме, будет просто необходим.
  
 
В конце мы посмотрим, насколько трудно изучить тот или иной редактор. Самые простые из них легки в освоении, но потом ими будет тяжело пользоваться, кроме как для самых простых вещей. Более сложные редакторы могут запросто выполнять самые нетривиальные преобразования, но при этом отпугивать новичков сложностью и неинтуитивностью интерфейса. Если вы не можете воспользоваться редактором на практике, то не имеет значения, насколько он хорош в теории.
 
В конце мы посмотрим, насколько трудно изучить тот или иной редактор. Самые простые из них легки в освоении, но потом ими будет тяжело пользоваться, кроме как для самых простых вещей. Более сложные редакторы могут запросто выполнять самые нетривиальные преобразования, но при этом отпугивать новичков сложностью и неинтуитивностью интерфейса. Если вы не можете воспользоваться редактором на практике, то не имеет значения, насколько он хорош в теории.
  
===Участники сравнения===
+
=== Участники сравнения ===
* CoolEdit
+
* [[#CoolEdit | CoolEdit]]
* gedit
+
* [[#gedit | gedit]]
* GNU Emacs
+
* [[#GNU Emacs | GNU Emacs]]
* Kate
+
* [[#Kate | Kate]]
* nano
+
* [[#nano | nano]]
* NEdit
+
* [[#NEdit | NEdit]]
* Minimum Profit
+
* [[#Minimum Profit | Minimum Profit]]
* Vim
+
* [[#Vim | Vim]]
  
===nano===
+
=== nano ===
 
Редактор командной строки, включенный во многие дистрибутивы
 
Редактор командной строки, включенный во многие дистрибутивы
* Версия: 1.2.4  
+
* Версия: 1.2.4
 
* Web: [http://www.nano-editor.org www.nano-editor.org]
 
* Web: [http://www.nano-editor.org www.nano-editor.org]
 
* Цена: бесплатно, по лицензии GPL
 
* Цена: бесплатно, по лицензии GPL
Строка 36: Строка 45:
 
Текстовый редактор nano, выпущенный Фондом свободного программного обеспечения, позиционируется как свободная замена популярному редактору Pico, разработанному в университете Вашингтона. Его интерфейс будет знаком любому работавшему с текстовым клиентом электронной почты Pine, который основан на Pico. Хотя исходный код Pico общедоступен, он не считается open-source редактором, поскольку любой, кто захочет разработать на основе Pico свою программу, должен сначала спросить разрешения у университета Вашингтона. Конечно, это менее свободная лицензия, чем GPL, поэтому под влиянием разработчиков таких дистрибутивов, как Debian, и был создан nano.
 
Текстовый редактор nano, выпущенный Фондом свободного программного обеспечения, позиционируется как свободная замена популярному редактору Pico, разработанному в университете Вашингтона. Его интерфейс будет знаком любому работавшему с текстовым клиентом электронной почты Pine, который основан на Pico. Хотя исходный код Pico общедоступен, он не считается open-source редактором, поскольку любой, кто захочет разработать на основе Pico свою программу, должен сначала спросить разрешения у университета Вашингтона. Конечно, это менее свободная лицензия, чем GPL, поэтому под влиянием разработчиков таких дистрибутивов, как Debian, и был создан nano.
  
Nano один из самых простых текстовых редакторов. у него нет поддержки таких полезных для программистов функций, как поиск парных скобок или подсветка синтаксиса. Но, будучи редактором простого текста, он прекрасно справляется со своей задачей. Основные клавиатурные команды, выполняющие базовые действия, перечислены в нижней части экрана, и этого более чем достаточно для редактирования конфигурационного файла без путаницы в режимах или в миллионах команд меню. Эта программа предназначена для конкретной аудитории и точно соответствует ей. Её пользователи новички, которые еще не готовы к схватке с Vi или emacs, но при этом хотят редактировать файлы в текстовой консоли.
+
Nano один из самых простых текстовых редакторов. У него нет поддержки таких полезных для программистов функций, как поиск парных скобок или подсветка синтаксиса. Но, будучи редактором простого текста, он прекрасно справляется со своей задачей. Основные клавиатурные команды, выполняющие базовые действия, перечислены в нижней части экрана, и этого более чем достаточно для редактирования конфигурационного файла без путаницы в режимах или в миллионах команд меню. Эта программа предназначена для конкретной аудитории и точно соответствует ей. Её пользователи новички, которые еще не готовы к схватке с Vi или emacs, но при этом хотят редактировать файлы в текстовой консоли.
  
 
Несмотря на то, что в nano нет большинства функций других текстовых редакторов, он всё же содержит проверку орфографии. К сожалению, добавить своё слово в словарь невозможно. Но упрощенная проверка орфографии всё же лучше, чем ничего.
 
Несмотря на то, что в nano нет большинства функций других текстовых редакторов, он всё же содержит проверку орфографии. К сожалению, добавить своё слово в словарь невозможно. Но упрощенная проверка орфографии всё же лучше, чем ничего.
Строка 48: Строка 57:
  
 
Простой, но малофункциональный nano не слишком привлекателен.
 
Простой, но малофункциональный nano не слишком привлекателен.
* Рейтинг - 5/10
+
* Рейтинг 5/10
  
===Kate===
+
=== Kate ===
 
Редактор с возможностью управления проектами
 
Редактор с возможностью управления проектами
  
Строка 57: Строка 66:
 
* Цена: Бесплатно, по лицензии GPL
 
* Цена: Бесплатно, по лицензии GPL
  
Kate это один из двух редакторов, интегрированных в рабочий стол KDE. Второй, KWrite, содержит минимальный набор функций работы с текстом. Kate гораздо более богатый инструмент, предназначенный скорее для программистов, чем для обычных пользователей, а поддержка подключаемых модулей позволяет расширять его функциональность до бесконечности.
+
Kate это один из двух редакторов, интегрированных в рабочий стол KDE. Второй, KWrite, содержит минимальный набор функций работы с текстом. Kate гораздо более богатый инструмент, предназначенный скорее для программистов, чем для обычных пользователей, а поддержка подключаемых модулей позволяет расширять его функциональность до бесконечности.
  
 
Являясь частью KDE, Kate может работать только в графическом режиме. Это позволяет разработчикам сосредоточиться на его преимуществах и получить цельный редактор с набором функций, способным удовлетворить самого взыскательного пользователя, но при этом достаточно доступный, чтобы не пугать новичков.
 
Являясь частью KDE, Kate может работать только в графическом режиме. Это позволяет разработчикам сосредоточиться на его преимуществах и получить цельный редактор с набором функций, способным удовлетворить самого взыскательного пользователя, но при этом достаточно доступный, чтобы не пугать новичков.
  
Как и большинство текстовых редакторов для программистов, Kate позволяет использовать регулярные выражения при поиске, а также предоставляет стандартную пару функций подсветку синтаксиса и автоматические отступы. Из нестандартных возможностей нужно упомянуть свёртку кода. Она позволяет спрятать код функции в программе, оставив на виду только её первую строку. При необходимости можно снова отобразить всю функцию целиком. Это новое и очень полезное при кодировании достижение, так как оно позволяет программисту наблюдать всю картину, но при этом детально рассматривать любую подробность, привлекшую внимание.
+
Как и большинство текстовых редакторов для программистов, Kate позволяет использовать регулярные выражения при поиске, а также предоставляет стандартную пару функций подсветку синтаксиса и автоматические отступы. Из нестандартных возможностей нужно упомянуть свёртку кода. Она позволяет спрятать код функции в программе, оставив на виду только её первую строку. При необходимости можно снова отобразить всю функцию целиком. Это новое и очень полезное при кодировании достижение, так как оно позволяет программисту наблюдать всю картину, но при этом детально рассматривать любую подробность, привлекшую внимание.
  
 
Кроме инструментов для разработчиков, Kate содержит еще и функции управления проектами. Можно создать проект как набор файлов, и его открытие приведёт к открытию каждого из входящих в него фалов в отдельной вкладке. Это позволяет редактировать множество взаимосвязанных файлов одновременно, например заголовочный файл, файл с исходным кодом на C и Makefile. Если вы работаете с более крупными проектами, например с целыми приложениями, эта возможность Kate будет для вас особенно полезна.
 
Кроме инструментов для разработчиков, Kate содержит еще и функции управления проектами. Можно создать проект как набор файлов, и его открытие приведёт к открытию каждого из входящих в него фалов в отдельной вкладке. Это позволяет редактировать множество взаимосвязанных файлов одновременно, например заголовочный файл, файл с исходным кодом на C и Makefile. Если вы работаете с более крупными проектами, например с целыми приложениями, эта возможность Kate будет для вас особенно полезна.
Строка 72: Строка 81:
  
 
Функции управления проектами закладывают для Kate серьезный фундамент. В целом, это полезная программа, но она не умеет работать в текстовой консоли.
 
Функции управления проектами закладывают для Kate серьезный фундамент. В целом, это полезная программа, но она не умеет работать в текстовой консоли.
* Рейтинг - 7/10
+
* Рейтинг 7/10
  
===NEdit===
+
=== NEdit ===
 
Основанный на Motif редактор, имеющий множество плюсов
 
Основанный на Motif редактор, имеющий множество плюсов
  
Строка 85: Строка 94:
 
Несмотря на эти проблемы, разработчики NEdit продолжали добавлять новшества в свой редактор и сделали его вполне современным. Последние версии включают такие возможности, как вкладки (позволяющие открыть сразу несколько файлов), и поддержку UTF, обеспечивающую ввод в документ символов любого языка.
 
Несмотря на эти проблемы, разработчики NEdit продолжали добавлять новшества в свой редактор и сделали его вполне современным. Последние версии включают такие возможности, как вкладки (позволяющие открыть сразу несколько файлов), и поддержку UTF, обеспечивающую ввод в документ символов любого языка.
  
NEdit редактор голубых кровей. Он потрясающе прост в использовании для новичков и при этом имеет огромное количество инструментов для опытных пользователей. Сюда входят подсветка синтаксиса более чем для 30 языков программирования, автоматические отступы и гибкие настройки сворачивания слишком длинных строк. Еще одной удобной функцией является отображение номеров строк, которое позволяет сразу же видеть, где в файле расставлены символы перевода строки, а также сильно помогает при отладке.
+
NEdit редактор голубых кровей. Он потрясающе прост в использовании для новичков и при этом имеет огромное количество инструментов для опытных пользователей. Сюда входят подсветка синтаксиса более чем для 30 языков программирования, автоматические отступы и гибкие настройки сворачивания слишком длинных строк. Еще одной удобной функцией является отображение номеров строк, которое позволяет сразу же видеть, где в файле расставлены символы перевода строки, а также сильно помогает при отладке.
  
 
Этот редактор может использовать для обработки текста любую команду оболочки, причём сохранять для этого файл вовсе не обязательно. Некоторые пункты меню применяют этот метод для проверки орфографии (с помощью ispell), подсчёта слов (wc), и даже для сборки программы (make), а это значит что ваш код может быть откомпилирован и запущен прямо из текстового
 
Этот редактор может использовать для обработки текста любую команду оболочки, причём сохранять для этого файл вовсе не обязательно. Некоторые пункты меню применяют этот метод для проверки орфографии (с помощью ispell), подсчёта слов (wc), и даже для сборки программы (make), а это значит что ваш код может быть откомпилирован и запущен прямо из текстового
Строка 97: Строка 106:
  
 
Прекрасный редактор, сочетающий серьёзные возможности с простотой использования. Сложности при сборке являются его слабостью.
 
Прекрасный редактор, сочетающий серьёзные возможности с простотой использования. Сложности при сборке являются его слабостью.
* Рейтинг - 8/10
+
* Рейтинг 8/10
  
===Vim===
+
=== Vim ===
 
Разнорежимный, но мощный и почти вездесущий
 
Разнорежимный, но мощный и почти вездесущий
 
* версия: 3
 
* версия: 3
Строка 110: Строка 119:
 
программе vi (собственно, имя этого редактора обозначает «vi improved», то есть «улучшенный vi»), а тот в свою очередь был основан на редакторе ed. Если вы попробовали Vim и нашли его слишком сложным, мы советуем вам взять ed и попробовать поработать с ним. Он всё еще входит в большинство дистрибутивов и ясно показывает, как обстояли дела с вводом текста 20 лет назад.
 
программе vi (собственно, имя этого редактора обозначает «vi improved», то есть «улучшенный vi»), а тот в свою очередь был основан на редакторе ed. Если вы попробовали Vim и нашли его слишком сложным, мы советуем вам взять ed и попробовать поработать с ним. Он всё еще входит в большинство дистрибутивов и ясно показывает, как обстояли дела с вводом текста 20 лет назад.
  
Два режима работы Vim часто в шутку различают так: «пищит» или «не пищит». Второй называется режимом вставки, и используется для того, чтобы вставить текст в файл. Он довольно прост и поддерживает всю функциональность, которую можно было бы ожидать: автоматические отступы, подсветку синтаксиса, поиск парных скобок и так далее. Эти, а также целый ряд других функций, могут быть включены или отключены в режиме, «который пищит» командном режиме.
+
Два режима работы Vim часто в шутку различают так: «пищит» или «не пищит». Второй называется режимом вставки, и используется для того, чтобы вставить текст в файл. Он довольно прост и поддерживает всю функциональность, которую можно было бы ожидать: автоматические отступы, подсветку синтаксиса, поиск парных скобок и так далее. Эти, а также целый ряд других функций, могут быть включены или отключены в режиме, «который пищит» командном режиме.
  
 
Командный режим часто ставит новичков в тупик. Совершенно непонятно, что именно надо набрать, чтобы получить желаемый результат, несмотря на прекрасную систему справки.
 
Командный режим часто ставит новичков в тупик. Совершенно непонятно, что именно надо набрать, чтобы получить желаемый результат, несмотря на прекрасную систему справки.
  
Нажатие &lt;I&gt; (большая буква i) позволяет вводить текст, а клавиша <esc> возвращает редактор в командный режим, позволяющий делать действительно замечательные вещи. Диапазон команд простирается от самых простых (например :q приводит к выходу из приложения) до очень сложных например вы можете включить эмуляцию поведения vi, включить или выключить автоматические отступы или подсветку синтаксиса.
+
Нажатие &lt;I&gt; (большая буква i) позволяет вводить текст, а клавиша <esc> возвращает редактор в командный режим, позволяющий делать действительно замечательные вещи. Диапазон команд простирается от самых простых (например :q приводит к выходу из приложения) до очень сложных например вы можете включить эмуляцию поведения vi, включить или выключить автоматические отступы или подсветку синтаксиса.
  
Поиск и замена текста в Vim выполняются при помощи регулярных выражений, что дает куда большую точность и вариативность, чем обычный поиск. Например, Vim может заменить все вхождения слова ‘Linux’, которому предшествует слово ‘Format’ с аббревиатурой ‘PC’. Возможны и замены с более сложными условиями - лишь бы нужный фрагмент мог быть в принципе
+
Поиск и замена текста в Vim выполняются при помощи регулярных выражений, что дает куда большую точность и вариативность, чем обычный поиск. Например, Vim может заменить все вхождения слова ‘Linux’, которому предшествует слово ‘Format’ с аббревиатурой ‘PC’. Возможны и замены с более сложными условиями лишь бы нужный фрагмент мог быть в принципе
 
описан регулярными выражениями. Другие редакторы вынуждают обращаться к внешним программам, вроде perl или sed.
 
описан регулярными выражениями. Другие редакторы вынуждают обращаться к внешним программам, вроде perl или sed.
  
Строка 122: Строка 131:
  
 
Очень мощная, но сложная программа, включаемая в большинство дистрибутивов.
 
Очень мощная, но сложная программа, включаемая в большинство дистрибутивов.
* Рейтинг - 9/10
+
* Рейтинг 9/10
  
===GNU Emacs===
+
=== GNU Emacs ===
 
Редактор с расширениями, написанными на Lisp
 
Редактор с расширениями, написанными на Lisp
 
* версия: 21.2.1
 
* версия: 21.2.1
Строка 132: Строка 141:
 
Текстовый редактор Emacs вызывает в равной мере любовь и ненависть, и никого не оставляет равнодушным. Вероятно, это самое мощное приложение из числа рассматриваемых в данном тесте. В отличие от [[#Vim | Vim]], своего главного конкурента, Emacs работает всегда в одном и том же режиме. Дополнительные функции вызываются различными клавиатурными комбинациями. Множество приложений стараются снабдить набором «горячих клавиш», совместимым с Emacs, так что, вполне возможно, вы будете чувствовать себя здесь, как дома, даже если ни разу не запускали его раньше.
 
Текстовый редактор Emacs вызывает в равной мере любовь и ненависть, и никого не оставляет равнодушным. Вероятно, это самое мощное приложение из числа рассматриваемых в данном тесте. В отличие от [[#Vim | Vim]], своего главного конкурента, Emacs работает всегда в одном и том же режиме. Дополнительные функции вызываются различными клавиатурными комбинациями. Множество приложений стараются снабдить набором «горячих клавиш», совместимым с Emacs, так что, вполне возможно, вы будете чувствовать себя здесь, как дома, даже если ни разу не запускали его раньше.
  
У Emacs есть свои недостатки. Главный из них следствие расширяемости это большая (по сравнению с аналогами) жадность до оперативной памяти. Расширения к Emacs пишутся на языке Lisp, чаще используемом для создания элементов искусственного интеллекта в больших приложениях. Интерпретатор Lisp занимает большую часть памяти, потребляемой редактором. Это не проблема для современного компьютера, но старые машины могут временами не справляться с нагрузкой. Поэтому Emacs в шутку расшифровывают как “eighty Megabytes And Continues Swapping” («занял 80 мегабайт и хочет еще»). На самом деле Emacs это editor Macros (редактор с макрокомандами).
+
У Emacs есть свои недостатки. Главный из них следствие расширяемости это большая (по сравнению с аналогами) жадность до оперативной памяти. Расширения к Emacs пишутся на языке Lisp, чаще используемом для создания элементов искусственного интеллекта в больших приложениях. Интерпретатор Lisp занимает большую часть памяти, потребляемой редактором. Это не проблема для современного компьютера, но старые машины могут временами не справляться с нагрузкой. Поэтому Emacs в шутку расшифровывают как «eighty Megabytes And Continues Swapping» («занял 80 мегабайт и хочет еще»). На самом деле Emacs это editor Macros (редактор с макрокомандами).
  
 
Конечно, именно возможность расширения и сделала этот редактор столь популярным. Emacs может быть использован и как графический web-браузер, и как почтовый клиент; для Emacs существует несметное число игр, включая тетрис, вариант игры eliza (текстовая игра-приключение в стиле 80-х) и множество других. Кроме того, Emacs можно использовать для составления расписаний и управления задачами.
 
Конечно, именно возможность расширения и сделала этот редактор столь популярным. Emacs может быть использован и как графический web-браузер, и как почтовый клиент; для Emacs существует несметное число игр, включая тетрис, вариант игры eliza (текстовая игра-приключение в стиле 80-х) и множество других. Кроме того, Emacs можно использовать для составления расписаний и управления задачами.
  
Некоторые люди используют Emacs в качестве основной рабочей среды и выполняют с его помощью все повседневные задачи. у них есть свой вариант расшифровки названия: Emacs Makes A Computer Simple (Emacs делает компьютер проще).
+
Некоторые люди используют Emacs в качестве основной рабочей среды и выполняют с его помощью все повседневные задачи. У них есть свой вариант расшифровки названия: Emacs Makes A Computer Simple (Emacs делает компьютер проще).
  
Очень сложно найти такую функцию текстового редактора, которой бы не обладал Emacs. Это его основное предназначение, несмотря на всё обилие возможностей, которыми он оброс позже. В основном этот текстовый редактор использовался программистами, и в этом качестве Emacs особенно хорош. у него есть всё, включая пункты меню для компиляции набранного кода и вызова отладчика запущенной программы. Он умеет взаимодействовать с сервером CVS и способен показать различия между двумя файлами или применить патч.
+
Очень сложно найти такую функцию текстового редактора, которой бы не обладал Emacs. Это его основное предназначение, несмотря на всё обилие возможностей, которыми он оброс позже. В основном этот текстовый редактор использовался программистами, и в этом качестве Emacs особенно хорош. У него есть всё, включая пункты меню для компиляции набранного кода и вызова отладчика запущенной программы. Он умеет взаимодействовать с сервером CVS и способен показать различия между двумя файлами или применить патч.
  
 
Как и Vim, Emacs может работать и в графическом, и в текстовом режимах. Это позволяет использовать привычный редактор, даже если графическая среда не запускается, пусть и без видимых меню и панелей инструментов. Но после длительного пользования программой вы заметите, что почти перестали обращать на них внимание, так как любая функция вызывается с помощью клавиатурной комбинации.
 
Как и Vim, Emacs может работать и в графическом, и в текстовом режимах. Это позволяет использовать привычный редактор, даже если графическая среда не запускается, пусть и без видимых меню и панелей инструментов. Но после длительного пользования программой вы заметите, что почти перестали обращать на них внимание, так как любая функция вызывается с помощью клавиатурной комбинации.
Строка 145: Строка 154:
  
 
Великолепный, расширяемый редактор для программистов, но требования к оперативной памяти могут стать проблемой.
 
Великолепный, расширяемый редактор для программистов, но требования к оперативной памяти могут стать проблемой.
* Рейтинг - 8/10
+
* Рейтинг 8/10
  
===CoolEdit===
+
=== CoolEdit ===
 
Редактор с отладчиком и расширениями на Python
 
Редактор с отладчиком и расширениями на Python
 
* версия: 3.17
 
* версия: 3.17
Строка 155: Строка 164:
 
Несмотря на очевидное сходство с другими рассмотренными здесь редакторами, CoolEdit оставляет совершенно иное впечатление. Возможно, так происходит потому, что вместо использования готовой оконной библиотеки авторы предпочли разработать свою собственную. Учтите, что программа была написана в 1996 году, еще до появления стандартных инструментариев KDE и Gnome. В этом свете их решение кажется более осмысленным.
 
Несмотря на очевидное сходство с другими рассмотренными здесь редакторами, CoolEdit оставляет совершенно иное впечатление. Возможно, так происходит потому, что вместо использования готовой оконной библиотеки авторы предпочли разработать свою собственную. Учтите, что программа была написана в 1996 году, еще до появления стандартных инструментариев KDE и Gnome. В этом свете их решение кажется более осмысленным.
  
CoolEdit предоставляют всю функциональность, которую можно ожидать от текстового редактора в том числе столь любимые нами подсветку синтаксиса, автоматический отступ и проверку правописания. Более того, вы можете расширить его возможности при помощи сценариев. Это проще, чем в случае с Emacs здесь используется Python, а не Lisp, поэтому достигнуть желаемого можно за более короткое время. Можно выбрать и другие языки сценариев, но они не настолько хорошо интегрируются с редактором.
+
CoolEdit предоставляют всю функциональность, которую можно ожидать от текстового редактора в том числе столь любимые нами подсветку синтаксиса, автоматический отступ и проверку правописания. Более того, вы можете расширить его возможности при помощи сценариев. Это проще, чем в случае с Emacs здесь используется Python, а не Lisp, поэтому достигнуть желаемого можно за более короткое время. Можно выбрать и другие языки сценариев, но они не настолько хорошо интегрируются с редактором.
  
Уникальной возможностью CoolEdit, выделяющей его среди других редакторов этого раздела, является встроенный отладчик. Кое-кто может попытаться «сэкономить» и делегировать эти функции внешней копии GDB, но в CoolEdit встроен самый настоящий отладчик: нажатие клавиши - и ваша программа скомпилирована и отдана ему на выполнение. Это очень удобно для быстрого поиска ошибочных мест в коде. Вы можете легко исправить их, а затем протестировать программу еще раз. Наличие встроенного отладчика лишний раз подтверждает расширяемость CoolEdit в Emacs есть много подключаемых модулей, но далеко не каждый из них настолько полезен, как этот.
+
Уникальной возможностью CoolEdit, выделяющей его среди других редакторов этого раздела, является встроенный отладчик. Кое-кто может попытаться «сэкономить» и делегировать эти функции внешней копии GDB, но в CoolEdit встроен самый настоящий отладчик: нажатие клавиши и ваша программа скомпилирована и отдана ему на выполнение. Это очень удобно для быстрого поиска ошибочных мест в коде. Вы можете легко исправить их, а затем протестировать программу еще раз. Наличие встроенного отладчика лишний раз подтверждает расширяемость CoolEdit в Emacs есть много подключаемых модулей, но далеко не каждый из них настолько полезен, как этот.
  
 
Любопытно, но CoolEdit позволяет отправить письмо, используя текущий текст в качестве тела сообщения. Не очень понятно, зачем это может потребоваться, особенно с учетом того, что получить почту с помощью данного приложения невозможно. Вероятно, это является заделом на будущее, но нам не вполне ясно, зачем авторам надо конкурировать с Emacs, у которого уже есть устоявшаяся пользовательская база.
 
Любопытно, но CoolEdit позволяет отправить письмо, используя текущий текст в качестве тела сообщения. Не очень понятно, зачем это может потребоваться, особенно с учетом того, что получить почту с помощью данного приложения невозможно. Вероятно, это является заделом на будущее, но нам не вполне ясно, зачем авторам надо конкурировать с Emacs, у которого уже есть устоявшаяся пользовательская база.
Строка 166: Строка 175:
  
 
Выглядит несимпатично, но, если вам нужен встроенный отладчик, возможно это как раз то, что вы ищете.
 
Выглядит несимпатично, но, если вам нужен встроенный отладчик, возможно это как раз то, что вы ищете.
* Рейтинг - 6/10
+
* Рейтинг 6/10
  
===Minimum Profit===
+
=== Minimum Profit ===
 
Серьезный редактор с несерьезным именем
 
Серьезный редактор с несерьезным именем
 
* Версия: 3.3.10
 
* Версия: 3.3.10
Строка 174: Строка 183:
 
* Цена: Бесплатно, по лицензии GPL
 
* Цена: Бесплатно, по лицензии GPL
  
Minimum Profit еще один редактор, который может работать как из графического сеанса X, так и из консоли, что позволяет выбрать более подходящий режим.
+
Minimum Profit еще один редактор, который может работать как из графического сеанса X, так и из консоли, что позволяет выбрать более подходящий режим.
  
 
Хотя некоторые части Minimum Profit датированы еще 1991 годом, маловероятно, что на него набредут многие пользователи, поскольку это сравнительно небольшой проект, поддерживаемый одним человеком.
 
Хотя некоторые части Minimum Profit датированы еще 1991 годом, маловероятно, что на него набредут многие пользователи, поскольку это сравнительно небольшой проект, поддерживаемый одним человеком.
Строка 186: Строка 195:
 
Другой заслуживающей упоминания возможностью является шифрование файла с помощью пароля. Хотя это не столь ново (Vim поддерживает такую функцию уже какое-то время), немногие редакторы делают шифрование столь очевидным или легким в использовании.
 
Другой заслуживающей упоминания возможностью является шифрование файла с помощью пароля. Хотя это не столь ново (Vim поддерживает такую функцию уже какое-то время), немногие редакторы делают шифрование столь очевидным или легким в использовании.
  
Minimum Profit поддерживает шаблоны, которые особенно полезны при создании документов, web-страниц или макросов. Если у вас есть задача, которая выполняется многократно, макросы могут сэкономить вам кучу времени например, вставить верхние и нижние колонтитулы в несколько файлов сразу или просмотреть все открытые файлы на предмет наличия некоторой строки и заменить ее другой. Прочие редакторы обладают аналогичными функциями, но здесь ими куда проще воспользоваться.
+
Minimum Profit поддерживает шаблоны, которые особенно полезны при создании документов, web-страниц или макросов. Если у вас есть задача, которая выполняется многократно, макросы могут сэкономить вам кучу времени например, вставить верхние и нижние колонтитулы в несколько файлов сразу или просмотреть все открытые файлы на предмет наличия некоторой строки и заменить ее другой. Прочие редакторы обладают аналогичными функциями, но здесь ими куда проще воспользоваться.
  
 
Как редактор среднего уровня, Minimum Profit справился со многими задачами, оказавшимися не под силу другим. В будущем мы надеемся увидеть еще больше.
 
Как редактор среднего уровня, Minimum Profit справился со многими задачами, оказавшимися не под силу другим. В будущем мы надеемся увидеть еще больше.
Строка 193: Строка 202:
  
 
Удачно заполняя нишу между простым блокнотом и продвинутым редактором для разработчиков, Minimum Profit предлагает лучшие функции каждого из них.
 
Удачно заполняя нишу между простым блокнотом и продвинутым редактором для разработчиков, Minimum Profit предлагает лучшие функции каждого из них.
* Рейтинг - 7/10
+
* Рейтинг 7/10
  
===gedit===
+
=== gedit ===
Текстовый редактор Gnome оставляет желать лучшего...
+
Текстовый редактор Gnome оставляет желать лучшего…
 
* Версия: 2.8.3
 
* Версия: 2.8.3
 
* Web: http://www.gnome.org/projects/gedit
 
* Web: http://www.gnome.org/projects/gedit
 
* Цена: бесплатно, по лицензии GPL
 
* Цена: бесплатно, по лицензии GPL
  
Gedit официальный редактор Gnome, так что он, вероятно, установлен на любом компьютере, на котором используется (или хотя бы имеется) эта популярная среда. В отличие от KDE, имеющей два редактора, предназначенных для разных целей, Gnome предоставляет в ваше распоряжение всего один. В результате, gedit находится где-то между простейшим Блокнотом и редактором для программистов, причем толком не справляется ни с одной из этих задач.
+
Gedit официальный редактор Gnome, так что он, вероятно, установлен на любом компьютере, на котором используется (или хотя бы имеется) эта популярная среда. В отличие от KDE, имеющей два редактора, предназначенных для разных целей, Gnome предоставляет в ваше распоряжение всего один. В результате, gedit находится где-то между простейшим Блокнотом и редактором для программистов, причем толком не справляется ни с одной из этих задач.
  
Хотя gedit предлагает традиционные «программистские» функции: подсветку синтаксиса, отступы и так далее, ни одна из них не очевидна в момент первого запуска программы. Поиск по опциям и настройкам выявляет потенциал gedit, но мы бы предпочли видеть его сразу же после старта пустое меню смущает пользователя сильнее, чем переполненное непонятными опциями.
+
Хотя gedit предлагает традиционные «программистские» функции: подсветку синтаксиса, отступы и так далее, ни одна из них не очевидна в момент первого запуска программы. Поиск по опциям и настройкам выявляет потенциал gedit, но мы бы предпочли видеть его сразу же после старта пустое меню смущает пользователя сильнее, чем переполненное непонятными опциями.
  
 
Даже будучи успешно обнаруженной, функциональность gedit оказывается слишком примитивной для того, чтобы быть полезной: поиск не поддерживает регулярных выражений, подсветка синтаксиса обеспечивается лишь в небольшом числе языков, причем отсутствуют самые привычные (например, сценарии на языке оболочки). Метод подсветки, по неясным нам причинам, делает различие между компилируемыми и интерпретируемыми языками. Похоже, все сделано для того, чтобы запутать пользователя как можно сильнее.
 
Даже будучи успешно обнаруженной, функциональность gedit оказывается слишком примитивной для того, чтобы быть полезной: поиск не поддерживает регулярных выражений, подсветка синтаксиса обеспечивается лишь в небольшом числе языков, причем отсутствуют самые привычные (например, сценарии на языке оболочки). Метод подсветки, по неясным нам причинам, делает различие между компилируемыми и интерпретируемыми языками. Похоже, все сделано для того, чтобы запутать пользователя как можно сильнее.
Строка 214: Строка 223:
  
 
Gedit offers little to entice either the novice or experienced users.
 
Gedit offers little to entice either the novice or experienced users.
* Рейтинг - 3/10
+
* Рейтинг 3/10
 +
 
 +
=== Наш вердикт ===
 +
'''Vim — 9/10'''
 +
 
 +
Даже самые простые из рассмотренных нами редакторов годятся для того, чтобы внести пару изменений в конфигурационный файл. Один из больших споров, длящихся уже ни одно десятилетие, происходит вокруг того, кто обеспечивает лучшую среду для редактирования текста: Vi или [[#GNU Emacs | Emacs]]. У каждой стороны есть свои победители, и с учетом того, что любители Vi и [[#GNU Emacs | Emacs]] хотят от редакторов совершенно разных вещей, этот вопрос вряд ли будет решен в ближайшее десятилетие.
 +
 
 +
Хотя [[#GNU Emacs | GNU Emacs]] и [[#Vim | Vim]] перешли от текстового интерфейса к графическому, сохранив свою внутреннюю структуру, новые пользователи скорее всего выберут одно из графических приложений, включенных в их любимую среду обитания, например, [[#Kate | Kate]]. Эти редакторы все чаще используются и новыми пользователями, знакомыми со старыми редакторами — по крайней мере, до тех пор, пока им не понадобится что-нибудь более мощное.
 +
 
 +
[[#Kate | Kate]] показал себя с лучшей стороны, также как и другой графический редактор, [[#NEdit | NEdit]]. Каждого из них вполне достаточно для создания среды программирования. [[#Kate | Kate]], по-видимому, установлен в большем числе систем и обладает лучшей поддержкой проектов, что упрощает работу с большими программами.
 +
 
 +
Сила [[#NEdit | NEdit]] кроется в его простоте. У него было несколько лет, чтобы построить совершенное окружение, делающее простые и сложные изменения прямолинейными и, когда речь идет о редактировании единичных файлов, трудно предложить что-либо лучшее.
 +
 
 +
Проекту Gnome есть чему поучиться у других, и если бы [[#NEdit | NEdit]] удалось пересобрать с GTK, получился бы куда более полезный продукт, чем [[#gedit | gedit]], который оказался единственным аутсайдером. Но даже у него есть определенный потенциал — если разработчики сфокусируются на одной группе пользователей, это резко облегчит ситуацию.
 +
 
 +
Новым пользователям, ищущим консольный редактор получше [[#nano | nano]] рекомендуем обратить внимание на [[#Minimum Profit | Minimum Profit]]. Его ясный интерфейс, а также простота изучения могут вам понравиться. Это пока не самый популярный редактор, так что его нет во многих системах с установкой по умолчанию. [[#nano | Nano]] или его предок Pico, напротив, прямо-таки вездесущи.
 +
 
 +
В итоге, лучшим редактором, который мы смогли найти, оказался [[#Vim | Vim]]. Он сложен в изучении, но чрезвычайно мощен и предъявляет малые требования к памяти по сравнению с [[#Emacs | Emacs]]. Он распространен очень широко и достаточно мал, чтобы поместиться на аварийный диск.
 +
 
 +
Если вы всерьез хотите заняться изучением внутренностей Linux — попробуйте [[#Vim | Vim]]. Вскоре вы научитесь выживанию и в более страшных ситуациях.
 +
 
 +
{| align="center" border="1" cellspacing="0" cellpadding="3"
 +
!'''Название'''
 +
!'''Оконная библиотека'''
 +
!'''Текстовый режим'''
 +
!'''Подсветка синтаксиса'''
 +
!'''Язык сценариев'''
 +
!'''Отладчик'''
 +
!'''Регулярные выражения'''
 +
|-
 +
|Cooledit
 +
|Home-made
 +
|
 +
|V
 +
|Python
 +
|V
 +
|V
 +
|-
 +
|gedit
 +
|GTK
 +
|
 +
|V
 +
|N/A
 +
|
 +
|
 +
|-
 +
|GNU Emacs
 +
|GTK
 +
|V
 +
|V
 +
|Lisp
 +
|External (GBD)
 +
|V
 +
|-
 +
|Kate
 +
|Qt
 +
|
 +
|V
 +
|Plugins
 +
|
 +
|V
 +
|-
 +
|nano
 +
|None
 +
|V
 +
|
 +
|N/A
 +
|
 +
|
 +
|-
 +
|Nedit
 +
|Motif
 +
|
 +
|V
 +
|Plugins
 +
|External (GBD)
 +
|V
 +
|-
 +
|Minimum Profit
 +
|GTK
 +
|V
 +
|V
 +
|N/A
 +
|
 +
|V
 +
|-
 +
|Vim
 +
|GTK
 +
|V
 +
|V
 +
|Perl/Python/Ruby
 +
|
 +
|V
 +
|}
  
===Наш вердикт===
+
[[Категория:Сравнение]]

Текущая версия на 22:04, 2 ноября 2010

Содержание


[править] Сравнение: Текстовые редакторы

Том Вилкинсон (Tom Wilkinson) решил проверить широко распространённую в LXF теорию о том, что в наше время невозможно найти приличный текстовый редактор.

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

В этом месяце мы протестировали 8 самых популярных редакторов. Многие из них предлагают на выбор как текстовый, так и графический интерфейсы пользователя и предоставляют разнообразные функции, самыми ценными из которых являются проверка орфографии, подсветка синтаксиса и автоматические отступы.

Текстовые редакторы отличаются от текстовых процессоров своим предназначением, хотя их функциональность и инструменты часто пересекаются. Текстовые процессоры нужны, в первую очередь, для создания и форматирования текстовых документов. Редакторы же должны суметь прочитать и изменить произвольный текстовый файл, поэтому их функции сосредоточены вокруг манипуляций с текстом. Форматирование и окончательный вывод остаются при этом на совести web-браузеров, компилятора LateX или других приложений, преобразующих сырой текст в законченный документ.

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

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

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

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

[править] Участники сравнения

[править] nano

Редактор командной строки, включенный во многие дистрибутивы

  • Версия: 1.2.4
  • Web: www.nano-editor.org
  • Цена: бесплатно, по лицензии GPL

Текстовый редактор nano, выпущенный Фондом свободного программного обеспечения, позиционируется как свободная замена популярному редактору Pico, разработанному в университете Вашингтона. Его интерфейс будет знаком любому работавшему с текстовым клиентом электронной почты Pine, который основан на Pico. Хотя исходный код Pico общедоступен, он не считается open-source редактором, поскольку любой, кто захочет разработать на основе Pico свою программу, должен сначала спросить разрешения у университета Вашингтона. Конечно, это менее свободная лицензия, чем GPL, поэтому под влиянием разработчиков таких дистрибутивов, как Debian, и был создан nano.

Nano — один из самых простых текстовых редакторов. У него нет поддержки таких полезных для программистов функций, как поиск парных скобок или подсветка синтаксиса. Но, будучи редактором простого текста, он прекрасно справляется со своей задачей. Основные клавиатурные команды, выполняющие базовые действия, перечислены в нижней части экрана, и этого более чем достаточно для редактирования конфигурационного файла без путаницы в режимах или в миллионах команд меню. Эта программа предназначена для конкретной аудитории и точно соответствует ей. Её пользователи — новички, которые еще не готовы к схватке с Vi или emacs, но при этом хотят редактировать файлы в текстовой консоли.

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

Основные функции программы доступны по нажатию клавиши команды при удерживаемой кнопке <Ctrl>. Это самый логичный способ вызова команд в редакторе текстового режима, хотя число доступных команд при этом ограничено. Однако, мы думаем, что это не станет большой проблемой, поскольку к тому времени, как пользователям понадобится что-то, выходящее за рамки такой схемы, они, скорее всего, перейдут на какое-нибудь более мощное приложение.

В редакторе nano нас сильно раздражала только одна вещь: по умолчанию символ перевода строки вставляется в файл автоматически. Это не самое удобное поведение: представьте себе, что вы написали длинную строку кода, которая отказывается компилироваться из-за того, что редактор добавил символ конца строки в неудачном месте. На поиск причины такой ошибки может уйти очень много времени. К счастью, для изменения такого поведения программы достаточно указать соответствующую опцию командной строки.

Вердикт Linux Format

Простой, но малофункциональный nano не слишком привлекателен.

  • Рейтинг — 5/10

[править] Kate

Редактор с возможностью управления проектами

  • Версия: 3.2
  • Web: kate.kde.org
  • Цена: Бесплатно, по лицензии GPL

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

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

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

Кроме инструментов для разработчиков, Kate содержит еще и функции управления проектами. Можно создать проект как набор файлов, и его открытие приведёт к открытию каждого из входящих в него фалов в отдельной вкладке. Это позволяет редактировать множество взаимосвязанных файлов одновременно, например заголовочный файл, файл с исходным кодом на C и Makefile. Если вы работаете с более крупными проектами, например с целыми приложениями, эта возможность Kate будет для вас особенно полезна.

В любом месте файла Kate может создать закладку, что позволит впоследствии мгновенно вернуться к нему через главное меню. Также очень полезна возможность открыть в новой закладке вместо одного из текстовых файлов окно терминала. Это самый быстрый способ переключиться в командную оболочку (например, для компилирования программы) из всех, которые можно себе представить.

Еще одной новаторской возможностью Kate является выделение любого текста и осуществления поиска по этому слову с помощью Google. Результаты поиска отображаются в Konqueror, web-браузере входящем в состав KDE. Это особенно удобно при работе с каким-нибудь новым API. Выделив функцию, вы получаете справочную информацию, обсуждения и подсказки прямо на кончиках своих пальцев.

Вердикт Linux Format

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

  • Рейтинг — 7/10

[править] NEdit

Основанный на Motif редактор, имеющий множество плюсов

  • Версия: 5
  • Web: www.nedit.org
  • Цена: Бесплатно, по лицензии GPL

Cозданный в 1991 году, NEdit является одним из старейших текстовых редакторов, рассматриваемых в этой статье. Он на несколько лет опередил эру Gnome и KDE и поэтому основан на межплатформенной библиотеке пользовательского интерфейса Motif. До недавнего времени Motif был продуктом с закрытым кодом, что вызывало проблемы с её получением и сборкой (его открытый аналог, Lesstif был доступен, но далеко не всегда компилировался успешно). Выпуск Open Motif в 2000 году сделал получение и сборку NEdit гораздо более простым делом.

Несмотря на эти проблемы, разработчики NEdit продолжали добавлять новшества в свой редактор и сделали его вполне современным. Последние версии включают такие возможности, как вкладки (позволяющие открыть сразу несколько файлов), и поддержку UTF, обеспечивающую ввод в документ символов любого языка.

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

Этот редактор может использовать для обработки текста любую команду оболочки, причём сохранять для этого файл вовсе не обязательно. Некоторые пункты меню применяют этот метод для проверки орфографии (с помощью ispell), подсчёта слов (wc), и даже для сборки программы (make), а это значит что ваш код может быть откомпилирован и запущен прямо из текстового редактора, что очень удобно при работе с компилируемыми языками программирования вроде C или Java.

Поиск в NEdit, как и можно ожидать от редактора предназначенного для всех, поддерживает регулярные выражения, но не навязывает их. Вероятно, это самый лучший компромисс между потребностями новых и опытных пользователей. Также нам очень понравилась установка закладок. Она позволяет запомнить позицию в текстовом файле, чтобы потом вернуться к ней с помощью пары нажатий клавиш. Это бесценно, если вы часто переключаетесь между функциями их объявлениями в начале файла.

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

Вердикт Linux Format

Прекрасный редактор, сочетающий серьёзные возможности с простотой использования. Сложности при сборке являются его слабостью.

  • Рейтинг — 8/10

[править] Vim

Разнорежимный, но мощный и почти вездесущий

  • версия: 3
  • Web: www.vim.org
  • Цена: Бесплатно, по лицензии Vim License

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

Он имеет репутацию редактора, который совершенно невозможно освоить новичку и, пожалуй, он её заслуживает. Дело в том, что Vim использует разные режимы работы, что является возвращением к самым первым текстовым редакторам, работающим на древних текстовых терминалах, которые могли прокручивать текст только в одном направлении. интерфейс Vim основан на программе vi (собственно, имя этого редактора обозначает «vi improved», то есть «улучшенный vi»), а тот в свою очередь был основан на редакторе ed. Если вы попробовали Vim и нашли его слишком сложным, мы советуем вам взять ed и попробовать поработать с ним. Он всё еще входит в большинство дистрибутивов и ясно показывает, как обстояли дела с вводом текста 20 лет назад.

Два режима работы Vim часто в шутку различают так: «пищит» или «не пищит». Второй называется режимом вставки, и используется для того, чтобы вставить текст в файл. Он довольно прост и поддерживает всю функциональность, которую можно было бы ожидать: автоматические отступы, подсветку синтаксиса, поиск парных скобок и так далее. Эти, а также целый ряд других функций, могут быть включены или отключены в режиме, «который пищит» — командном режиме.

Командный режим часто ставит новичков в тупик. Совершенно непонятно, что именно надо набрать, чтобы получить желаемый результат, несмотря на прекрасную систему справки.

Нажатие <I> (большая буква i) позволяет вводить текст, а клавиша <esc> возвращает редактор в командный режим, позволяющий делать действительно замечательные вещи. Диапазон команд простирается от самых простых (например :q приводит к выходу из приложения) до очень сложных — например вы можете включить эмуляцию поведения vi, включить или выключить автоматические отступы или подсветку синтаксиса.

Поиск и замена текста в Vim выполняются при помощи регулярных выражений, что дает куда большую точность и вариативность, чем обычный поиск. Например, Vim может заменить все вхождения слова ‘Linux’, которому предшествует слово ‘Format’ с аббревиатурой ‘PC’. Возможны и замены с более сложными условиями — лишь бы нужный фрагмент мог быть в принципе описан регулярными выражениями. Другие редакторы вынуждают обращаться к внешним программам, вроде perl или sed.

Вердикт Linux Format

Очень мощная, но сложная программа, включаемая в большинство дистрибутивов.

  • Рейтинг — 9/10

[править] GNU Emacs

Редактор с расширениями, написанными на Lisp

Текстовый редактор Emacs вызывает в равной мере любовь и ненависть, и никого не оставляет равнодушным. Вероятно, это самое мощное приложение из числа рассматриваемых в данном тесте. В отличие от Vim, своего главного конкурента, Emacs работает всегда в одном и том же режиме. Дополнительные функции вызываются различными клавиатурными комбинациями. Множество приложений стараются снабдить набором «горячих клавиш», совместимым с Emacs, так что, вполне возможно, вы будете чувствовать себя здесь, как дома, даже если ни разу не запускали его раньше.

У Emacs есть свои недостатки. Главный из них — следствие расширяемости — это большая (по сравнению с аналогами) жадность до оперативной памяти. Расширения к Emacs пишутся на языке Lisp, чаще используемом для создания элементов искусственного интеллекта в больших приложениях. Интерпретатор Lisp занимает большую часть памяти, потребляемой редактором. Это не проблема для современного компьютера, но старые машины могут временами не справляться с нагрузкой. Поэтому Emacs в шутку расшифровывают как «eighty Megabytes And Continues Swapping» («занял 80 мегабайт и хочет еще»). На самом деле Emacs — это editor Macros (редактор с макрокомандами).

Конечно, именно возможность расширения и сделала этот редактор столь популярным. Emacs может быть использован и как графический web-браузер, и как почтовый клиент; для Emacs существует несметное число игр, включая тетрис, вариант игры eliza (текстовая игра-приключение в стиле 80-х) и множество других. Кроме того, Emacs можно использовать для составления расписаний и управления задачами.

Некоторые люди используют Emacs в качестве основной рабочей среды и выполняют с его помощью все повседневные задачи. У них есть свой вариант расшифровки названия: Emacs Makes A Computer Simple (Emacs делает компьютер проще).

Очень сложно найти такую функцию текстового редактора, которой бы не обладал Emacs. Это его основное предназначение, несмотря на всё обилие возможностей, которыми он оброс позже. В основном этот текстовый редактор использовался программистами, и в этом качестве Emacs особенно хорош. У него есть всё, включая пункты меню для компиляции набранного кода и вызова отладчика запущенной программы. Он умеет взаимодействовать с сервером CVS и способен показать различия между двумя файлами или применить патч.

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

Вердикт Linux Format

Великолепный, расширяемый редактор для программистов, но требования к оперативной памяти могут стать проблемой.

  • Рейтинг — 8/10

[править] CoolEdit

Редактор с отладчиком и расширениями на Python

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

CoolEdit предоставляют всю функциональность, которую можно ожидать от текстового редактора — в том числе столь любимые нами подсветку синтаксиса, автоматический отступ и проверку правописания. Более того, вы можете расширить его возможности при помощи сценариев. Это проще, чем в случае с Emacs — здесь используется Python, а не Lisp, поэтому достигнуть желаемого можно за более короткое время. Можно выбрать и другие языки сценариев, но они не настолько хорошо интегрируются с редактором.

Уникальной возможностью CoolEdit, выделяющей его среди других редакторов этого раздела, является встроенный отладчик. Кое-кто может попытаться «сэкономить» и делегировать эти функции внешней копии GDB, но в CoolEdit встроен самый настоящий отладчик: нажатие клавиши — и ваша программа скомпилирована и отдана ему на выполнение. Это очень удобно для быстрого поиска ошибочных мест в коде. Вы можете легко исправить их, а затем протестировать программу еще раз. Наличие встроенного отладчика лишний раз подтверждает расширяемость CoolEdit — в Emacs есть много подключаемых модулей, но далеко не каждый из них настолько полезен, как этот.

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

Мы также испытывали проблемы при сборке CoolEdit: программе необходимы библиотеки X Window System, но сценарий настройки не сообщает вовремя об их отсутствии. К счастью, это можно легко исправить, а установка из бинарных пакетов полностью снимает проблему, так что это не суть важно.

Вердикт Linux Format

Выглядит несимпатично, но, если вам нужен встроенный отладчик, возможно это как раз то, что вы ищете.

  • Рейтинг — 6/10

[править] Minimum Profit

Серьезный редактор с несерьезным именем

Minimum Profit — еще один редактор, который может работать как из графического сеанса X, так и из консоли, что позволяет выбрать более подходящий режим.

Хотя некоторые части Minimum Profit датированы еще 1991 годом, маловероятно, что на него набредут многие пользователи, поскольку это сравнительно небольшой проект, поддерживаемый одним человеком.

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

Эти вариации, по-видимому, происходят от того, что Minimum Profit разрабатывается одним человеком, анжелом Ортега (Angel Ortega), который добавляет в него те функции, которые считает нужными. Тем не менее, Minimum Profit куда проще в использовании, чем Vim или Emacs и гораздо более функционален, чем простые редакторы вроде nano.

Одной из наиболее интересных особенностей Minimum Profit является умение объяснить любое слово в редактируемом файле. Просто наведите на него курсор, и программа выполнит для вас поиск по страницам man, perldoc или ri (сокращение от Ruby Information).

Другой заслуживающей упоминания возможностью является шифрование файла с помощью пароля. Хотя это не столь ново (Vim поддерживает такую функцию уже какое-то время), немногие редакторы делают шифрование столь очевидным или легким в использовании.

Minimum Profit поддерживает шаблоны, которые особенно полезны при создании документов, web-страниц или макросов. Если у вас есть задача, которая выполняется многократно, макросы могут сэкономить вам кучу времени — например, вставить верхние и нижние колонтитулы в несколько файлов сразу или просмотреть все открытые файлы на предмет наличия некоторой строки и заменить ее другой. Прочие редакторы обладают аналогичными функциями, но здесь ими куда проще воспользоваться.

Как редактор среднего уровня, Minimum Profit справился со многими задачами, оказавшимися не под силу другим. В будущем мы надеемся увидеть еще больше.

Вердикт Linux Format

Удачно заполняя нишу между простым блокнотом и продвинутым редактором для разработчиков, Minimum Profit предлагает лучшие функции каждого из них.

  • Рейтинг — 7/10

[править] gedit

Текстовый редактор Gnome оставляет желать лучшего…

Gedit — официальный редактор Gnome, так что он, вероятно, установлен на любом компьютере, на котором используется (или хотя бы имеется) эта популярная среда. В отличие от KDE, имеющей два редактора, предназначенных для разных целей, Gnome предоставляет в ваше распоряжение всего один. В результате, gedit находится где-то между простейшим Блокнотом и редактором для программистов, причем толком не справляется ни с одной из этих задач.

Хотя gedit предлагает традиционные «программистские» функции: подсветку синтаксиса, отступы и так далее, ни одна из них не очевидна в момент первого запуска программы. Поиск по опциям и настройкам выявляет потенциал gedit, но мы бы предпочли видеть его сразу же после старта — пустое меню смущает пользователя сильнее, чем переполненное непонятными опциями.

Даже будучи успешно обнаруженной, функциональность gedit оказывается слишком примитивной для того, чтобы быть полезной: поиск не поддерживает регулярных выражений, подсветка синтаксиса обеспечивается лишь в небольшом числе языков, причем отсутствуют самые привычные (например, сценарии на языке оболочки). Метод подсветки, по неясным нам причинам, делает различие между компилируемыми и интерпретируемыми языками. Похоже, все сделано для того, чтобы запутать пользователя как можно сильнее.

О расширяемости посредством подключаемых модулей или через выполнение сценариев оболочки с открытым файлом не идет и речи. Пункт меню «Run Shell Command» наличествует, однако, не ясно, как применить его к тому, что в данный момент редактируется. Проверка правописания также оказалась с дефектом (оказывается, апострофы играют важную роль!).

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

Вердикт Linux Format

Gedit offers little to entice either the novice or experienced users.

  • Рейтинг — 3/10

[править] Наш вердикт

Vim — 9/10

Даже самые простые из рассмотренных нами редакторов годятся для того, чтобы внести пару изменений в конфигурационный файл. Один из больших споров, длящихся уже ни одно десятилетие, происходит вокруг того, кто обеспечивает лучшую среду для редактирования текста: Vi или Emacs. У каждой стороны есть свои победители, и с учетом того, что любители Vi и Emacs хотят от редакторов совершенно разных вещей, этот вопрос вряд ли будет решен в ближайшее десятилетие.

Хотя GNU Emacs и Vim перешли от текстового интерфейса к графическому, сохранив свою внутреннюю структуру, новые пользователи скорее всего выберут одно из графических приложений, включенных в их любимую среду обитания, например, Kate. Эти редакторы все чаще используются и новыми пользователями, знакомыми со старыми редакторами — по крайней мере, до тех пор, пока им не понадобится что-нибудь более мощное.

Kate показал себя с лучшей стороны, также как и другой графический редактор, NEdit. Каждого из них вполне достаточно для создания среды программирования. Kate, по-видимому, установлен в большем числе систем и обладает лучшей поддержкой проектов, что упрощает работу с большими программами.

Сила NEdit кроется в его простоте. У него было несколько лет, чтобы построить совершенное окружение, делающее простые и сложные изменения прямолинейными и, когда речь идет о редактировании единичных файлов, трудно предложить что-либо лучшее.

Проекту Gnome есть чему поучиться у других, и если бы NEdit удалось пересобрать с GTK, получился бы куда более полезный продукт, чем gedit, который оказался единственным аутсайдером. Но даже у него есть определенный потенциал — если разработчики сфокусируются на одной группе пользователей, это резко облегчит ситуацию.

Новым пользователям, ищущим консольный редактор получше nano рекомендуем обратить внимание на Minimum Profit. Его ясный интерфейс, а также простота изучения могут вам понравиться. Это пока не самый популярный редактор, так что его нет во многих системах с установкой по умолчанию. Nano или его предок Pico, напротив, прямо-таки вездесущи.

В итоге, лучшим редактором, который мы смогли найти, оказался Vim. Он сложен в изучении, но чрезвычайно мощен и предъявляет малые требования к памяти по сравнению с Emacs. Он распространен очень широко и достаточно мал, чтобы поместиться на аварийный диск.

Если вы всерьез хотите заняться изучением внутренностей Linux — попробуйте Vim. Вскоре вы научитесь выживанию и в более страшных ситуациях.

Название Оконная библиотека Текстовый режим Подсветка синтаксиса Язык сценариев Отладчик Регулярные выражения
Cooledit Home-made V Python V V
gedit GTK V N/A
GNU Emacs GTK V V Lisp External (GBD) V
Kate Qt V Plugins V
nano None V N/A
Nedit Motif V Plugins External (GBD) V
Minimum Profit GTK V V N/A V
Vim GTK V V Perl/Python/Ruby V
Персональные инструменты
купить
подписаться
Яндекс.Метрика