Coder plugin (2)

Discuss and announce AkelPad plugins
Locked
  • Author
  • Message
Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Cuprum
Вам же ответили.

Offline
Posts: 876
Joined: Tue Jul 24, 2007 8:54 am

Post by Fr0sT »

Пожелание: переформулировать выносящее мозг сообщение
---------------------------
Coder плагин
---------------------------
"xml.coder" содержит неизвестную переменную "${HighLight_LineBorderColor}"
---------------------------
на что-то более приближенное к истинной причине, например, "Текущая тема %theme_name% не содержит переменной %var_name%", а в идеале - еще и "Добавить значение из темы по умолчанию? Д/Н". Потому как в текущей ситуации приходится сначала усиленно напрячь телепатор, чтобы понять, чего же программе не нравится, потом открыть интерфейс настройки тем, не найти там средства быстро актуализировать имеющуюся тему, почесать репу, перекреститься и полезть править тему вручную, увидеть, что она представляет из себя нечитаемый кусок бинарных данных, сдержать стон, вернуться в интерфейс и вручную вбить все недостающие переменные (копируя их названия из мессаджбоксов, которые будут выдаваться второй параллельной копией Акеля, в третью копию Акеля и затем обратно в первую).
Oh shit. Мы же все-таки не под Юниксом :)

Offline
Posts: 582
Joined: Mon Apr 08, 2013 9:50 pm
Location: Win7SP1x64, APx64

Post by Drugmix »

Fr0sT
а я уже предлагал решить эту проблему, но иначе

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Изменено: требуется LineBoard v11.2 или выше.
Изменено: корректировка положения окна дополнения (Coder::AutoComplete).

Changed: required LineBoard v11.2 or higher.
Changed: correction of auto-complete window position(Coder::AutoComplete).


Coder plugin v12.4

Offline
Posts: 1161
Joined: Sun Oct 20, 2013 11:44 am

Post by Skif_off »

Instructor
Добавьте, пожалуйста, в coder.coder в Folds

Code: Select all

;424=8+32+128+256
424	0	0	0	"Colors:"     "BkImage:"     " 	"
;424=8+32+128+256
424	0	0	0	"BkImage:"    "AutoMark:"    " 	"

сейчас ломается структура.

Offline
Posts: 381
Joined: Wed Sep 28, 2011 3:05 pm

Post by Cuprum »

Instructor
В той части обсуждения вы говорите, что
Из вышеизложенного следует, что аббревиатуры, содержащие разделители, не могут быть выведены в "окошко выбора варианта" .
Я как раз и прошу такую возможность - чтобы аббревиатуры, содержащие разделители могли появляться в окне автодополнения.

Offline
Posts: 582
Joined: Mon Apr 08, 2013 9:50 pm
Location: Win7SP1x64, APx64

Post by Drugmix »

Cuprum, Instructor же уже рассказал алгоритм работы автодополнения:
1. парсер от последнего напечатанного символа идёт влево до тех пор, пока не упирается в любой "стоп-символ". И пробел установлен как 1 из стоп-символов.
2. строку от стоп-символа до последнего напечатанного символа он копирует в память.
3. происходит поиск скопированного куска на частичное совпадение со строками из "словаря" (правила автозавершений).
4. если поисковые вхождения скопированной строки найдены в словаре - они добавляются в список, который потом отобразится пользователю.
5. все варианты из списка валидных вхождений - выводятся пользователю в окно автозавершения.

Если не менять текущего алгоритма работы автозавершения, а просто убрать пробел из списка стоп-символов, то парсер будет идти влево до какого-нибудь другого стоп-символа и, вероятней всего, дойдёт аж до начала строки.
В таком случае на шаге 2. скопированной строкой будет всё от начала строки до последнего напечатанного символа. И вряд ли на шаге 3. будут найдены какие-либо вхождения.

Предлагаю всеобщему вниманию простейший вариант решения данной проблемы:
надо сделать так, чтобы парсер после того, как он сдвигаясь влево упирался в стоп-символ (например, пробел) - не останавливался насовсем, а выполнял бы шаги 3. и 4., но потом продолжал бы движение влево (снова останавливаясь на каждом стоп-символе и снова выполняя шаги 3. и 4.). А останавливался бы насовсем только когда упрётся или в символ начала строки, или символ начала документа.

Плюсом такого подхода станет поддержка фраз для автозавершения.
Минусом такого подхода станет то, что увеличится объём работы для парсера, а значит и время на составление списка автозавершения. Но тут возможна оптимизация: можно было бы сделать в пункте 4 не составление нового списка с нуля, а через отбрасывание всех явно не подходящих вариантов из словаря и тогда парсер сможет остановиться не только тогда, когда упрётся в начало строки/документа, а и в случае, если в словаре больше не осталось потенциально подходящих вариантов.

Offline
Site Admin
Posts: 6311
Joined: Thu Jul 06, 2006 7:20 am

Post by Instructor »

Andrey_A_A wrote:Курсор находится на нижних строках, а автоокно съезжает за экран и слова не вставить.
Coder plugin v12.4
Skif_off wrote:... ломается структура.
Добавлено.

Offline
Posts: 670
Joined: Thu Jun 03, 2010 8:47 am
Location: Сочи, Хоста
Contact:

Post by Andrey_A_A »

Instructor
Спасибо, теперь работает хорошо кстати шрифт стал поменьше чем в основном окне (это очень даже отлично).

Может когда-то дойдёт и до этих желаний:
viewtopic.php?p=23199#p23199

Offline
Posts: 381
Joined: Wed Sep 28, 2011 3:05 pm

Post by Cuprum »

Instructor
Хотелось бы, чтоб появилась вот какая возможность: через параметр в *.coder (или как-то по-другому) выбирать как будут выглядеть подсказки во всплывающем окне аббревиатур.

Сейчас при наборе в окне появляются сами аббривеатуры. А хочеться видеть

Image

Offline
Posts: 582
Joined: Mon Apr 08, 2013 9:50 pm
Location: Win7SP1x64, APx64

Post by Drugmix »

Cuprum
почему бы просто не продублировать эту инфу в конце аббревиатуры (то из чего разворачивается и то, что видно в подсказке)?

Offline
Posts: 381
Joined: Wed Sep 28, 2011 3:05 pm

Post by Cuprum »

Drugmix
почему бы просто не продублировать эту инфу в конце аббревиатуры
Хорошая мысль. Но вот пока работает только если использовать символ "_":

Code: Select all

$~fl_float:;
float:$[];
А вот если вставить пробел между fl и float:; то в подсказке видно только fl.

Offline
Posts: 582
Joined: Mon Apr 08, 2013 9:50 pm
Location: Win7SP1x64, APx64

Post by Drugmix »

Cuprum
можно вместо "_" использовать ALT+255: " " выглядит как пробел, но им не является.

Offline
Posts: 381
Joined: Wed Sep 28, 2011 3:05 pm

Post by Cuprum »

Drugmix
Да, посмотрел; подходит, только почему то внутри окна аббревиатуры сортировка сбивается :? (например, после набора fl "fl float:;" оказывется внизу списка). Ладно, шут с ним, буду использовать "_". Спасибо!

Offline
Posts: 582
Joined: Mon Apr 08, 2013 9:50 pm
Location: Win7SP1x64, APx64

Post by Drugmix »

Cuprum
вместо ALT+255 можно ещё попробовать ALT+0160 " " (возможно, что это то же самое).
Locked