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

Здесь выкладываются готовые к использованию макросы и скрипты.
User avatar
SUSim
Posts: 1538
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 5 times
Been thanked: 9 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
SimSU20191214.7z
LuaMacro build 717
(72.73 KiB) Downloaded 33 times
Attachments
SimSU20181114.7z
Улучшения по Вашим предложениям
(70.24 KiB) Downloaded 307 times
Last edited by SUSim on Mon 16 Dec, 2019 18:39, edited 12 times in total.
SimSU ··· ·· -- ··· ··-

skipik
Posts: 166
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 21 times
Been thanked: 18 times

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

Post by skipik »

Latest post of the previous page:

SUSim, http://forum.farmanager.com/viewtopic.p ... 71#p140871
До сих пор актуально.

User avatar
sToLp
Posts: 938
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 107 times
Been thanked: 12 times

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

Post by sToLp »

SUSim,

Из перечисленных Вами "Календарь" и "Вставка шаблона макроса" периодически используются.

Полагаю, что если сочтёте нужным провести "зачистку" Ваших макросов, то целесообразно будет не удалять "устаревшие" с форума, а сохранить их отдельно.

gotar
Posts: 316
Joined: Sun 06 Sep, 2009 12:34
Has thanked: 9 times

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

Post by gotar »

Как вызвать эти макросы из командной строки? Я пробовал lua:@Common_KeyName.lua и util:Common_KeyName.lua и ничего не получилось
Last edited by gotar on Tue 17 Oct, 2017 04:53, edited 2 times in total.

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

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

Post by John Doe »

gotar wrote:
Tue 17 Oct, 2017 04:49
Как вызвать эти макросы из командной строки?
Чтобы так их вызывать, они должны быть на это рассчитаны.
Например Common_KeyName.lua можно модифицировать, добавив перед строкой if not Macro ... такой код:

Code: Select all

if _filename then
  local VK=SimSU.Common_KeyName(); if VK then print(VK) end
end

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

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

Post by SUSim »

John Doe! Будет время поправлю! А ещё подобное(в других макросах) надо кому?
skipik! В курсе, но для меня не актуально (нет у меня таких длительных операций), хотя... будет время - подумаю.

Главное! нужна помощь:
1. lua:Plugin.Command("B77C964B-E31E-4D4C-8FE5-D6B0C6853E7C","tmp:") почему-то не открывает временную панель. Это скорее надо было бы задавать в обсуждении плагина "Временная панель"?
2. Можно ли перезагрузить не все макросы из макроса. Как макрос может перезагрузить только свой файл, не трогая состояние остальных макросов?
SimSU ··· ·· -- ··· ··-

Shmuel
Posts: 5972
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 25 times
Been thanked: 257 times

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

Post by Shmuel »

1. Вместо "tmp:" - передавать пустую строку или вообще опустить этот аргумент
2. Не предусмотрено (хотя хакерскими методами наверное можно)

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

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

Post by John Doe »

SUSim wrote:
Mon 23 Oct, 2017 18:54
John Doe! Будет время поправлю! А ещё подобное(в других макросах) надо кому?
Честно говоря это не мой запрос. Но для своих макросов я обычно предусматриваю возможность такого запуска, там где это может иметь смысл.
Что не столь редко, например даже модуль может выполнять какие-то действия (или хотя бы тестировать себя).
Shmuel wrote:
Mon 23 Oct, 2017 19:32
Вместо "tmp:" - передавать пустую строку или вообще опустить этот аргумент
Немного дополню.
Фактически запуск Plugin.Command в той форме эквивалентен запуску из командной строки tmp:tmp:, что конечно же не страбатывает. В документации по макросам такие тонкости не расписаны. Собственно в идеале такого и не должно быть (т.е. лучше бы luamacro вырезал излишний префикс).
SUSim wrote:
Mon 23 Oct, 2017 18:54
Можно ли перезагрузить не все макросы из макроса. Как макрос может перезагрузить только свой файл, не трогая состояние остальных макросов?
Если хакерскими, то надо повторно загрузить файл, используя перехваченные как-то загрузочные функции (см. rebind).
Предварительно надо выгрузить старые макросы, а это уже чуть посложнее. Хотя в rebind снова можно подсмореть простой workaround: изменить поле disabled.
(Эх, я бы тоже не отказался от возможности честно выгрузить отдельные макросы)

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

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

Post by John Doe »

