Сайт о телевидении

Сайт о телевидении

» » Редактор для программирования. Какой лучший редактор HTML, PHP, CSS, JS кода

Редактор для программирования. Какой лучший редактор HTML, PHP, CSS, JS кода

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

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

Vim - это мощный редактор текста Linux для командной строки, который расширяет и улучшает функционал старого Unix редактора Vi. Это один из лучших редакторов для Linux, он один из самых популярных и часто используемых текстовых редакторов среди системных администраторов и программистов. Многие пользователи считают его редактором для программистов. При редактировании кода и конфигурационных файлов можно включить подсветку синтаксиса.

2. Gedit

Это многофункциональный лучший текстовый редактор Linux, с графическим интерфейсом. Он поставляется по умолчанию в окружении рабочего стола GNOME. Редактор очень прост в использовании и настройке, а также поддерживает кучу плагинов.

Вот его основные преимущества:

  • Поддержка UTF-8
  • Настройка размера шрифта и цветов
  • Настройка подсветки синтаксиса
  • Функциональность копирования и вставки
  • Отмена и повтор действий
  • Откат файлов
  • Поиск и замена
  • Буфер обмена

3. Редактор Nano

Nano - это очень простой в использовании консольный текстовый редактор Linux как для новичков, так и для продвинутых пользователей Linux. Он очень удобен в использовании.

Некоторые особенности Nano:

  • Высоко настраиваемые сочетания клавиш
  • Подсветка синтаксиса
  • Отмена и повтор действий
  • Занимает все доступное пространство стандартного вывода
  • Поддерживает чтение из стандартного ввода

4. GNU Emacs

Это очень расширяемый и настраиваемый текстовый редактор линукс, со встроенным интерпретатором языка программирования lisp. Для расширения функциональности можно устанавливать различные расширения.

  • Особенности Emacs:
  • Большое количество документации
  • Подсветка синтаксиса
  • Поддержка множества языков с помощью Unicode
  • Поддержка различных расширений, включая почту, новости, отладчик, календарь и другие.

5. Kate / Kwrite

Это многофункциональный и очень расширяемый текстовый редактор, который поставляется вместе с окружением рабочего стола KDE Plasma. Проект Kate направлен на развитие двух основных программ: KatePart и Kate.

KatePart это компонент текстового редактора, используемый во многих приложениях KDE, где может понадобиться редактирование текста, а Kate - это интерфейс для работы с несколькими документами в текстовом редакторе.

Основные возможности:

  • Расширение функциональности с помощью скриптов
  • Поддержка Unicode
  • Редактирование текста в нескольких панелях
  • Поддержка автодополнения

Также поддерживается удаленное редактирование файлов и многие другие функции, включая поиск и замену, программирование, выделение текста, резервное копирование и т д.

6. Lime Text

Это даже больше чем просто мощный текстовый редактор для linux. Это целая IDE с открытым исходным кодом. Можно сказать, преемник популярного Sublime Text. Можно использовать как в командной строке, так и с графическим интерфейсом.

7. Pico Editor

Это еще один редактор, работающий в командной строке основанный на редакторе, используемом в Pine news. Это лучший текстовый редактор Linux для новых пользователей, в основном, из-за своей простоты по сравнению с другими редакторами, имеющими графический интерфейс.

8. Jed Editor

Это еще один консольный текстовый редактор linux с поддержкой графического интерфейса и меню в виде раскрывающейся строки. Он сделан специально для разработки программного обеспечения и одной из его ключевых особенностей является поддержка режима Unicode.

9. GVim

Это графическая версия популярного текстового редактора VIm. Здесь есть все те же возможности что и у Vim, а также меню, с помощью которого можно сделать много действий.

10. Geany

Это еще один IDE подобный текстовый редактор linux, заточенный под разработку программного обеспечения с использованием инструментов GTK.

Он имеет все необходимые базовые функции:

  • Подсветка синтаксиса
  • Интерфейс плагинов
  • Поддержка различных типов файлов
  • Поддержка свертывания кода и навигации
  • Автозавершение
  • Поддержка автоматического закрытия HTML и XML тегов
  • Функции управления проектами

11. Leaf Pad

Это легкий текстовый редактор linux с графическим интерфейсом на основе GTK. Он популярен среди новых пользователей Linux из-за своей простоты.

