Набор макросов от SimSU

Здесь выкладываются готовые к использованию макросы и скрипты.
User avatar
SUSim
Posts: 1543
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 5 times
Been thanked: 10 times

Набор макросов от SimSU

Post by SUSim »

Вычисление математических выражений. © SimSU
Календарь. © SimSU
Выполнение команды через меню пользователя. © SimSU
Получение названия клавиши. © SimSU
Ускорение скроллинга колёсиком мышки. © SimSU
Меню плагинов с последнего пункта. © SimSU
Вставка разделённых путей и имён файлов. © SimSU
Редактирование строки ввода диалога в редакторе. © SimSU
Первая строка всегда на экране полезно в качестве заголовков столбцов. © SimSU
Создание резервной копии редактируемого файла. © SimSU
Открытие редактора из редактора. © SimSU
Вставка шаблона мароса. / Insert macro template. © Shmuel SimSU
Простое импортирование макроса FAR. © SimSU
Список завершения LuaMacro. © SimSU
Работа мышкой с выделением в редакторе. © SimSU
Перемещение строк в редакторе. © SimSU
Два синхронных редактора. © SimSU
Быстрый поиск в редакторе. © SimSU
Комментирование/разкомментирование помеченного блока. © SimSU
Памятливый редактор. © SimSU
Работа с помеченным блоком в редакторе. © SimSU
Подсветка табуляции и перевода строк. © SimSU
Умный Del. © SimSU
Умные Home & End. © SimSU
Лёгкое изменение размеров табуляции. © SimSU
Транспонирование (строки превращаются в столбцы) текста. © SimSU
Удаление конечных пробелов и символов табуляции и пустых строк. © SimSU
Завершения слов в редакторе. © SimSU
Запуск приложения в DOSBox [http://www.dosbox.com]. © SimSU
Работа с файлами через контекстное меню (плагин EMenu). © SimSU
Работа с файлами через FastCopy (FastCopy.exe © http://ipmsg.org/tools/fastcopy.html). © SimSU
работа с LNK-файлами (плагин LnkView). © SimSU
Переход по вкладкам плагина Panel Tabs (плагин Panel Tabs © Максим Русов) © SimSU"
Работа с файлами через TeraCopy (TeraCopy.exe © http://www.codesector.com). © SimSU
Визуальное сравнение файлов (плагин VisualCompare © Максим Русов). © SimSU
Работа с псевдонимами (синонимами). © SimSU
Смена диска активной панели RCtrl+стрелки. © SimSU
Работа в командной строке. © SimSU
Удаление резервных и временных файлов. © SimSU
Редактирование описания в файле. © SimSU
Фавориты (избранные папки и плагины) в меню дисков. © SimSU
Работа с датой/временем файлов/папок. © SimSU
Возврат в предыдущую папку, отмена возврата. © SimSU
Включение/отключение поиска на панели после отпускания RAlt. © SimSU
Сохранение/восстановление выделения файлов. © SimSU
Такой же путь & Текущая папка. © SimSU
Выделение файлов аля Explorer. © SimSU
Работа с пометкой файлов. © SimSU
Расширение функциональных клавиш копирования, переноса, создания папки. © SimSU
При смене панели ширина активной панели остается постоянной. © SimSU
Attachments
SimSU20200404.7z
(73.42 KiB) Downloaded 41 times
Last edited by SUSim on Sun 05 Apr, 2020 10:12, edited 13 times in total.
SimSU ··· ·· -- ··· ··-

draw
Posts: 2
Joined: Sat 18 Oct, 2014 20:42
Has thanked: 1 time

Набор макросов от SimSU

Post by draw »

Latest post of the previous page:

Давно и очень активно пользуюсь макросом Editor_WordComplete.lua. Спасибо!

Хочется добавить пару опций:
  • регистрозависимое/регистронезависимое дополнение
  • предлагать ли дополнение если редактирование идёт внутри слова
Attachments
opts.diff
патч, реализующий доп опции
(3.5 KiB) Downloaded 135 times

User avatar
SUSim
Posts: 1543
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 5 times
Been thanked: 10 times

Набор макросов от SimSU

Post by SUSim »

20181107
1. Editor_WordComplete.lua Завершения слов в редакторе. © SimSU
+ Регистрозависимое дополнение
+ Возможность автодопонения внутри слова
+ Заодно - в лист не попадает недонабранное слово, чтобы не мешалось.

20181102
1. Shell_Favorites.lua Фавориты (избранные папки и плагины) в меню дисков. © SimSU
+ Улучшено движение по меню: Left/Right - родительское/дочернее(если под курсором вложенное меню) меню.
+ Улучшено перемещение пунктов в меню: Ctrl + Up/Down - перместить пункт вверх/вниз; CtrlLeft - переместить пункт в родительское меню, CtrlRight - переместить в дочернее меню(если под перемещаемым пунктом есть такое).

20181011
1. Editor_ShowWhiteSpace.lua Подсветка табуляции и перевода строк. © SimSU
+ поэксплуатируем БАГ FAR - позволяющий вычислить положение окна редактора :)
2. Editor_MouseSelect.lua Работа мышкой с выделением в редакторе. © SimSU
+ поэксплуатируем БАГ FAR - позволяющий вычислить положение окна редактора :)
3. Editor_Pair.lua Два синхронных редактора. © SimSU
* Поправлены координаты...

20180928
1. Editor_SelectingEx.lua Работа с помеченным блоком в редакторе. © SimSU
+ Добавлено немного ИИ в авто перемещение курсора начало/конец блока.

З.Ы. Спасибо, draw!

P.P.S. buniak_a_h, после незначительных правок больше не случается у меня, если что пиши, будем разбираться.

З.З.Ы.Ы.
не напрягает? :
+ поэксплуатируем БАГ FAR - позволяющий вычислить положение окна редактора :)
Last edited by SUSim on Wed 14 Nov, 2018 16:36, edited 2 times in total.
SimSU ··· ·· -- ··· ··-

