LINUX.ORG.RU

clcon 0.2.2

 , , ,


0

6

Выложил файловый релиз clcon - проекта IDE для Common Lisp. Фронтенд - tcl/tk, бекэнд - SWANK. Состояние - ранняя альфа или работающий прототип. Общая цель - сделать среду для лиспа более простую в освоении, чем EMACS, и с пермиссивной лицензией.

Файловый релиз нужен для того, чтобы кардинально упростить процедуру установки под Windows. Установив ActiveTcl и распаковав один архив, получаем работающий SBCL с настроенным quicklisp и настроенными исходниками SBCL для просмотра.

Подробности на сайте проекта и в предыдущих темах:

https://www.linux.org.ru/forum/development/11930044

https://www.linux.org.ru/forum/development/11841956

★★★★★

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

Не очень интересно. Что там в slime такого неподъёмного, что так сложно осилить? А тут ещё тикль какой-то. Не, нафиг

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

Что там в slime такого неподъёмного, что так сложно осилить?

Он же объяснял, slime - это емакс и лисп, очень сложный редактор и очень сложный язык, маленькое сообщество, никакая поддержка, а вот зато clclon... ah whatever.

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

А мне тикль нравится сам по себе. Сколько я не делал в своей жизни ГУЙ, всегда меня от этой работы тошнит. Ну и никогда я его не доделывал до конца. А с тиклем делать гуй достаточно приятно и он даже получается более-менее сносным.

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

Есть небольшие новости - сделал для редактора команду «скомпилировать и загрузить файл». Вот сейчас пишу и понимаю, что она должна подавать перед своим выполнением запрос на сохранение файла, но это не сделано. Зато сделан просмотр списка ошибок. Плохие ошибки раскрашиваются в красный цвет. Ошибки сортируются - сначала идут плохие по порядку, потом остальные по порядку.

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

Сделал в дебаггере команды «вернуться из кадра стека» и «вычислить в кадре стека». Это не от хорошей жизни, а из-за того, что одуванчик плавающим образом рушится (зацикливается или выпадает в отладчик), особенно под офтопиком. Ну и ещё сделал несколько мелочей. Например, файлы всегда сохраняются в utf-8 и с юниксовым стилем завершения строки.

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

Осаждая проблему ломающегося одуванчика, починил юникод. Раньше при отправке не-ascii буквы swank закрывался. Теперь код и файлы для редактирования могут содержать уникодные буквы (среда считает, что все файлы - в utf-8).

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

Сделал интерфейс к степперу и редактор с закладками

Кто забыл, ссылка на репозиторий проекта clcon здесь

Также у меня есть find-source для tcl, который обсуждался тут

Он работает не с помощью грепа. Он вместо этого меняет команду proc и записывает местоположение исходника по ходу загрузки. Поэтому я могу скакнуть на определение своей функции, а также функций из библиотеки (например tablelist или snit) за одно нажатие кнопки, не изучая вопрос о том, а где же находятся соответствующие исходники. На comp.lang.tcl мне не смогли ответить, в какой ещё IDE для tcl есть такая фича.

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

Сегодня успехи скромные - занимался другим в основном. Но сделал поиск с заменой. Правда и багу в нём уже одну исправил. Не знаю, может и работает. Кажется, начинаю понимать, почему не работает одуванчик - проблема в моём коде. Но могу и ошибаться.

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

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

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

Выложил версию 0.2.6 под офтопик. Новостей немного. Из расширений - поиск по файлам. В отличие от EMACS, который бросает результаты всех поисков в один и тот же буфер *grep*, моя среда каждый новый результат кладёт в новое окно. Наверное, в EMACS это тоже можно настроить, но я не знаю как. А так, из коробки у меня удобнее. А так в основном улучшаю качество работы редактора в плане его стабильности. В принципе, можно сказать, почти уже работает.

https://bitbucket.org/budden/clcon/downloads/clcon-0.2.6.zip

Ещё я, видимо, сделал удачное дизайнерское решение - у меня совмещена консоль для команд редактора и для команд лиспа. Да и между самими этими командами нет чёткой границы. Часть команд среды написана на лиспе, в том числе и поиск по файлам. Очень удобно, что история команд среды (поданных с клавиатуры, а не через меню) видна на экране. Получается такая вот консольная идеология. В EMACS, конечно, тоже консольная идеология, но консоль в EMACS узковата - большую часть времени она имеет высоту в одну строчку. Когда в эту единственную строчку редактор пытается вывести сразу два «модальных» сообщения, получается особенно некрасиво.

Я сомневался в том, будет ли совмещённая консоль удобна. Пока что похоже на то, что удобно. Ещё думаю, как бы сделать так, чтобы можно было повторять из консоли команды, поданные из меню. Чтобы команда меню превращалась в некий текст, который можно поправить и повторно выполнить с консоли. Само по себе это несложно реализовать, просто этих команд может быть очень много и консоль будет забиваться «мусором».

Хотя вряд ли у меня есть ресурсы на подобные изыски.

den73 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.