Особенности редактора:

  • Автоматическое определение кодировки
  • Функции отмены и повтора
  • Номера строк в файле
  • Поддержка перетаскивания
  • Поддержка печати

Bluefish - это простой в установке и использовании лучший текстовый редактор Linux, рассчитанный на программистов и веб-разработчиков. Он поддерживает большое количество функций:

  • Легкий и быстрый
  • Интеграция с внешними утилитами LInux: lint, weblint, make, awk, grep, sort и другими.
  • Функция проверки орфографии
  • Поддержка работы над несколькими проектами
  • Удаленное редактирование файлов
  • Поддержка поиска и замены
  • Поддержка отмены и повтора действий
  • Автоматическое восстановление измененных файлов

13. Atom

Это очень настраиваемый редактор текста Linux для разработчиков от Github основанный на движке Chromium. Программа больше похожа на IDE чем просто редактор. Функциональность можно расширить с помощью огромного количества плагинов.

Наверное, это один из лучших редакторов для веб-разработчиков. Вот его особенности:

  • Современный интерфейс в стиле Flat
  • Поддержка огромного количества плагинов
  • Поддержка множества языков программирования
  • Подсветка синтаксиса
  • Отладка программ в Chromium
  • Подсветка ошибок

14. Brackets

Еще один современный текстовый редактор Linux, основанный на движке Chromium, на этот раз от Adobe. Особенности.

Редакторы исходного кода под Linux. Редакторы с подсветкой синтаксиса. C, C++ редакторы. PHP, Perl, HTML редакторы.

  • Visual Studio Code — функциональный редактор кода от компании Microsoft.

  • Atom

    Atom — современный, удобный, функциональный редактор кода. Имеет встроенный менеджер пакетов (плагинов) для расширения возможностей.

  • Brackets — бесплатный редактор для web-дизайнеров и разработчиков. Преимущественно предназначен для написания и редактирования HTML, CSS и JavaScript кода.

  • Textadept — текстовый редактор для программистов. Выполнен в минималистичном стиле, позволяет разделять рабочее окно на несколько частей и просматривать один или несколько файлов одновременно. Поддерживается подсветка синтаксиса для большинства языков программирования.

  • JuffEd — редактор кода для Linux. Умеет подсвечивать код (синтаксис), поддерживает сворачивание блоков кода, подсвечивание парных скобок и многое другое. Редактор похож по функциональности на Notepad++.

  • NetBeans — мощная бесплатная интегрированная среда разработки приложений (IDE). Поддерживает языки программирования Java, PHP, JavaScript, Ajax, Ruby, Ruby on Rails, C/C++ и другие.

  • Medit

    Medit — текстовый редактор для Linux с подсветкой синтаксиса. Поддерживает основные языки программирования и языки разметки.

  • Screem — Site CReating and Editing EnvironMent — текстовый редактор для веб-дизайнеров. Screem предназначен в первую очередь для написания HTML или XML кода.

  • Bluefish Editor — текстовый редактор кода для веб-дизайнеров и программистов. Поддерживает подсветку синтаксиса для большинства языков программирования.

Converter

Этот плагин преобразует выделенный текст (или шестнадцатеричную строку ASCII) в ASCII или шестнадцатеричные строки по вашему выбору. Формат генерируемой шестнадцатеричной строки может быть установлен путем изменения параметров в разделе из converter.ini . Для этого потребуется перезапустить редактор Notepad++

При помощи этого плагина Notepad++ можно запускать командную строку с параметрами. В Notepad++ есть даже инструкция, как создавать компиляции скриптов для каждого типа файлов исходного кода.

При помощи данного плагина можно решать различные сложные задачи. Например, нужно при помощи NppExec скомпилировать свои C файлы, запустить их, и показывать свои данные.

Вот как это делается для Perl. То есть, просто адаптируется для C

1 2 3 4 5 6 7 8 9 10 11 12 13 14 * Open Notepad * Type F6 to open the execute window * write the following commands: o npp_save < -- Saves the current document o CD $(CURRENT_DIRECTORY) <-- Moves to the current directory o perl.exe -c -w "$(FILE_NAME)" <-- executes the command perl.exe -c -w , example: perl.exe -c -w test.pl (-c = compile -w = warnings) * Click on Save * Type a name to save the script (ie Perl Compile) * Go to Menu Plugins -> Nppexec -> advanced options -> Menu Item * In the combobox select the script recently created and click ok -> ok * Restart Notepad * Go to Menu Settings -> Shortcut mappter -> Plugins -> search for the script name * Select the shortcut to use (ie ctrl + 1), click ok * Verify that you can now run the script created with the shortcut selected.