John Doe wrote:
Mon 23 Oct, 2017 20:14
Но для своих макросов я обычно предусматриваю возможность такого запуска, там где это может иметь смысл.
Что не столь редко
Кстати, в пока не опубликованной версии Script utils появилась возможность запускать скрипты (с параметрами) из командной строке отовсюду, в том числе и в редакторе.
И очень ваши скрипты вполне способны принести пользу при таком использовании, при должной модификации конечно.
Поэтому да, смысл в этом очень даже будет.

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

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

Post by SUSim »

Shmuel wrote:
Mon 23 Oct, 2017 19:32
1. Вместо "tmp:" - передавать пустую строку или вообще опустить этот аргумент)
Не ожидал, а как же быть если префиксов несколько? И нужно выбрать нужный.
Вот network работает и регедит работает.
SimSU ··· ·· -- ··· ··-

Shmuel
Posts: 5972
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 25 times
Been thanked: 257 times

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

Post by Shmuel »

SUSim wrote:
Tue 24 Oct, 2017 05:12
Вот network работает и регедит работает.
Скорее всего, плагин в функции GetPluginInfoW не устанавливаект флаг PF_FULLCMDLINE - по причине того, что его не интересует, каким префиксом он был вызван. В этом случае Фар передаёт ему комстроку без префикса, и плагин это знает. Поэтому и поведение такое, как наблюдается.

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

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

Post by SUSim »

Сетевое окружение - стандартный плагин и Временная панель - стандартный плагин, почему же разное поведение? Я всю голову сломал, может это от того, что у первого два префикса а у второго один? скорее всего так.
И вообще, лучше убрать гуид совсем, пусть по префиксу определяется, а то нужно перебрать все плагины на наличие нужного префикса, потом нужно как-то определить отрезать или нет префикса от команды... Дану, проще в комстроку вставить команду и пусть фар разбирается, и заявленного приемущества нет!
Кто-то, вообще, применяет plugin.Command универсально, а не для конкретного плагина?
SimSU ··· ·· -- ··· ··-

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

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

Post by John Doe »

SUSim wrote:
Tue 24 Oct, 2017 18:49
Я всю голову сломал, может это от того, что у первого два префикса а у второго один? скорее всего так.
Да. Поберегли бы голову, в Энциклопедии же есть PF_FULLCMDLINE.
SUSim wrote:
Tue 24 Oct, 2017 18:49
Кто-то, вообще, применяет plugin.Command универсально, а не для конкретного плагина?
А вы как собирались применить?

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

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

Post by SUSim »

Над PF_FULLCMDLINE голову я не ломал, я знал, а вот что tmp: превращается в tmp:tmp: нет.

Применяется уже, а не собирается. Макрос запускающий плагины по заданной команде плагина с префиксом.

Была потребность быстро выставлять панель в состояние реестр с нужным положением, в нужное сетевое окружение, в нужный резервный архив. Когда народ почувствовал удобство и быстроту, то таких мест стало много, пришлось макрос сделать универсальным и он работал, пока не захотелось большей универсальности... Вроде все работало, и вот тут облом с временной панелью... Отсюда и ноги растут...

А вообще макрос вполне себе может получиться... - быстрый переход на панелях в любое место: хоть папка. хоть архив, хоть экспортируемые функции dll, и ДР. Хоть из меню, хоть из меню выбора диска, хоть по шорткату.... И вот тут засада с префиксами плагинов... Ладно перепрыгнет, как нибудь! Универсальность пострадает наверное...
Last edited by SUSim on Tue 24 Oct, 2017 20:04, edited 1 time in total.
SimSU ··· ·· -- ··· ··-

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

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

Post by John Doe »

SUSim wrote:
Tue 24 Oct, 2017 20:01
что tmp: превращается в tmp:tmp: нет
Он не преврщается, скорее наоборот.
Когда вы запускаете из командной строки префикс tmp:, то плагин получает командную строку без префикса.
А строка соответствует второму параметру Plugin.Command.
Вот и получается, что вы передавая ему tmp: вторым параметром, вы передаёте не как префикс, а как командную строку.

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

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

Post by John Doe »

SUSim wrote:
Tue 24 Oct, 2017 20:01
И вот тут засада с префиксами плагинов...
Во-первых мантис есть.
Во-вторых, при желании вы можете самостоятельно решить эту проблему в своём коде. Апи есть.

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

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

Post by SUSim »

Я писал про разное повдение стандартных плагинов. И также говорил что перепрыгнуть можно. Мантис напрягать не буду. Там так более важного много.
Last edited by SUSim on Tue 24 Oct, 2017 20:28, edited 1 time in total.
SimSU ··· ·· -- ··· ··-

Post Reply

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