Atom (текстовий редактор)

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
Atom
Atom на GNOME 3
Тип інтегроване середовище розробки
Розробник GitHub Inc.
Перший випуск 26 лютого 2014; 10 років тому (2014-02-26)[1]
Стабільний випуск 1.60 (8 березня 2022; 2 роки тому (2022-03-08))
Операційна система OS X 10.8 або пізніші, Windows 7, 8, 10 Linux
Мова програмування C++ / Node.js / CoffeeScript / JavaScript / CSS / HTML
Стан розробки не підтримується
Ліцензія MIT License (вільне програмне забезпечення)
Репозиторій github.com/atom/atom
Вебсайт atom.io

Atom — розроблений компанією «GitHub» вільний текстовий редактор і редактор коду, який може використовуватися як самодостатнє рішення, так і у ролі технологічного стека для побудови різних спеціалізованих рішень. Зокрема, на платформі Atom побудовані середовища розробки «Visual Studio Code» від компанії «Microsoft» і «Nuclide» від «Facebook».

Проєкт був представлений компанією GitHub у лютому 2014 року.[1] Перший стабільний випуск 1.0 побачив світ 25 червня 2015-го.[2][3] Початковий код проєкту поширюється під ліцензією «MIT».

Про редактор[ред. | ред. код]

Atom надає засоби кросплатформового редагування коду, включає вбудований пакетний менеджер і інтерфейс навігації файловою системою, надає засоби для одночасної спільної роботи з кодом, має інтелектуальну систему автодоповнення вводу, надає режими сумісності з Vim і Emacs, підтримує API для розробки розширень. Кілька файлів можуть бути відкриті в різних вкладках і одночасно показані з використанням вертикального або горизонтального розбиття панелей. Інтерфейс може налаштовуватися через теми оформлення, підтримуються вкладки, закладки, розумний контекстний пошук коду, схлопування блоків коду, одночасне використання декількох курсорів і областей виділення, наочна позначка змін, автодоповнення та перевірка коду для різних мов (Ruby, Python, SQL, PHP, Perl, Objective-C, C/C++, JavaScript, Java, Go тощо). Для формування статей та документації може бути використана розмітка Markdown.

Функціональність редактора формується внаслідок надання набору пакетів-доповнень, для установки яких пропонується вбудований пакетний менеджер apm, схожий на npm від проєкту Node.js. Формат пакунків аналогічний npm і відрізняється наданням деяких додаткових блоків для визначення меню, стилів, клавіатурних комбінацій, завдання логіки активації. Розробка доповнень мало чим відрізняється від створення програми для Node.js, у тому числі доступні всі модулі Node.js, а також популярні JavaScript-бібліотеки, такі як jQuery, Underscore і SpacePen. Через доповнення реалізовані всі функції, що виходять за рамки базового редагування коду, в тому числі панелі, підсвічування синтаксису, оформлення інтерфейсу, форми роботи з файлами тощо. Крім базових доповнень надається каталог сторонніх пакетів, в якому вже присутні понад дві тисяч доповнень і майже сімсот тем оформлення.

Основу Atom становить компонент Electron (раніше Atom Shell), що становить собою засноване на Chromium і Node.js ядро, поверх якого реалізований редактор. Electron поставляється у формі самодостатнього фреймворку, який можна використовувати для створення довільних користувацьких застосунків, логіка роботи якого визначається на JavaScript, HTML і CSS, а функціональність може бути розширена через систему доповнень. Розробникам доступні модулі Node.js, а також розширений API для формування нативних діалогів, інтеграції застосунків, створення контекстних меню, маніпуляції вікнами, взаємодії з підсистемами Chrome.

Необхідність використання власного браузерного ядра на основі Chromium, замість оформлення редактора у формі вебзастосунку, що працює у звичайному браузері, обумовлена ​​необхідністю реалізації додаткових можливостей, недоступних через звичайний Web API. Наприклад, Atom надає вбудований файловий менеджер і гнучкі засоби пошуку файлів, які неможливо реалізувати при використанні звичайних вебзастосунків. У редакторі також безпосередньо використовуються деякі внутрішні підсистеми Chromium, такі як рушій обробки регулярних виразів і нативні елементи формування діалогів. Крім того, оскільки компоненти Atom завжди виконуються локально, спрощується розробка доповнень, звернення до ресурсів і розмежування доступу.

Примітки[ред. | ред. код]

  1. а б Introducing Atom. Atom Blog (англ) . 26 лютого 2014. Архів оригіналу за 3 листопада 2017. Процитовано 27 червня 2015.
  2. Announcing Atom 1.0. GitHub. 25 червня 2015. Архів оригіналу за 25 червня 2015. Процитовано 27 червня 2015.
  3. GitHub выпустил среду редактирования кода Atom 1.0. OpenNET. 25 червня 2015. Архів оригіналу за 30 червня 2015. Процитовано 27 червня 2015.

Посилання[ред. | ред. код]