* Open Notepad * Type F6 to open the execute window * write the following commands: o npp_save < -- Saves the current document o CD $(CURRENT_DIRECTORY) <-- Moves to the current directory o perl.exe -c -w "$(FILE_NAME)" <-- executes the command perl.exe -c -w , example: perl.exe -c -w test.pl (-c = compile -w = warnings) * Click on Save * Type a name to save the script (ie Perl Compile) * Go to Menu Plugins -> Nppexec -> advanced options -> Menu Item * In the combobox select the script recently created and click ok -> ok * Restart Notepad * Go to Menu Settings -> Shortcut mappter -> Plugins -> search for the script name * Select the shortcut to use (ie ctrl + 1), click ok * Verify that you can now run the script created with the shortcut selected.

NppExport

Полезный плагин Notepad++, с помощью которого можно экспортировать файлы в html, rtf форматы

Вот как он работает. Открываем файл, переходим на вкладку «Пл агины» > NppExport > Export to HTML. То есть, экспортируем файл в HTML формат. Код может быть просмотрен в любом браузере

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

NppNetNote

С помощью данного плагина Notepad++ у вас появится возможность дать возможность редактировать файл удаленно. То есть, вы можете сами подключиться, или дать возможность подключиться своему другу к вашему файлу, и после этого вы сможете вдвоем, одновременно редактировать файл.

Plugin Manager

Этот плагин является мозгом системы апгрейда текстового редактора Notepad++. С помощью этого плагина пользователь может обновлять, удалять или устанавливать плагины для Notepad++. Просто открываем этот плагин, выбираем плагин из списка доступных для загрузки, и устанавливаем его. Либо просто обновляем плагины. Их вообще много. У меня установлено по-умолчанию 10 плагинов, а в списке доступных я насчитал аж 72 плагина для Notepad++!!! Небольшое уточнение. В Windows 7 чтобы обновляться, необходимо запускать программу от имени администратора.

Spell- Checker

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

Другие полезные возможности бесплатного текстового редактора Notepad++

1. Подсветка синтаксиса

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

Например, ставим подсветку php кода

Помимо непосредственно самой подсветки преимущество заключается еще и в том, что информация разбивается на специальные контейнеры, с помощью которых можно изучать сложный код, чтобы не путаться. В данном случае из скриншота выше, я раскрыл 745 строку (нажал на значок «-» минус), чтобы посмотреть контейнер целиком. Теперь вместо минуса «-» там значится плюс «+», и изучение кода становится проще и понятнее

2. Редактор Notepad++ в кодировке UTF-8 (без BOM)

UTF-8 в переводе с английского означает формат преобразования Юникода. На сегодняшний день эта кодировка является одной из наиболее популярных и используемых. С её помощью реализуется представление Юникода, совместимое с 8-битным кодированием текста.

Теперь что касается кодировки UTF-8 без BOM, про которую вы уже могли слышать. Дело в том, что движок WordPress (см. ) работает с кодировкой UTF-8, но если пользоваться стандартным блокнотом Windows, то при сохранении файлов в кодировке UTF-8, эта прелесть добавляет в PHP-файлы невидимые символы. Именно они и называются BOM. Поэтому UTF-8 без BOM и означает, что файл не содержит всей это радости, т.е. лишних невидимых символов. Эта проблема успешно решается с помощью бесплатного текстового редактора Notepad++, который может преобразовывать либо сохранять файлы Html (см. ) и PHP (см. ).

Преобразовать файл из исходной кодировки в кодировку UTF-8 (без BOM) можно следующим образом:

Делается все просто. Берем, к примеру, файл, где содержится английский текст, вписываем вместо английских букв русские, после чего идем на вкладку «Кодировки», выбираем «Преобразовать в UTF-8 без BOM, и жмем на значок дискетки. Все, файл сохранен.

3. Закладки

