E це вже не перший текстовий редактор для Windows, чиї розробники надихнулися маківським TextMate. Ще в минулому році я писав про InType цікавий проект, який дуже неспішно розвивається. За великим рахунком, від E я теж не очікував сенсаційних відкриттів, але все ж встановив пробну версію. І не марно.
Інтерфейс
Відразу впадає в очі незвичайна деталь сувора орієнтація на управління з клавіатури. Звичний для Windows-програм тулбар начисто відсутній, а майже для всіх команд меню визначені гарячі клавіші. У тому числі це стосується сніппетів, про які піде мова окремо.
Насправді, UI E начисто позбавлений пафосу, що приємно
З моєї точки зору, таке рішення дуже правильно, оскільки при роботі з текстом я і без того віддаю більшу перевагу клавіатурі, ніж миші, а нагромадження різнокольорових кнопок створює зайвий візуальний шум. Тим не менш, відмова від звичних кнопок copy/paste знайде зізнання з боку далеко не будь-якого користувача. Занадто радикальна зміна.
Загалом і в цілому інтерфейс радує обґрунтованим мінімалізмом.
Функціональність
Базові можливості Е досить великі. Зустрічаються навіть оригінальні деталі для редакторів такого класу:
- Ви можете виділяти довільну кількість текстових блоків (приблизно як MS Office). Для текстового редактора це мало не унікальна фіча. Навіть в EmEditor такого немає. Так само можливе виділення вертикальних текстових блоків, але це вже не так цікаво і багато де реалізовано.
- Передбачено досить оригінальну можливість копіювання вводу. Вона може бути використана для набору однакових фрагментів тексту в різних частинах файлу. Зрозуміти, як це працює і в яких випадках застосовно, найпростіше подивившись скрінкаст на офіційному сайті.
- Підтримка пакунків TextMate (bundles).
- Безліч інших, менш значущих, але корисних можливостей: таби (куди ж без них); пошук за регулярними виразами (оу, йез!); підтримка будь-яких кодувань, включаючи Unicode; автозавершення слів; списки to-do, автоматично генеровані з коментарів у тексті; угруповання файлів у проекти; редактор тем, з можливістю збереження схем кольорів; вбудований web-preview; синтаксичне підсвічування для якого завгодно синтаксису; інтеграція з системами контролю ревізій через TortoiseSVN і TortoiseCVS.
Пакунки
Тепер, найцікавіше.
Набори снипетів досить звична деталь, поширена в багатьох девелоперських редакторах. Зазвичай він виглядає як триповерхове меню, заповнене десятками, якщо не сотнями, шаблонів. На практиці не дуже корисна річ, тому що часто буває легше швидко набрати текст руками, ніж згадувати, де саме знаходиться відповідний шаблон.
В E справи зі снипетами йдуть інакше. На перший погляд, меню Bundles, в якому вони зібрані, дійсно пригнічує своєю перевантаженістю. Тим не менш, його вміст організовано досить розумно.
Кожен bundle це не просто набір текстових заготовок, а пакет, що розширює функціональність редактора. В E такі пакети асоціюються з різними синтаксичними схемами, для кожної з яких передбачено не тільки набір команд для вставлення типових фрагментів тексту, але й ряд більш інтелектуальних операцій.
Наприклад, автозавершення слів і синтаксичних конструкцій, коментування або розкоментування виділеного фрагмента, виконання скрипту (або тільки поточного рядка) інтерпретатором, візуальний вибір кольору (дуже зручно для вставлення HEX-кодів у CSS), алфавітне сортування рядків. Я навів лише кілька прикладів для ілюстрації розкиду можливих операцій; перераховувати все безглуздо, оскільки їх кілька сотень.
Цікавим моментом є те, що гарячі клавіші для ідентичних за змістом команд з різних пакетів часто збігаються, а їх вибір відбувається автоматично, залежно від активної синтаксичної схеми. Так Ctrl-R запускає скрипт, незалежно, на Python він написаний або на Perl. Завдяки цьому доведеться запам'ятовувати менше поєднань клавіш і рідше копирсатися в меню мишкою.
Як вже було сказано, набір пакетів можна розширювати тими, що вже розроблені для TextMate. Їх можна знайти в SVN-репозиторії на офіційному сайті проекту. На час написання цього тексту, там знаходиться 153 пакети з різною спеціалізацією. Є, наприклад, bundle для роботи зі списками завдань у стилі GTD.
Деякі мінуси
Щоб зробити цей огляд більш повним, перелічу так само деякі негативні деталі.
- Відразу після установки, E ставить перед фактом власної необхідності в cygwin і автоматично скачує цілий ворох пакетів (включаючи досить важкі Perl, Python і Ruby). Всі разом вони займають близько 30-40 Mb. Було б розумно мати можливість скачувати все відразу, у вигляді одного файлу. Інакше повноцінна установка стає залежною від наявності доступу в інтернет.
- Процес завантаження бандлів займає кілька секунд після старту програми. Все реалізовано досить грамотно (починати працювати з текстом можна не чекаючи закінчення завантаження), але від текстового редактора все ж зазвичай чекаєш більшої прудкості. Все-таки, не Фотошоп.
По суті, недоліки незначні і простимі.
Так, мало не забув. $34.95.
Посилання на тему
- Офіційний сайт E і пряме посилання на тріальну версію.
- Віки з документацією.
- Скрінкаст, що дає уявлення про роботу з регулярними виразами в E.
- Сайт TextMate і бібліотека його розширень.
- Стаття про E у Вікіпедії.
Це кросспост з сайту paradigm.ru.