Geany: інтегрована середа розробки додатків, Linux, Операційні системи, статті

Передмова
   
   
3 роки тому мені потрібна програма для реалізації проекту з побудови сайту засобами XML + XSLT. Однак знайти таке ПЗ в далекому 2005 було вельми непросто. Більшість додатків подібного роду (а мені була потрібна саме IDE – Integrated Development Environment, “інтегрована середа розробки”) були написані на мові Java: знаменитий jEdit, молодий тоді ще Eclipse, платний XML-редактор oXygen з деякими функціями IDE.
   
Незручності полягали в наступному: постійне “пожирання” пам’яті віртуальною машиною Java на моєму досить не потужному ПК давало про себе знати приблизно кожні півгодини – з великою кількістю тексту програми не справлялися; відсутність додаткових можливостей, таких як вбудований файловий менеджер, термінал, позначалося на моїй продуктивності, тому що кожен раз доводилося “бігати” по файлової систему у пошуках потрібної інформації і використовувати її для компонування.
   
Звичайно, були і рідні аналоги: у Bluefish я зробив кілька простих Web-сторінок, але для роботи з серйозним проектом її було явно недостатньо. Багато запитають про KDevelop або Anjuta, остання з яких на той час був взагалі в непотрібному стані. Але дані пакети тягнули за собою безліч залежностей з бібліотек, а про їх стабільності і говорити не доводилося. Крім того, для того ж створення графічного інтерфейсу був розроблений Glade.
   
   
    Перше знайомство
   
   
Бажання знайти щось підходяще було сильніше ліні, тому як це могло спростити роботу не тільки над поточним проектом, але і в майбутньому по спеціальності взагалі. Блукаючи по просторах Мережі, я наткнувся на реліз Geany 0.1. Тоді сайт geany.uvena.de виглядав вельми примітивно і блякло на тлі домашніх сторінок багатьох інших закінчених проектів. У той же час він був зручний для навігації і володів вичерпної інформацією про програму та її можливості. У перших версіях вони були невеликі, але дуже чітко позначені і мали якусь логічну завершеність: це редактор з підсвічуванням синтаксису основних мов (C / C + +, Java, Perl, PHP, XML); список відкритих файлів (вкладок) для редагування; підтримка різних типів закінчення рядка і кодувань; автоматичне доповнення в XML-тегах.
   
Але найголовніше, що мене тоді залучило в програмі – це її розмір при такій кількості можливостей. Усього кілька десятків кілобайт. Цей досить легкий і швидкий редактор з можливостями IDE відразу показав себе з хорошого боку, коли я написав першу завершену частину проекту (він був присвячений Сталінградській битві, тому нескладно уявити, скільки текстової інформації довелося обробити і зберігати одночасно в вікнах Geany).
    
    
    
    
    Основні можливості
   
   
З плином часу проект розвивався (перші 5 релізів виходили з частотою в 2-3 тижні), і кількість можливостей Geany постійно збільшувалася. При цьому зберігався принцип KISS (Keep It Simple, Stupid), який так нелегко відшукати в сучасних проектах. Програма залишалася легкої, швидкої і функціональною. Отже, на сьогоднішній день Geany – це:


   
Потрібно сказати, що останнє – дуже важлива особливість, якої не вистачає багатьом сучасним IDE. Завдяки ній, програму легко “напихати” новим функціоналом від сторонніх розробників.
   
   
    Секрети майстерності
   
   
Звичайно ж, основа будь-якого, навіть самого простого, але зручного редактора для програміста – це підсвічування синтаксису. У Geany не свій движок, написаний з нуля. Енріко Трогера (Enrico Troger), чудовий програміст, який написав кілька програмних продуктів для робочого середовища XFCE, пішов по шляху найменшого опору: в Geany він використовує напрацювання людей, що спеціалізуються на підсвічуванні синтаксису, – движок Scintilla, Якому дуже багато років, але його розробка до цих пір йде в правильному напрямку.
   
Після того, як проект встав на ноги, потрібна була чергова корисна можливість – наявність вбудованого термінала. Використовуючи бібліотеку VTE, реалізувати його було досить просто. Зате після появи терміналу Geany дозволила користувачам відмовитися від зайвих вікон для прямої роботи з проектами.
   
Таким чином, Geany на перших стадіях, можливо, і не представила нічого надприродного для IDE – вона лише увібрала в себе все краще від існуючих бібліотек і надала до цього зрозумілий, простий і зручний інтерфейс.
   
В одному з останніх релізів з’явився модульний API, в результаті чого деякі функції (вбудований файловий менеджер, автозбереження, створення diff-файлів, експорт та ін) були винесені в модулі, які можна вмикати / вимикати за допомогою менеджера плагінів в програмі.
   
Модульний інтерфейс зробив програму дуже потужним інструментом, завдяки якому тепер можна підвищувати не тільки свою продуктивність, але і швидкість завантаженості / роботи самої Geany. Непотрібні модулі відключаються простим кліком мишки.
   
   
    Налаштування
   
   
Управління всім функціоналом, який зараз здатна надати Geany, дуже важливо правильно організувати. Налаштувань дійсно багато:


    
    
    
    
    Шаблони і модулі
   
   
Розвиток успішного проекту спричинило за собою інтерес сторонніх розробників. Моє перше лист до Енріко полягало у проханні додати підсвічування синтаксису для мови Lua і шаблон для ліцензії BSD. З тих пір багато допомагали покращувати програму і нарощувати функціонал.
   
Крім безлічі шаблонів, серед яких – різні ліцензії, базові конструкції програм, час / дата та інше, в даний час створено кілька проектів, що займаються розробкою модулів для Geany:


   
Більшість з них написано ентузіастами, яким не вистачало в Geany якої-небудь важливої ​​для їх користувацького процесу дрібниці. Крім того, існує список плагінів, Представлений користувачами в якості побажань до наступних версій. Багато сторонні розробники беруть з нього ідеї і створюють цілі серії плагінів для Geany.
   
   
    Додаткові можливості
   
   
Багато дрібниці в Geany можуть приємно здивувати. Наприклад, кнопка з діалоговим вікном вибору кольору буде особливо корисна Web-розробникам, коли не потрібно відкривати графічний редактор або допоміжну програму для перегляду Web-інтерпретації колірного відтінку.
    
    
    
Звичайно ж, пошук і автоматична заміна для будь-якого редактора є обов’язковою. Geany тут не виняток. Перехід до конкретної рядку у файлі у вигляді зручного віконця в панелі інструментів також допомагає при навігації. Автоматична заміна всіх символів на прогалини може допомогти розробникам на мові Python правилам PEP-8.
   
   
    Підтримка
   
   
В даний час підтримка проекту здійснюється безліччю людей: основними координаторами проекту, перекладачами (за час існування Geany програму перевели на 22 мови світу), що висилають патчі щодо поліпшення можливостей і виправлення помилок (їх список можна побачити тут). У проекту є безліч засобів зв’язку: IRC-канал # geany на Freenode (irc.freenode.net), списки розсилки для користувачів (geany), Перекладачів (geany-i18n) І розробників (geany-devel), А також, звичайно, електронна пошта.
   
   
    Висновок
   
   
Ось так, через 3 роки з крихітного проекту розвинулася повноцінна IDE, що займає високі місця в рейтингах і отримує відмінні оцінки серед фахівців. Але найголовніше, що світу Open Source дістався продукт, який цілком може конкурувати з тим же Komodo від ActiveState, перевершуючи останнього в продуктивності і функціональної потужності.

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*