Программа Notepad++ содержит такую полезную штуку. Предположим, у меня есть несколько файлов в формате.txt, где я храню всякую нужную информацию: разные html коды, напоминания. В общем, текущую рабочую информацию, и просто часто используемую информацию. Ну, к примеру, нужно мне найти для какой-нибудь цели (неважно для какой) в моем.txt файле теги . Кроме этих тегов в этом файле может быть куча другой информации. И мне чтобы найти эти теги , нужно будет скролить документ то вверх, то вниз, пока не найду. В итоге получается глупая работа. А если за день нужно открывать этот.txt файл не один, а несколько раз, то в итоге получается, что какое-то время просто глупо тратим время на скролинг документа то вверх, то вниз. Проблема решается легко. Находим нужную нам строку, и дважды кликаем рядом с её номером. И сразу же напротив неё появится закладка. А потом эту закладку легко можно найти, нажимая F2 на клавиатуре.

Здравствуйте, читатели! Сегодня речь пойдет о лучшем текстовом редакторе с подсветкой кода — Notepad++ — это самый популярный бесплатный редактор кода. Notepad++ представляет собой швейцарский нож веб-мастера — удобный, надежный и многофункциональный.

Чем же так хорош Notepad++, что уже в начале статьи удостоился стольких лестных эпитетов:

  • Абсолютно бесплатный, что само по себе удивительно для программы такого калибра.
  • Поддержка русского языка по умолчанию, никаких дополнительный русификаторов ставить не надо.
  • Распознавание и подсветка синтаксиса кода более 50 (!!!) языков программирования: с/c++, c#, html, php, java, javascript, shell, SQL и много других. О некоторых я даже никогда не слышал.
  • Быстрая и удобная смена кодировки документа. В два щелчка превращает нечитабельные кракозябры в русские слова.
  • Поддержка закладок, которые позволяют открывать сразу несколько файлов в одном окне редактора. Напоминает браузер.
  • Ведение истории событий — отменяйте сколько угодно последних действий, а если далеко отлистали — вернитесь обратно, вперед!
  • Удобство работы с кодом: подсветка синтаксиса, нумерация строк, наглядное отображение связи между элементами кода, возможность свернуть блок кода.
  • Гибкий и многофункциональный поиск.
  • Расширение функционала за счет плагинов. Например, встроенный плагин NppFTP позволяет использовать Notepad++ в качестве ftp клиента.

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

А теперь обо всем по порядку.

Установка текстового редактора Notepad++

Чтобы что-то установить, нужно это что-то сначала скачать. Так вот Notepad++ можно скачать с официального сайта разработчиков абсолютно бесплатно.

Инсталлятор представляет собой один небольшой файл с расширение.exe. Запускаем его на своем компьютере и следуем инструкциям программы установки. Здесь нет ничего сложного, только не забудьте выбрать русский язык.

Конечно, если у вас свой сайт, то чаще всего редактировать придется файл на языках программирования php и html. Рассмотрим окно редактора с открытым в нем файлом на языке php.

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

  1. Заголовок — показывает название файла и адрес его местоположения.
  2. Главное меню — здесь скрыты все возможности редактора.
  3. Быстрые кнопки — чтобы не копаться в главном меню, самые часто используемые функции для удобства вынесены в качестве кнопок на лицевую панель редактора Notepad++.
  4. Закладки — каждый открываемый на редактирование файл отображается в своей вкладке. Это напоминает работу с браузером. Если значок дискетка в заголовке закладки красная, то последние изменения в файле не сохранены. Если синяя — значит сохранена последняя версия документа.
  5. Нумерация строк — очень полезная вещь. В большинстве случаев для ошибок указывается номер строки, в которой она содержится. С помощью нумерации строк найти ее не составит труда.
  6. Возможность свернуть часть кода. Очень полезная функция, когда код слишком разрастается. Просто сворачиваем его часть, чтобы работать было удобнее.
  7. Пунктиром соединены взаимосвязанные элементы кода — в нашем случае открывающий и закрывающий теги.
  8. Подсветка синтаксиса кода зависит от языка программирования.

Дополнительные возможности Notepad++

Настройка подсветки синтаксиса.

Если ранее вы работали с каким-то другим редактором кода и привыкли к его подсветке синтаксиса, то вполне можете ее перенести в текстовый редактор Notepad++. Настройка подсветки синтаксиса производится через раздел «Опции» — «Определение стилей...».

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