User avatar
zg
zero-gravity
Posts: 5817
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 147 times
Contact:

Набор макросов от SimSU

Post by zg »

SUSim wrote:
Wed 14 Nov, 2018 16:31
З.З.Ы.Ы.
не напрягает? :
+ поэксплуатируем БАГ FAR - позволяющий вычислить положение окна редактора :)
напрягает, что нет ссылки на багтрекер.

User avatar
SUSim
Posts: 1543
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 5 times
Been thanked: 10 times

Набор макросов от SimSU

Post by SUSim »

пока не знаю как сформулировать!
а то если исправите, то я не знаю как узнать координаты окна редактора.
SimSU ··· ·· -- ··· ··-

buniak_a_h
Posts: 1844
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 116 times
Been thanked: 165 times
Contact:

Набор макросов от SimSU

Post by buniak_a_h »

SUSim, удивляет выбор умолчательной "горячей клавиши" для "синхронного редактора". AltE ...
1. Поиск по Alt-буква можно как-то выключить?
2. Если можно, то как заходить в режим Search по-другому? У меня стоит искаробочный AltSearch.lua - он же тоже работать перестанет?

User avatar
John Doe
Бюрократ
Posts: 12820
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 286 times

Набор макросов от SimSU

Post by John Doe »

SUSim wrote:
Wed 14 Nov, 2018 16:31
+ поэксплуатируем БАГ FAR - позволяющий вычислить положение окна редактора :)
Полагается на плагины раскраски, а можно ведь и самостоятельно вызвать AddColor ;-)
SUSim wrote:
Thu 15 Nov, 2018 05:02
пока не знаю как сформулировать!
Значения позиций, возвращаемых по ECTL_GETCOLOR не соответствуют значениям, установленным ECTL_ADDCOLOR: в случае когда при открытии редактора были заданы позиции X/Y, то значения оказываются смещены соответственно (но в противоположную сторону).

