LINUX.ORG.RU

Выпуск редактора CudaText 1.137.0

 , , ,


3

1

CudaText — это свободный, кросс-платформенный редактор кода, написанный на Object Pascal. Редактор поддерживает расширения на Python, и имеет несколько особенностей, позаимствованных из Sublime Text. На Wiki-странице проекта перечисляются преимущества над Sublime Text.

Редактор подойдет продвинутым пользователям и программистам (доступно больше 200 синтаксических лексеров). Некоторые возможности IDE доступны в виде плагинов. Репозитории проекта находятся на GitHub. Для запуска в Linux есть сборки на GTK2 и Qt5. CudaText отличается относительно быстрым запуском (около 0.3 секунды на CPU Core i3).

За 3 месяца с предыдущего анонса реализованы следующие улучшения:

  • Парсер исходных кодов теперь многопоточный, что дает сильное ускорение парсинга и убирает паузы раскраски на больших файлах. Работа велась последние 2 месяца, версия 1.133 с многопоточным парсером имела десяток релиз-кандидатов. К текущей версии ошибки многопоточного движка на 95% найдены и исправлены.

  • Сторонним пользователем было сделано несколько полезных плагинов:

    • Terminal Plus: терминал, по возможностям примерно равный плагину Terminal Plus из Atom.
    • Runner: запускатель внешних процессов, поддерживает «системы сборки» от Sublime Text 3.
    • LSP Client: поддержка протокола Microsoft LSP, плагин уже хорошо работает с серверами для Python, C++, C#, CSS/SCSS/LESS, JavaScript/TypeScript, Go, Rust.
    • Авто-дополнение в панели Консоль.
  • Улучшена логика Undo (Отмены). Теперь, например, одна правка с 50 каретками считается за «одно действие» и откатывается за один шаг. То же и с заменами: «Заменить все» с 50 вхождениями откатывается за один шаг. Видимо, именно такая логика Отмен используется в самых популярных редакторах.

  • Опция затемнения неактивных редакторов. Опция для разрешения темизации полос прокрутки в редакторе.

  • Tree-helpers для некоторых языков переписаны с Питона на Паскале и встроены в программу.

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

  • Проведена, в который раз, оптимизация работы с большими файлами и работы с гигантскими строками в десятки миллионов символов (например, однострочный XML дамп).

>>> Страница программы

Ответ на: комментарий от Alexey_Tor_

Баловство. Но если попробуете делать, помогу с API.

А есть какой-нибудь скрипт, который позволяет всё это собрать одной командой? Без того, чтобы ручками каждую зависимость собирать? Это бы очень помогло.

hateyoufeel ★★★★★ ()
Ответ на: комментарий от bender

(большие файлы и запрос пароля). А кто еще так же может?

Строки в 40 миллионов букв проверял на топовых редакторах. Сублиме еле шевелится! Cud работает хорошо. Vim еще пашет. Другие не могут какие смотрел. Cud ВСЕХ ПЕРЕИГРАЛ, ШАХ И МАТ. шутка.

Vim на таких строках форсит режим word wrap что мне не нравится. И не дает ходить по такой строке стрелками up/down.

Alexey_Tor_ ()
Ответ на: комментарий от Alexey_Tor_

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

anonymous ()
Ответ на: комментарий от Twissel

А почему CudaText ?

Видимо потому что ČudaText, типа ЧудоТекст; Čuda – общее слово для многих славянских языков. Задумка для выбора названия программы интересная, вот только жаль что «Cuda» пересекается с названием популярной технологии Nvidia. Поэтому возникают вопросы по типу использует ли этот редактор GPU и т. д.

EXL ★★★★★ ()
Ответ на: комментарий от anonymous

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

Тот же Sublime Text тоже с дизайном начала нулевых, и ничего, пользуются люди.

EXL ★★★★★ ()
Ответ на: комментарий от Alexey_Tor_

Русский язык для вас не является родным?

Спасибо большое за программу, хорошо что она легко открывает большие файлы. Это больше камень в огород редакторов Kate и Gedit, которые грузят файл в RAM и если попытаться открыть ими что-то большое, это превращается в кошмар.

P.S. Заметил небольшой глитч в версии программы, которая работает с Qt 5 – при выделении текста курсором у прямоугольника имеется заливка цветом. В версии GTK+2 такого нет:

Удачи и успехов вам в развитии своей программы. Софта на Pascal сегодня не так много.

EXL ★★★★★ ()

Для запуска в Linux есть сборки на GTK2 и Qt5

А вроде как для фрипаскаля был ещё некий fpGUI, на котором LCL тоже может работать и не привязанный ни к Qt, ни к GTK. Не пробовали его? Или он таки не готов?

Удачи Вам! Выбор — это всегда хорошо. С одной стороны, свой текстовый редактор только ленивый не написал, а как начинаешь искать годные — выбора-то и не так много…

hobbit ★★★★★ ()
Последнее исправление: hobbit (всего исправлений: 1)

CudaText отличается относительно быстрым запуском (около 0.3 секунды на CPU Core i3).

Интересно, как оно будет на Raspberry Pi 3 :) (Лазарус малинку поддерживает, если что.)

hobbit ★★★★★ ()
Последнее исправление: hobbit (всего исправлений: 1)

Попробовал собрать lpi проект. Поставил зависисмости. Нажал из Lazarus компилировать.

AppManager.InitLibrary(AppDir_Lexers, SErrorLines); if SErrorLines<>'' then

proc_globdata.pas(3079,53) Error: Wrong number of parameters specified for call to «InitLibrary»

ec_lexerlist.pas(121,24) Error: Found declaration: InitLibrary(const AnsiString);

а я собраю master мб он сломан?

sniper21 ★★★★★ ()
Последнее исправление: sniper21 (всего исправлений: 1)
Ответ на: комментарий от wandrien

Так и надо писать Č. Что за боязнь выйти за пределы 7-битной кодировки. :P

Тогда уж в сторону ChudaText.

Куча всяких сервисов до сих пор не поддерживают что-то большее чем ASCII. Например, репозитории пакетов. Или вот тот же GitHub, насколько я помню.

EXL ★★★★★ ()
Ответ на: комментарий от sniper21

а я собраю master мб он сломан?

Я при сборках софта с GitHub’а всегда отталкиваюсь от релизного тега:

git clone https://github.com/Alexey-T/CudaText -b 1.135.0 --depth=1

Попробуй переключится git checkout 1.135.0 на последний релизный тег.

И там ещё зависимости нужно поставить, и версии используемого ПО – Lazarus 2.0, Free Pascal 3.2.0.

EXL ★★★★★ ()
Ответ на: комментарий от Alexey_Tor_

Cud работает хорошо.

Ну так технологии 20-летней давности. Тогда компьютеры были слабенькими и люди головой думали над написанием интерфейсов, а не создавали монстров под 200МБ ради пары кнопочек.

AlexVR ★★★★★ ()