Последовательность действий в этом случае такая:

  • В первом столбике выбираем язык, для которого настраиваем стиль.
  • Во втором столбце выбираем элемент языка.
  • Далее для этого элемент задаем цвет и настраиваем шрифт.

Сравнение документов — плагин Compare.

За функцию сравнения документов отвечает плагин Compare. Он не входит в состав Notepad++ по умолчанию, так что его придется устанавливать отдельно. Это займет совсем немного времени, заодно научитесь устанавливать новые плагины.

Переходим по следующему пути: «Плагины» — «Plagin Manager» — «Show Plagin Manager». Появляется окно менеджера плагинов. Здесь представлен список всех доступных плагинов Notepad++, упорядоченный в алфавитном порядке. Нас интересует Compare.

Ставим напротив Compare галочку и нажимаем «Install». Начнется загрузка и установка плагина, по окончанию которой notepad++ следует перезапустить. Вот и все, теперь Compare доступен в разделе «Плагины».

Сравниваться будет содержание текущего документа и того, что на соседней вкладки. Для начала сравнения следует воспользоваться пунктом «Плагины»- «Compare» — «Compare» или сочетанием клавиш Alt+D.

Для отмены сравнения используйте пункт «Claer Results» или сочетанием Ctrl+Alt+D.

Данный редактор с подсветкой синтаксиса кода предоставляет функцию авто-завершение слов. Заключается она в том, что Notepad++ предлагает на выбор возможные окончания начатого слова. По умолчанию эта функция висит на горячих кнопках Ctrl+пробел, но можно ее сделать и полностью автоматической. Для этого следует зайти в раздел «Опции» — «Настройки», перейти на вкладку «Резерв/Автозавершение» и поставить галочку напротив «Включить для каждого ввода». Так же можно указать, начиная с какого символа, будут предлагаться варианта окончания слова.

В том же разделе настроек можно включить и резервное копирование файлов на всякий пожарный. Хотя лично я этим не пользуюсь.

Вставка парных тегов.

За быструю вставку парных тегов отвечает плагин TextFX Characters. Он не идет в стандартной конфигурации Notepad++ и устанавливается отдельно через Менеджер Плагинов. На самом деле, функций у него гораздо больше, но лично я пользуюсь только этой.

Для себя он даже создает отдельный пункт в главном меню — TextFX. Нам же следует включить следующую опцию: «TextFX» — «TextFX Settigs» — "Autoclose XHTML/XML .

Теперь, после ввода открывающего тега, закрывающий будет появляться автоматически. Только учтите, данная функция работает в документах с разрешениями.html и.xml, в php файле такого не будет.

Поиск и замена.

Для открытия поиска можно воспользоваться одноименным пунктом меню или сочетанием клавиш Ctr+F.

Имеется 4 вкладки и соответственно столько же функций поиска:

  1. Поиск — предназначен для поиска в текущем документе.
  2. Заменить — поиск и замена в текущем документе.
  3. Поиск/замена по файлом из заданного каталога.
  4. Поиск по пометкам.

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

Настройка кодировки.

Чаще всего необходимость менять кодировку файла связана с некорректным отображением русских букв. В этом случае в разделе «Кодировка» выбираем пункт «Кодировать в UTF-8 без BOM».

Вот так двумя щелчками мыши кодировка меняется со стандартной ANSI на UTF-8 без BOM. Не забудьте сохранить файл после внесенных изменений.

Light Explorer — удобный каталог файлов

Вот еще один замечательный легкий плагин — Light Explorer. Устанавливается стандартно, через встроенный Менеджер Плагинов. Позволяет сочетаем клавиш Alt+A открыть в колонке слева дерево каталог вашего компьютера.

Помогает очень быстро находить на компьютере и открывать на редактирование нужные файлы.

Встроенный ftp клиент — плагин NppFTP.

В Notepad++ по умолчанию доступен плагин NppFTP, который выполняет функцию ftp клиента. Это позволяет работать с файлами на сервере, не прибегая к помощи сторонних ftp клиентов. Экономит драгоценное время. Хотя я все-таки предпочитаю использовать .

Для включения ftp клиента можно воспользоваться кнопкой «Show NppFTP Window». Появится колонка справа.