SUSim wrote:
Thu 15 Nov, 2018 05:02
а то если исправите, то я не знаю как узнать координаты окна редактора.
Расширить структуры EditorInfo и ViewerInfo. Или WindowInfo.
(Пожелание упоминается тут: https://bugs.farmanager.com/view.php?id=3519, но заслуживает и отдельного тикета)

User avatar
John Doe
Бюрократ
Posts: 12820
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 286 times

Набор макросов от SimSU

Post by John Doe »

buniak_a_h wrote:
Thu 15 Nov, 2018 08:57
1. Поиск по Alt-буква можно как-то выключить?
Зачем??
И в правильной ли теме вопрос?
buniak_a_h wrote:
Thu 15 Nov, 2018 08:57
2. Если можно, то как заходить в режим Search по-другому? У меня стоит искаробочный AltSearch.lua - он же тоже работать перестанет?
Макросами всё можно. AltSearch.lua не перестанет.

buniak_a_h
Posts: 1844
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 116 times
Been thanked: 165 times
Contact:

Набор макросов от SimSU

Post by buniak_a_h »

SUSim wrote:
Wed 14 Nov, 2018 16:31
P.P.S. buniak_a_h, после незначительных правок больше не случается у меня, если что пиши, будем разбираться.
По сравнению с Вашим макросом поменял только s.key (прямо в Settings, уж извините).
Работаю сейчас так:
- после вызова макроса первый раз после запуска ФАРа получаю чёрный экран;
- по F12 нахожу окно редактирования временного файла (с отметкой Changed) и перехожу на него;
- жму Esc, подтверждаю выход без сохранения; почему-то предлагается выйти и из ФАР-а - отказываюсь (ещё одна странность: у меня нет макроса, закрывающего ФАР по Esc!);
(как выяснилось сейчас, после закрытия окна-редактора с различиями где-то остаются открытыми редакторы с исходными файлами. Приходится их закрывать тоже. Но с ними легче: на них ФАР переключается стандартными CtrlTab)
- вызываю макрос второй раз; всё работает
Неудобно, но не фатально.
---
Нашёл "странность", присутствующую во всех Ваших скриптах: Вы используете некое поле far.lang . Тут две неприятности: (а) проверка LuaTest выдаёт на них предупреждение и (б) при изменении настроек far.lang не меняется. Ну и вообще непонятно, зачем; чем это лучше, например, вызова Far.GetConfig('Language.Main') и занесения его в local ?
Есть пожелание: "поженить" плагин Visual Compare с Вашим макросом. VC выводит результаты сравнения в диалог с Id="78DBDD6F-74A0-41E4-91FC-DE5707CF63F5" .
Last edited by buniak_a_h on Thu 15 Nov, 2018 10:12, edited 2 times in total.

buniak_a_h
Posts: 1844
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 116 times
Been thanked: 165 times
Contact:

Набор макросов от SimSU

Post by buniak_a_h »

John Doe wrote:
Thu 15 Nov, 2018 09:53
buniak_a_h wrote:
Thu 15 Nov, 2018 08:57
1. Поиск по Alt-буква можно как-то выключить?
Зачем??
И в правильной ли теме вопрос?
Это, скорее, был не вопрос, а замечание к макросу.
Ну, согласитесь, что вызов макроса сочетанием Alt+буква либо не будет работать, т.к. включается поиск по панели, либо сделает поиск файла, начинающегося с "E" (без AltSearch.lua) невозможным (если он сможет "перехватить" это кнопкосочетание). Точнее, неудобным: сначала придется "искать" другую букву, потом стирать её в области поиска и жать "E".
John Doe wrote:
Thu 15 Nov, 2018 09:53
buniak_a_h wrote:
Thu 15 Nov, 2018 08:57
2. Если можно, то как заходить в режим Search по-другому? У меня стоит искаробочный AltSearch.lua - он же тоже работать перестанет?
Макросами всё можно. AltSearch.lua не перестанет.
Может, и можно, хотя я не смог. Важно другое: если действительно выключить поиск по сочетаниям Alt+буква, то AltSearch работать тоже не будет, т.к. он состоит из последовательности Keys('Alt<'), а она как раз и будет выключена.
Считаю мои замечания справедливыми. Уж извините. Дождусь, что ответит автор.
Last edited by buniak_a_h on Thu 15 Nov, 2018 10:07, edited 1 time in total.

User avatar
John Doe
Бюрократ
Posts: 12820
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 286 times

Набор макросов от SimSU

Post by John Doe »

buniak_a_h wrote:
Thu 15 Nov, 2018 10:05
Точнее, неудобным: сначала придется "искать" другую букву, потом стирать её в области поиска и жать "E".
Это верно.
Однако ради расширения списка удобных хоткеев кто-то может посчитать возможным пожертвовать таким использованием быстрого поиска.
Который кстати всё ещё останется потенциально доступным, хотя бы посредством AltSearch.lua.
buniak_a_h wrote:
Thu 15 Nov, 2018 10:05
Важно другое: если действительно выключить поиск по сочетаниям Alt+буква, то AltSearch работать тоже не будет, т.к. он состоит из последовательности Keys('Alt<'), а она как раз и будет выключена.
Неверно.
На данный момент можно выключить быстрый поиск только макросом. При этом AltSearch.lua может работать.

User avatar
John Doe
Бюрократ
Posts: 12820
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 286 times

Набор макросов от SimSU

Post by John Doe »

Посмотрел на Editor_Pair.lua
Из того, что бросилось в глаза:
- переменная NewFocus нигде не инициализируется
- функция Quit пытается выйти откуда-то, эмулируя нажатие F10. Подозреваю легаси код какой-то.
- функция Switch совсем уж сомнительна
Перебирает окна (ACTL_GETWINDOWINFO) начиная с 0, а 0 это текущее окно.
Далее переключается в найденное (ACTL_SETCURRENTWINDOW), и даже не знаю что будет если передатьтуда 0.
При этом ищет по Id, который вовсе не обязан быть уникальным среди всех окон (только среди редакторов).

Дальше не углублялся.

buniak_a_h
Posts: 1844
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 116 times
Been thanked: 165 times
Contact:

Набор макросов от SimSU

Post by buniak_a_h »

John Doe, А то я уж думал, что мне кажется... Я предполагал ранее, что имеются неинициализированные переменные.

buniak_a_h
Posts: 1844
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 116 times
Been thanked: 165 times
Contact:

Набор макросов от SimSU

Post by buniak_a_h »

John Doe wrote:
Thu 15 Nov, 2018 10:28
переменная NewFocus нигде не инициализируется
Интересно...
Если проинициализировать NewFocus=true, то макрос валит LuaFar (по-моему).
Если проинициализировать NewFocus=false, то работает как я описал (что естественно), НО!!!
Event {id="40ac379b-d286-4f86-bad4-efad334f4e14"; --Получение фокуса одним из окон
никогда не будет выполняться!

User avatar
John Doe
Бюрократ
Posts: 12820
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 286 times

Набор макросов от SimSU

Post by John Doe »

buniak_a_h, нет смысла анализировать отдельно эту переменную, проблема в том, что скрипт вообще работает неаккуратно, и лучше подождать пока автор с этим разберётся.
А там уже или ваша проблема уйдёт, или можно продолжить.

User avatar
John Doe
Бюрократ
Posts: 12820
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 38 times
Been thanked: 286 times

Набор макросов от SimSU

Post by John Doe »

SUSim wrote:
Wed 14 Nov, 2018 16:31
20181011
1. Editor_ShowWhiteSpace.lua Подсветка табуляции и перевода строк. © SimSU
+ поэксплуатируем БАГ FAR - позволяющий вычислить положение окна редактора :)
А для чего в этом скрипте может понадобиться вычислять положение окна?

User avatar
SUSim
Posts: 1543
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 5 times
Been thanked: 10 times

Набор макросов от SimSU

Post by SUSim »

у меня в комплекте макрос для поиска только по RAlt.
я и знакомые к такому поиску сильно привыкли!
а вот левый все разрешили под хоткеи...
Last edited by SUSim on Thu 15 Nov, 2018 20:35, edited 1 time in total.
SimSU ··· ·· -- ··· ··-

Post Reply

Return to “Полезные макросы и скрипты”