Этих символов значит нет в выбранном шрифте. Предположу, что блокнот, в случае, если не нашёл символ в шрифте, рисует эти символы другим шрифтом, где этом символ есть (например, Arial Unicode MS).
Posted: Wed May 08, 2019 11:54 am
by LonerD
Instructor
Вызов команды горизонтального разделения панелей приводит к почти гарантированному краху Акелпада.
Никак не могу выявить все условия. Вроде такие:
Последние версии Акелпада и плагинов (32-х битные версии), Windows 10 х64 SL Home. MDI, перенос по словам включён, есть тулбар слева или справа (или по обеим бокам), открыто несколько вкладок, на "рабочей" вкладке текст с относительно большим количеством переносов. Включены все плагины (такое ощущение, что если выгрузить некоторые любые плагины, то разделение стабильней срабатывает).
Акелпад 4.9.9, последние пару бет - при вызове команды Command(4214) - почти гарантированный крах. А вот если вызвать команду Command(4213), а уже после неё Command(4214) - то проблема не возникает.
Вижу, что в Акелпад версии 4.9.8 даже последовательный вызов команд 4213 и 4214 приводил к краху. Впоследствии это было исправлено, значит проблема известная. Но исправлено пока не до конца.
Posted: Tue Jul 02, 2019 11:31 am
by opk44
При смене настроек Reg-->INI, если AkelPad.ini ранее существовал, то в него ДОБАВЛЯЕТСЯ (в начало) содержимое настроек. Т. е. все секции дублируются. Если поочередно "играться" настройкой хранения (SaveSettings=2|1, SaveHistory=2|1), то достигается эффект многократного самоудвоения AkelPad.ini
--
AkelPad (x86) 4.9.9 (r4405)
Posted: Thu Jul 04, 2019 4:42 am
by Instructor
LonerD
Возможно работают какие-либо резидентные скрипты. Проверьте содержимое CmdLineBegin и CmdLineEnd.
opk44
Не вопроизводится. Можете папку с AkelPad'ом выложить/прислать?
1. На тестовой (x86) не воспроизводится.
2. Обратил внимание (на примере скрипта Calculator.js r4408), что штатные скрипты через AkelUpdater и не видны, и не обновляются.
Posted: Mon Jul 29, 2019 3:12 pm
by AZJIO
Не баг, но нежелательное поведение - при Ctrl+A (выделить все) происходит прокрутка в конец файла. Я понимаю к якорю, но реальный пример, я правлю CSS, делаю Ctrl+A, Ctrl+C, вставляю в браузер и проверяю работу, не понравилось возвращаюсь в AkelPad подправить, но позиция утеряна, жму Ctrl+Z (иногда Ctrl+Shift+Z, чтобы вернуть только позицию) и снова правлю. То есть как бы оставить позицию ничего не меняя в окне, чтобы я видел текст и тут же приступил к изменениям.
Posted: Tue Jul 30, 2019 11:11 am
by opk44
AZJIO wrote:Не баг, но нежелательное поведение - при Ctrl+A (выделить все) происходит прокрутка в конец файла...
...как бы оставить позицию ничего не меняя в окне...
Не замечал в этом каких-либо неудобств. Но если вас это напрягает, то можно обойти на раз-два-три:
1. Пишем скрипт "GetAllText.js"
//Call("Scripts::Main", 1, "GetAllText.js")
var pAllText=AkelPad.GetTextRange(0, -1); AkelPad.SetClipboardText(pAllText);
2. Вешаем на Хоткей.
3. Пользуемся.
Бонус - один хоткей вместо двух (Ctrl+A, Ctrl+C). Ну и каретка на месте.
Posted: Wed Jul 31, 2019 4:39 am
by AZJIO
opk44
Как вариант да, например Ctrl+Shift+A или Ctrl+Shift+C. Или скрипт, который перед выделением запомнит номер верхней видимой строки и сделает прокрутку к ней. Но в плаге прокрутки нет прыжка к строке (не увидел), а функционал "Go to" сбрасывает выделение. Если делать типа запоминание или ставить закладку, то в любом случае это больше телодвижений чем текущий вариант Ctrl+Z. Сделал пока хоткей на копирование, ещё бы сделать заставку на 1 сек показывающую что текст скопирован.
А вообще я имел ввиду как саму идею работы Ctrl+A чтобы не приходилось дописывать скрипты.
В плаге Scroll:
- Установка непрокручиваемых операций, например, "Выделить всё".
может всё таки поведение можно сделать флагом? Это похоже не прокручивать при включении автопрокрутки во время "Выделить всё", при этом операция "Выделить всё" делает прокрутку в конец документа.
!!! Получилось, я на панели инструментов нажал "Обработка непрокручиваемых операций" (плаг Scroll)(включил флаг), и у меня при Ctrl+A не прокручивается текст в конец, вообще не реагирует, как я и хотел. (не понимаю, почему этого флага нет в настройках плага Scroll?)
Posted: Sun Sep 22, 2019 12:46 pm
by yozhic
Репортую. На Win 8.1x64 c AP 4.9.9[r4408] частично не работает функция AkelPad.Font. Тестовый скрипт с одной единственной строкой
(из примера в справке к функции) меняет размер и начертание, но не меняет гарнитуру.
Posted: Mon Nov 11, 2019 4:22 pm
by Instructor
yozhic
На Win7 не воспроизводится.
Posted: Tue May 19, 2020 6:00 am
by AZJIO
Открыл окно редактирования кнопок панели инструментов AkelPad, скопировал весь текст, вставил в новый документ, при этом AkelPad упал. Повторил несколько раз - упал стабильно. Если вставляю в документ сохранённый как файл, то не падает. Сократил строки от которых стабильно падает
причём SEPARATOR1 используется для авто-включения подсветки. Сборка на которой падает (4.9.9, но и на 4.9.8 тоже падает).
Мне не критично, может рег.выр. плохой, хотя падение от рег.выр`а не должно происходить.
Posted: Tue May 19, 2020 8:21 am
by opk44
AZJIO
1. Если делается проверка тестовой версии, то и брать нужно САМУЮ свежую. На сайте лежит июльская r4407 (r4408-r4410 изменения не касались ядра). Ссылка на версию
2. Для сокращения объема архива желательно убирать из него словари.
3. Падает у вас фактически плагин Coder. А он падает из-за нестандартной подсветки - файл "_txt.txt" господина Аверина с вашими в нём изменениями.
4. Если сводить все к одной строке, то Падение устраняется комментированием строки 246
я проверил в том числе и на r4410, у меня самая свежая, недавно выложил DV. Падает на всех 3-x, поэтому не перезаливал.
2. Для сокращения объема архива желательно убирать из него словари
Ну для сокращения я конечно мог оставить один плаг Coder и два txt-кодер и akelmenu-кодер. А я просто дал сслыку на свою сборку и проверил именно на ней что тоже падает.
и это указал у себя, что SEPARATOR. Как будто вставляемый текст становится выполняемым кодом и приводит к падению. Если документ уже существует с таким кодом, то он нормально подсвечивается, а если вставка, сам процесс вставки кода в документ приводит к падению. Если отключаю и включаю тему, то проблемы нет, а вставка с последующей подсветкой.
Сделал ещё эксперимент, отключил txt, а пустой документ назначил ему _akelmenu.coder дописав в Files: пустую строку "". В итоге вставка не делает падение и подсвечивает.
Ещё зксперимент, оставляю в _txt.coder только сбойную строку (это весь _txt.coder ниже)
и в планах было сделать для *.js и *.pb но как только я не игрался с регулярными выражениями и флагами не смог затставить подсветить рег.выр. Хотя подсвечивал кодер указанный блок правильно, то есть ловил лексему начала и конца специальным для этого цветом, но средину не пытался подсвечивать. Может быть это тоже как то связано.
__________________
Может чтобы не делать таких извращений как поиск регулярным выражением "\A(?=.*SEPARATOR)" "\Z" неких меток, чтобы подсветить весь документ, при этом AkelPad использует 2 кодера в том числе родительский, чтобы обрабатывать контент, который в принципе надо обработать только дочерним кодером, может на этот случай как я предлагал ранее сделать раздел в кодере, что если открыл например txt-файл и в нём есть некий текст, который определяется одним регулярным выражением или поиском обычного текста (можно определить флагами), то такой файл весь перенаправляется на другой кодер и возможно перенаправленный кодер сохраняется в настройки для этого файла, то есть исключается работа двух кодеров, исключается поиск диапазона подсветки, а вместо этого весь файл перенаправляется на другой кодер, упрощается сам поиск (один рег.выр. или даже без регвыра обычный текст)
Пускай это будет не раздел, а некий резервный флаг для Folds:, если он в первых строках, то в принципе перенаправит без последующей обработки этого кодера.
То есть определение подсветки по содержимому файла, ведь txt-файл может содержать практически любые данные и в контексте этого можно определить какие данные как будут подсвечены. У меня есть файлы по работе, тот же _akelmenu.coder, некие справочные файлы компилируемые в CHM, файлы справки txt самого AkelPad, bbcode, какие либо конфиги со своими правилами, текстовые базы данных, табличные данные. Надеюсь привёл достаточно критериев для необходимости этой полезной фичи.
Posted: Thu Jun 01, 2023 5:35 pm
by Instructor
AZJIO wrote:и снова падение. Ну как я и говорил, рег.выр. спотыкается.