Заходим в настройки профиля (Profile Settings).

В появившемся окне нажимаем «Add new» и вводим название нового профиля. Далее этот профиль следует настроить.

Вводим следующие данные:

  • Hostname — адрес сервера, к которому будем подсоединятся.
  • Username, password — имя и пароль учетной записи.

Все эти данные должны быть выданы вам хостом. После этого нажимаем «Close».

Теперь можно подключаться к нашему ftp и работать с фалами на нем.

Функций у бесплатного текстового редактора с подсветкой синтаксиса кода Notepad++ очень и очень много. Чтобы в этом убедиться, достаточно просто взглянуть на количество доступных плагинов. В этой статье я разобрал только те из них, которые наиболее часто используются на практике. Очень хочется услышать, какие еще плагины используют мои читатели. Так что не стесняемся, комментируем.

На этом все. Спасибо за внимание! Берегите себя!

Не для каждой задачи и не каждого проекта требуется полноценная IDE, поэтому для многих основным инструментом по-прежнему остается любимый текстовый редактор. И кажется, что выбор прост: мощный, расширяемый, но простой Sublime Text, живая классика в лице emacs и vim, а также моноплатформенные фавориты - Notepad++ для Windows, TextMate для OS X и Geany для Linux. Но ведь новые редакторы появляются чуть ли не каждый день - есть ли тебе смысл менять привычки? Давай посмотрим, что происходит.

Atom

Еще в августе 2011 года один из основателей GitHub Крис «defunkt» Уонстрат поставил перед собой амбициозную цель: создать редактор, который был бы по-настоящему открытым и предлагал неограниченные возможности для хакинга, но при этом не превращался бы во второй Vim или Emacs (который, как известно, умеет почти все, но только если у тебя мозги как у Джеффа Дина). И вот спустя три года и более чем пятнадцать тысяч коммитов началось публичное бета-тестирование. В марте этого года Atom стал доступен для загрузки всем желающим. Чем же собирается перевернуть наш подход к кодингу знаменитая компания?

Первое, что бросается в глаза при запуске нового детища GitHub, - это невероятно похожий на Sublime Text интерфейс. Само по себе это не минус. Известный факт, что интерфейс Sublime был вдохновлен другим, некогда не менее популярным редактором кода для OS X TextMate. Нынешняя история с Atom и Sublime лишь подчеркивает удачные решения GUI последнего.

Вторая особенность Atom заключается в том, что это, по сути, веб-приложение в обертке Chromium. Нет, конечно, у редактора есть своя иконка в доке, нормальные системные меню и поддержка нативных хоткеев. Просто ядро Atom написано по большей части на CoffeeScript, работает оно на Node.js, а сам интерфейс редактора является HTML-страницей со вполне обычной разметкой. Убедиться в этом можно, если выбрать из меню View пункт Developer -> Toogle developer tools.

Третья интересная фишка Atom - его модульность. В лучших традициях экосистемы Node.js он написан с использованием максимального количества открытых модулей (больше пятидесяти). Это значит, что если тебе не нравится какой-то штатный функционал, то, по уверениям разработчиков, ты без труда сможешь подобрать ему замену из более чем 70 тысяч пакетов в npm registry или написать свой плагин. Учитывая, что JavaScript фактически уже давно стал самым популярным языком на GitHub, и у CoffeeScript лишь немного отстает от Perl, это вселяет уверенность в будущее Atom.


А что же с киллер-фичами? Вот тут все не так радужно. То ли дело в молодости проекта, то ли еще в чем-то, но Atom, кроме громкого имени создателей и больших надежд, из коробки не предоставляет ничего, что бы могло заставить часами играться с ним. То, что преподносится разработчиками как преимущества (например, автокомплит, вкладки, коллапс кода, снипеты), может вызвать лишь снисходительную улыбку на лицах адептов Sublime. Да, конечно, Atom уже имеет свой пакетный менеджер, но я не нашел в его репозиториях ничего такого, что было бы нельзя реализовать с помощью плагинов для Sublime.

Light Table

