лексер Text IMproved

dimon40001
Posts: 21
Joined: 05.05.2022 18:52

лексер Text IMproved

Post by dimon40001 »

Всем привет.

Закончил парсер для текстовых файлов с поддержкой отступов и подстветкой синтаксиса.

Изначальная идея была "совместить" подсветку существующего лексера для Python и возможность построения code tree на основе отступов как в Text with indentation
Я активно использую текстовые файлы для хранения заметок, закладок браузера и т.д. и со временем пришел к такому формату разметки (наполовину markdown - наполовину Python-style).

Буду признателен за отзывы и пожелания.

Выглядит вот так:

https://github.com/dimon40001/cudatext- ... e-text.png

Файлы для установки:
https://github.com/dimon40001/cudatext- ... xtimproved
Last edited by dimon40001 on 04.08.2022 20:26, edited 2 times in total.
main Alexey
Posts: 2245
Joined: 25.08.2021 18:15

Post by main Alexey »

Хорошая работа. Правда довольно специфичная, люди редко будут брать, так что не для addon-manager.
dimon40001
Posts: 21
Joined: 05.05.2022 18:52

Post by dimon40001 »

Мне давно такое хотелось, так что пришлось засучить рукава. Долго сидел на Notepad++, но по сравнению с CudaText он убожество реально. Там можно включить режим Python, тогда блоки буду сворачиваться (по аналогии с Text with indentation), но в Code Tree там ничего не попадет.

Ну и в целом, познакомившись поближе, стало обидно, что такой крутой кросплатформенный (!) редактор явно недооценен. Так что, вот, посодействовал как мог.

Там была проблемка с токенизацией по одной букве (мы обсуждали в отдельной теме). В итоге удалось это нормально реализовать, чтобы токенизировались слова целиком.
main Alexey
Posts: 2245
Joined: 25.08.2021 18:15

Post by main Alexey »

я приветствую увеличение популярности. через - youtube video, Habr-пост и т.п.
рад что Куд пригодился.
Hobbes
Posts: 42
Joined: 17.05.2022 07:53

Post by Hobbes »

Sorry for write in English here, but don't know Russian (neither I have Russian keyboard).

I also write notes in text files (both work and personal issues) and I've tried some different Markup languages. At the end, I only use tabulations to structure the text. For me, is the easiest and cleanest way... and if I need something more complex, I always have HTML+CSS.

So your parser is a great discover, is like a Markup language without marks, and works incredible fine with all my text notes (the Code Tree feature is great). Good work.

If you haven't already done, I would recommend you to talk about it also in English forum (I've read here by chance).
mix-7
Posts: 741
Joined: 11.05.2018 11:02

Post by mix-7 »

Отлично!
Спасибо!

Очень красиво, это же готовый аутлайнер.
Огромное подспорье - сворачиваемое дерево заголовков Сode Tree с поиском и фильтрацией по ключевому слову.

Для каких расширений имен файлов работает этот лексер?

Если б еще адаптировать плагин Zettelkasten ...

(см. сообщение )

Хотя бы в плане прямых и обратных ссылок и ссылок на абзац файла.
mix-7
Posts: 741
Joined: 11.05.2018 11:02

Post by mix-7 »

Лексер Text with indentation - это он, лексер Text IMproved (новый)?
mix-7
Posts: 741
Joined: 11.05.2018 11:02

Post by mix-7 »

main Alexey wrote:я приветствую увеличение популярности. через - youtube video, Habr-пост и т.п.
рад что Куд пригодился.
Если б реализовать что-то похожее на Zim - a desktop wiki
https://zim-wiki.org/ , можно рекламировать как универсальный редактор с возможностью вести Базы Знаний (БЗ, Цифровые сады, Zettelkasten, P.A.R.A., LYT и т.п.) в соответствующих темах.
main Alexey
Posts: 2245
Joined: 25.08.2021 18:15

Post by main Alexey »

Лексер Text with indentation - это он, лексер Text IMproved (новый)?
нет, text with indentation это только основа Subj.
dimon40001
Posts: 21
Joined: 05.05.2022 18:52

Post by dimon40001 »

mix-7 wrote:Отлично!
Для каких расширений имен файлов работает этот лексер?
Если б еще адаптировать плагин Zettelkasten...
Лексер работает для любых файлов. Будет подствечиваться синтаксис и строиться дерево-аутлайнер на основе табуляций.

Zettelkasten - это уже требуется создание плагина, а не лексера. Я смотрел Zettelkasten и Obsidian - меня не вдохновило. Не люблю немцев )
mix-7 wrote:Лексер Text with indentation - это он, лексер Text IMproved (новый)?
Нет. Text with indentation идет "из коробки" как демонстрация возможностей сворачивания блоков на основе табуляции.

Text IMproved - это отсылка к текстовому редактору vim (vi improved) в среде Unix / Linux. И включает подстветку синтаксиса + дерево заголовоков на основе отступов.
Ключевая идея как раз в том, что мне не нравится разметка заголовков в стиле wiki. Она не дает наглядности при редактировании в отличие от отступов.
Post Reply