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

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

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

Post by SUSim » Wed 21 Mar, 2012 18:27

Вычисление математических выражений. © 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
SimSU20181114.7z
Улучшения по Вашим предложениям
(70.24 KiB) Downloaded 57 times
SimSU20180907.7z
Два синхронных редактора, Фавориты доработаны, остальное по мелочам...
(69.69 KiB) Downloaded 88 times
SimSU20180519.7z
Прошлая весия
(65.59 KiB) Downloaded 148 times
Last edited by SUSim on Wed 14 Nov, 2018 16:27, edited 9 times in total.
SimSU ··· ·· -- ··· ··-

skipik
Posts: 98
Joined: Wed 03 Jun, 2015 15:24
Has thanked: 9 times
Been thanked: 10 times

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

Post by skipik » Mon 16 Oct, 2017 19:31

Latest post of the previous page:

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

User avatar
sToLp
Posts: 923
Joined: Thu 23 Jul, 2009 10:16
Has thanked: 106 times
Been thanked: 8 times

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

Post by sToLp » Tue 17 Oct, 2017 04:30

SUSim,

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

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

gotar
Posts: 307
Joined: Sun 06 Sep, 2009 12:34
Has thanked: 8 times

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

Post by gotar » Tue 17 Oct, 2017 04:49

Как вызвать эти макросы из командной строки? Я пробовал 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: 12075
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 28 times
Been thanked: 152 times

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

Post by John Doe » Tue 17 Oct, 2017 07:04

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: 1514
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 5 times
Been thanked: 8 times

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

Post by SUSim » Mon 23 Oct, 2017 18:54

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

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

Shmuel
Posts: 5601
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 21 times
Been thanked: 186 times

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

Post by Shmuel » Mon 23 Oct, 2017 19:32

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

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

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

Post by John Doe » Mon 23 Oct, 2017 20:14

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: 12075
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 28 times
Been thanked: 152 times

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

Post by John Doe » Mon 23 Oct, 2017 20:29

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

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

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

Post by SUSim » Tue 24 Oct, 2017 05:12

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

Shmuel
Posts: 5601
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 21 times
Been thanked: 186 times

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

Post by Shmuel » Tue 24 Oct, 2017 05:28

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

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

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

Post by SUSim » Tue 24 Oct, 2017 18:49

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

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

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

Post by John Doe » Tue 24 Oct, 2017 19:14

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

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

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

Post by SUSim » Tue 24 Oct, 2017 20:01

Над 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: 12075
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 28 times
Been thanked: 152 times

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

Post by John Doe » Tue 24 Oct, 2017 20:06

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

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

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

Post by John Doe » Tue 24 Oct, 2017 20:10

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

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

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

Post by SUSim » Tue 24 Oct, 2017 20:28

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

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

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

Post by John Doe » Tue 24 Oct, 2017 20:35

Плагины ведут себя нормально, к ним никаких претензий.
А вот функция Plugin.Command оказалась не очень удобной в применении, и особенности её использования не вполне документированы.

Post Reply

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