Разработка Light Table началась в 2011 году, когда американский программист Крис Грейнджер решил, что процесс работы с кодом в современных текстовых редакторах недостаточно хорошо вписывается в современный workflow. Если кратко, задача Light Table - сделать процесс разработки по-настоящему интерактивным и наглядным, давая разработчику моментальный фидбек на любое действие, тем самым помогая быстрее ориентироваться в большом коде. Именно с такой идеей Крис подался на Kickstarter и достаточно быстро собрал на разработку проекта 316 720 долларов при заявленной цели в 200 тысяч. Чем же конкретно идеи Криса так приглянулись бейкерам?

Одной из самых крутых особенностей Light Table является возможность работать с документацией по ходу написания кода. Чтобы увидеть описание функции, достаточно просто навести на нее курсор. Редактор моментально найдет и выведет документацию по запрошенной функции или параметру (в случае с build-in методами) или покажет prepend-описание функции, оставленное прямо в коде. Чем-то это напоминает автокомплит, который используется в среде разработки Visual Studio от Microsoft, но значительно более глубокий и мощный.

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


Третья фишка Light Table - уникальная возможность организации кода в так называемые таблицы. Они представляют собой логически завершенные блоки кода, через которые можно наглядно представить взаимодействие отдельных функций программы. С помощью этой фичи очень удобно разделить файл на несколько независимых блоков-функций и работать с ними, соорудив некое подобие настоящего дашборда из кода. Также приятной особенностью является интеллектуальная подсветка блоков - в этом случае шансы запутаться в и без того наглядном workflow стремятся к нулю.


Несмотря на довольно непривычную философию, Light Table - это, несомненно, редактор нового поколения. Его фишка не в том, что он написан на модных технологиях, а в изменении самого подхода к процессу разработки сложного ПО. Наверное, при работе с простенькими JS-скриптами реальная мощь Light Table не почувствуется, но для проектов чуть посложнее он станет незаменимым инструментом. Нужно только привыкнуть. Но вот это как раз-таки будет непросто.

Lime

Весь Lime можно описать одной-единственной, но известной фразой Бобука - блеск и нищета опенсорса. Проект, начатый в прошлом году Фредриком «quarnster» Энбомом (Fredrik Ehnbom), решает одну-единственную, но понятную задачу: создать опенсорный конструктор по образу и подобию Sublime Text. Причина такого желания понятна - автор, горячий поклонник Sublime, был недоволен вялым развитием проекта и отсутствием банального исправления багов прошлых версий. Идея оказалась близка нескольким десятками единомышленников, и вскоре свет увидела первая версия Lime.

Первое, что отталкивает при знакомстве с этим редактором, - отсутствие хоть какого-нибудь подобия бинарных пакетов. В целом логика такого решения понятна: Lime - это и не цельное приложение, а набор из отдельного бэкенда на языке Go и пары фронтендов на выбор. Однако легче от этого не становится - попытка с наскока заставить Lime элементарно работать превращается в увлекательную возню с зависимостями Go, конфигами и прочими радостями жизни.

Что касается работы в этом редакторе, на данный момент она откровенно неудобна, и написать здесь о чем-то уникальном, по сути, нечего. Lime пока не может похвастаться даже теми функциями, которые в других текстовых редакторах воспринимаются как должное. Создается впечатление, что разработчики пока уделяют куда больше внимания архитектуре приложения и чистоте кода, чем функционалу. До некоторой степени ситуацию спасает частичная совместимость с API Sublime (ну и некоторых частей TextMate, соответственно), но, несмотря на это, с юзабилити у Lime остаются большие проблемы.

В целом на сегодняшний день Lime оставляет двоякое впечатление. Наверное, это здорово, когда твой рабочий инструмент полностью опенсорный и настолько гибкий. Но давай будем честны с собой: скольким из нас когда-либо придет в голову переписать фронтенд своего текстового редактора? Скольким из нас вообще придет в голову заниматься разработкой текстового редактора под себя из-за каких-то неудобств вместо того, чтобы использовать этот инструмент по прямому назначению - а именно писать в нем свои программы? Большинству разработчиков (особенно тем, кто не болен Столлманом головного мозга) за глаза хватит функционала Sublime Text и его системы плагинов для решения повседневных задач. Да и, если честно, за несколько лет ежедневной работы в Sublime я не встречал каких-то сверхкритичных багов, для которых бы не смог найти своего workaround’а. Так что на данном этапе по-настоящему Lime подойдет лишь упертым фанатам опенсорса с огромным количеством свободного времени и желанием сделать этот мир чуточку лучше.

