Обновил плаг Help, добавив имитирование клавиши Ctrl+F, вставку слово чтобы в итоге подсветить текст на странице. Попробуйте флаг 11 (увеличение стандартного флага на 10, чтобы активизировать Ctrl+F).
Мне не удалось по нормальному авктивировать окно веб-старницы (переместить фокус в правую часть окна), это не работает:
пришлось имитировать клавишей F6, при этом недостаток, надо свернуть справку, чтобы следующий вызов с Ctrl+F сработал.
Posted: Thu Dec 03, 2020 1:05 am
by AZJIO
Как получить имя используемого *.coder?
При открытии справки возникла проблема, что на одно расширение файла cfg могут быть привязаны разные файлы справки например Grub2 и Syslinux. Остаётся внести критерий "имя кодера".
AZJIO wrote:Как получить имя используемого *.coder?
См. пример получения ALIAS в функции getCoderAliasW из https://github.com/d0vgan/AkelPad-Plugs ... earchDlg.c
Ф-ция getCoderAliasW заполняет строку (технически - буфер, переданный через указатель) pszAliasBufW в результате вызова ф-ции CallCoderSettings, которая, в свою очередь, вызывает "Coder::Settings".
Ф-ция getCoderAliasW для своей работы использует явно объявленную структуру DLLECCODERSETTINGS_GETALIAS, которая соответствует передаче параметров через стек.
Posted: Sat Dec 05, 2020 11:27 am
by AZJIO
Вот переконвертировал, но вместо псевдонима кодера возвращает имя текущего файла-документа, то есть вообще не кодера. До кучи проверил 16 (имя файла кодера) вместо 18 (псевдонима кодера), с 16 ничего не возвращает.
В общем из того что я понял, всё правильно, код видимо возвращает имя файла из которого можно взять расширение. То есть псевдоним может быть как сам файл, так и расширение, например для Grub2 указывается grub.cfg.
Поискал среди файлов исходников *.h|*.c текст DLLEXTCODERGETALIAS и DLLEXTCODERGET в надежде найти DLLEXTCODERGETSYNTAXFILE, не удалось. Также нашёл структуру SYNTAXFILE с полем wszSyntaxFileName, но непонятно как получить адрес на эту структуру. Также попытался гепотетически составить структуру аналогичную DLLEXTCODERGETALIAS но без поля hDoc, непроканало.
VladSh
С .js понятно, там Scripts.dll сделает программную обёртку.
Кстати, посмотрел "Visual Studio Code", там понравилась функция истории документов с поиском. Интересен стал плаг типа History, как в браузере "Журнал". То есть любой файл открытый отправляется в конец некой базы-списка открытых файлов. Пользователь мог бы выбрать поиск по имени файла, и кнопка настроек, допустим удалить дубликаты, удалить старые, удалить несуществующие пути. Сама идея найти документ не роясь по папкам, потому что помнишь как его называл, помнишь, что открывал, а значит идея мгновенного доступа имеет смысл. Те же кодеры или скрипты можно найти мгновенно, не открывая папку, а к примеру ввёл "t.co" и он уже выдаст txt.coder, причём других вариантов скорее всего не будет.
Чтобы написать плагин нужно перехватывать событие открытия файлов, а в остальном стандартная работа со списком, и можно было бы использовать даже готовый движок CommandPalette.js.
Posted: Thu Dec 17, 2020 8:36 am
by DV
AZJIO wrote:понравилась функция истории документов с поиском.
Это прямо описание плагина AltHistory для FAR Manager: этот плагин поддерживает фильтрацию в историях просмотра/редактирования и папок, и поддерживает до 100 000 элементов в этих историях.
Поражаюсь, что для Total Commander до сих пор ничего такого не сделали.
Posted: Thu Dec 17, 2020 11:08 am
by opk44
DV wrote:...AltHistory для FAR ... поддерживает до 100 000 элементов...
О как!
... Передаём для наших радиослушателей песню группы Nightlands "So Far So Long"...
Posted: Thu Dec 17, 2020 5:23 pm
by VladSh
Для поиска в истории можно было бы просто усовершенствовать плаг RecentFiles, если бы у кого знаний, времени и желания хватило...