CudaText - Пожелания

Alexey
Posts: 1633
Joined: 05.10.2012 22:10

Post by Alexey »

AleXY
Posts: 35
Joined: 19.03.2020 19:17

Post by AleXY »

Alexey wrote:ExtTools дает варианты вывода тула - Output panel, Outout panel/append. не работает?
Alexey, вы правы! Вариант "Output panel" работает, как надо! Оказалось, что я суть "append" трактовал не правильно - я думал, что имеется в виду отображать результат в панели вывода и если она закрыта (неактивна), то отобразить ее - сделать на ней фокус - с результатом! Думая так, я изначально выбирал только этот вариант и просто "Output panel" даже не проверял. А оказалось, это как метод append для строк, массивов... Не сообразил сразу, сам виноват, а rar`чик просто открывался...
Alexey wrote:проверьте что будет если явно вызвать Еммет...
Что делать?
Вы снова правы - это эммет. Блин... надо и то и другое... Я не досконально не знаю, как именно эммет распознает свои аббревиатуры, но предполагаю, что они в его лексическом процессоре захардкожены и должны отзываться только на "свои" сокращения. Проверил в VSCode с имеющимся в нем эмметом и моё сокращение "bs4bp" он не распознал и никак не отреагировал - просто вставилась табуляция. Т.е., как я понимаю, если эммет мою аббревиатуру не матчит со своим списком, он молчит. Тут-то по идее и должен подхватываться механизм сниппетов и матчится в нем. В общем, что можно попробовать сделать. 1) самое простое - поменять местами приоритет плагинов на cuda_snippets, cuda_emmet; 2) может, ввести возможность назначения хоткея на разворачивания сниппета? Например, не на TAB, а на CTRL+TAB. Но тут на эксперементировать по удобству (это если по-быстрому захардкодить хоткей). Вот, кстати, поэтому я и упоминал выпадающее меню, чтобы при вводе первых символов, например, "bs4" появлялась панель автоподстановки, в которой и отображались бы варианты из плагинов: сначала из сниппетов, потом из эммета (но именно здесь он не обязателен), внутренний механизм автоподстановки простых тегов. Как-то так. Всё это, конечно, мысли.
AleXY
Posts: 35
Joined: 19.03.2020 19:17

Post by AleXY »

Alexey wrote:Обновил плагин Snippets чтобы он вызвался до плагина Emmet.
Опередили мое пожелание до его высказывания! )))
AleXY
Posts: 35
Joined: 19.03.2020 19:17

Post by AleXY »

Alexey wrote:https://github.com/Alexey-T/CudaText/issues/2452
баг повторил.
т.е. у вас он тоже проявился?
Alexey
Posts: 1633
Joined: 05.10.2012 22:10

Post by Alexey »

Multi-line python strings- fixed, бета обновлена, тот же url.
Alexey
Posts: 1633
Joined: 05.10.2012 22:10

Post by Alexey »

Насчет списка тегов, пока не четко понятно что и откуда давать в список- при вводе fo показывать все теги из autocomplete, Emmet, snippets?
Alexey
Posts: 1633
Joined: 05.10.2012 22:10

Post by Alexey »

Насчет общего списка autocomplete- тут надо менять plugin api и потом под него менять плагины Snippets/Emmet (пока что только 1 плагин отвечает на событие, и дает ответ в таком формате что общий список не сделать)
AleXY
Posts: 35
Joined: 19.03.2020 19:17

Post by AleXY »

Alexey wrote:Обновил плагин Snippets чтобы он вызвался до плагина Emmet.
Отлично! Теперь работает, как ожидается, спасибо! Потестил в разных условиях и заметил, что аббревиатура "ul>li" разворачивает в "ul><li></li>", не затрагивая "ul>". Но если если явно вызвать Эммет, то всё отрабатывает корректно. А уже "ul>li*2" сразу по TAB`у разворачивает правильно. Я так понимаю, на аббревиатуре "ul>li" Эммет еще не подключается? Почитал в Wiki, что для плагина Snippets в short id допустимы letters, digits, '_', dot. Т.е. символ ">" недопустим и по идее Snippets должен пропускать такое мимо и подключаться уже Эммет, который на TAB молчит. Это происходит из-за перемены местами приоритета плагинов?

И подскажите, Emmet не работает в CSS?
Alexey wrote:Multi-line python strings- fixed
Всё работает, спасибо!

По поводу сессий. Заметил новую особенность: если сохранить измененный файл в сессию, то лексер после восстановления уже подгружается корректно (спасибо!), но не подгружается иконка вкладки, в т.ч. после явного сохранения файла. Переоткрытие вкладки помогает.

Еще заметил в External Tools (заметил давно, но забыл написать) в колонке Hotkey не отображаются назначенные хоткеи. В палитре команд видны.
Alexey wrote:Насчет списка тегов, пока не четко понятно что и откуда давать в список- при вводе fo показывать все теги из autocomplete, Emmet, snippets?
Я это понимаю так (снизу вверх): список синтаксических тегов входит в базовую функциональность редактора и вообще не предполагает какой-либо самостоятельной кастомизации, должен иметь наименьший приоритет и иметь возможность "перекрываться" плагинами (а-ля классическое наследование в ООП))) и в списке автодополнения быть в самом низу; соответственно, дальше идут плагины - Эммет (т.к. его аббревиатуры больше именно используют, чем самостоятельно кастомно дополняют, хоть и можно), затем Сниппеты, как наиболее и изначально рассчитанная на кастомизацию юзерами фича. Примерно как-то так.

Alexey, подскажите, пожалуйста, как сделать отображение меню автодополнения во время набора кода, не нажимая CTRL+SPACE? Что-то не соображу, как правильно готовить....

---------
Ну и продолжу дальше генерить идеи :idea: по улучшению и подрывать ваше спокойствие )))

1) Скажите, почему в редакторе вы используете Python 3.6, когда у вас же, как дополнение доступен 3.7? И почему не крайний - 3.8?
2) И снова автокоплит ))) Как вариант, показывать только синтаксически допустимые варианты в зависимости от текущего положения курсора. Например, лексер HTML, курсор находится в атрибуте method, код:

Code: Select all

<form method="|">...</form>
и здесь, нажав CTRL+SPACE будут показаны только варианты "get, post". Сделать такое только для HTML/CSS и специфических типа .vue (для секции template, т.к. там по сути обычный html). Для чего-то более серьезного, как Python, PHP, C++ и т.д. уже не будет иметь смысла, т.к. там нужен разбор, как в IDE, но об этом я уже писал ранее.

p.s. Alexey, спасибо за упоминание меня в history.txt! )))
Alexey
Posts: 1633
Joined: 05.10.2012 22:10

Post by Alexey »

Тут слишком bloated тема, перенесите новые идеи в новую.

Про знак > в снипетах. попробуйте такое, и потестите. в файле py/cuda_snippets/proc_snip.py
правим строку
CHARS_SNIP = string.ascii_letters + string.digits + '_.$'
добавляем сюда '>'.
Alexey
Posts: 1633
Joined: 05.10.2012 22:10

Post by Alexey »

>Emmet не работает в CSS?
работает.
bg[Tab]
->
background: #000;
Locked