Brackets от Adobe

Brackets - достаточно молодой (разработка ведется с 2011 года), но интересный проект от Adobe. Его цель незамысловата - создать минималистичную и комфортную среду разработки, которая бы требовала минимум усилий со стороны девелопера. На моей памяти было уже немалое количество проектов со схожими целями. Давай посмотрим, получилось ли у Adobe с помощью комьюнити сделать что-то интересное и на этом поприще.

На удивление, Brackets получился весьма неплохим. Все необходимое работает из коробки (после Lime даже это становится в некотором смысле плюсом). Проект действительно решает свою главную задачу - облегчает написание кода, хотя и делает это практически без каких-либо принципиально новых подходов. И кстати, в этом нет ничего плохого.

Brackets написан на HTML/JS (спасибо, что не Flash или Adobe AIR:)), тесно интегрирован с Node.js. Внешне из коробки производит весьма благоприятное впечатление (правда, не без налета некоторой игрушечности). Что меня подкупило с нажатия первой клавиши - так это потрясающий автокомплит для HTML/CSS/JS/jQuery. Он действительно умный и к тому же содержит множество приятных мелочей (например, встроенный color-picker или тулзу для гуишного подбора transition’ов в CSS).

Но главной киллер-фичей для меня стало inline-редактирование связанных участков кода. Это возможность посмотреть и отредактировать, скажем, набор CSS-свойства по его классу или ID-шнику прямо из HTML-файла верстки в отдельной области. Brackets в реальном времени анализирует структуру твоего проекта, строит дерево зависимостей и позволяет писать взаимозависимые участки кода, практически не покидая основного контекста файла. Признаюсь, именно такой функционал я пилил пару лет назад в своем простеньком текстовом редакторе (уверен, не я один). Так что подобная фишка не может не радовать.Из остальных особенностей можно выделить быстрый доступ к документации (правда, не настолько детализированный, как у Light Table), JSLint из коробки и симпатичный менеджер плагинов. Хотя, конечно, таким обилием пакетов, как у Sublime, Brackets пока похвастаться не сможет.

В целом, несмотря на поддержку в некоторой степени, например, Ruby или Python, Brackets ориентирован в первую очередь на фронтенд разработчиков. Он отлично справится с нуждами верстальщиков, в чем-то оставляя позади даже специализированные IDE. Ничего революционно нового, кроме inline-редактирования кода, ты в нем не найдешь. Однако то, что есть, сделано на совесть и с душой. Если ты преимущественно верстаешь или пишешь клиентский код на не слишком замороченном стеке, вполне возможно, Brackets придется тебе по душе.

Zed

Zed - это довольно хипстерский текстовый редактор, который также пытается переосмыслить современный процесс разработки ПО. Если Light Table пытается изменить сам принцип разработки, то Zed в основном ограничивается экспериментами с интерфейсом. Разработка была начата в 2011 году, и на сегодняшний день на официальном сайте Zed доступен в виде бинарников под основные платформы, а также в качестве приложения для Chrome Web Store.

Первое, что бросается в глаза при знакомстве с Zed, - отсутствие привычных элементов интерфейса вроде дерева проекта или вкладок. Достаточно спорный шаг, весь зачастую при разработке значительно легче ориентироваться в структуре проекта именно по дереву. Но вот в отсутствии табов некое рациональное зерно есть: обычно при работе с большими проектами количество открытых вкладок разрастается экспоненциально, и уже через полчаса работы приходится постоянно ходить по ним, закрывая то, с чем ты не работаешь в данный момент. В Zed же навигация по проекту осуществляется или с помощью прыжка напрямую к нужному файлу в проекте по его названию (Ctr/Cmd + E) через небольшую консоль в верхней части приложения.

Второй запоминающейся особенностью Zed является упор на многоколоночный интерфейс. Редактор поддерживает несколько фиксированных вариантов сплита рабочего пространства - 50/50%, 25/75% и так далее. Стоит отметить, что вторая (или даже третья) колонка предназначена не только для одновременного редактирования нескольких файлов, но также и для моментального предпросмотра кода на языках, требующих пропроцессинга (таких как Markdown или CoffeeScript).

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


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

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