Помогите написать макрос

Столкнулись с проблемой в использовании макросов? Здесь можно получить помощь.
User avatar
DrKnS
Posts: 6114
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 12 times
Been thanked: 426 times

Post by DrKnS »

Latest post of the previous page:

Volodya wrote:Как?
farrus.hlf wrote:В диалогах, когда текущим элементом управления является контрольный переключатель
(кнопка с независимой фиксацией или Check Box):
- включить([x]) Gray +
- выключить ([ ]) Gray -
- изменить состояние на неопределенное ([?]) Gray *
(если переключатель имеет трехпозиционное состояние)
Volodya
Posts: 268
Joined: Thu 31 Mar, 2005 19:41
Has thanked: 30 times

Post by Volodya »

Спасибо. Перемудрил.
sanya.net
Posts: 3
Joined: Wed 30 Jul, 2008 22:33

Как узнать выделен ли файл под курсором

Post by sanya.net »

Привет. Я новичок в макросах.
На клавиатуре нет numpad, поэтому с выделением групп файлов испытываю определенные трудности.
Решил написать макросы на выделение и столкнулся с такой проблемой:

Как узнать выделен ли файл под курсором на активной панели?

В каталоге Fara нашел справку по макросам (Macro.chm) - там ответа не нашел.
sanya.net
Posts: 3
Joined: Wed 30 Jul, 2008 22:33

Re: Как узнать выделен ли файл под курсором

Post by sanya.net »

Задача была решена!

Если кому интересно вот какие получились макросы

REGEDIT4

[HKEY_CURRENT_USER\Software\Far\Users\sany\KeyMacros\Shell\CtrlShiftHome]
"Sequence"="$if ( APanel.SelCount == 0 ) ShiftAdd $else ShiftSubtract $end"
"Description"="Выделить все"
"DisableOutput"=dword:00000001

[HKEY_CURRENT_USER\Software\Far\Users\sany\KeyMacros\Shell\CtrlShiftPgUp]
"Sequence"="$if ( panelitem(0, 0, 8) == 0 ) CtrlAdd $else CtrlSubtract $end"
"DisableOutput"=dword:00000001
"Description"="Выделить по имени"

[HKEY_CURRENT_USER\Software\Far\Users\sany\KeyMacros\Shell\CtrlShiftPgDn]
"Sequence"="$if ( panelitem(0, 0, 8) == 0 ) AltAdd $else AltSubtract $end"
"DisableOutput"=dword:00000001
"Description"="Выделить по расширению"

[HKEY_CURRENT_USER\Software\Far\Users\sany\KeyMacros\Shell\CtrlShiftEnd]
"Sequence"="Add"
"DisableOutput"=dword:00000001
"Description"="Выделить по маске"

[HKEY_CURRENT_USER\Software\Far\Users\sany\KeyMacros\Shell\AltShiftEnd]
"Sequence"="Subtract"
"DisableOutput"=dword:00000001
"Description"="Снять выделение по маске"
VovKa
Posts: 12
Joined: Sun 11 May, 2008 10:18

макрос для ftp

Post by VovKa »

в двух последних билдах перестал работать макрос
запускает даунлоуд файла с помощью утилиты curl

Code: Select all

macro:post CtrlY $IClip CtrlF CtrlIns CtrlY %url=substr(replace(replace(replace(replace(replace(clip(0,""),"\"","",0),"{","%7B",0),"}","%7D",0),"[","%5B",0),"]","%5D",0),6,0); "start \"" $Text %url "\" /MIN curl -o \"" $Text PPanel.Path "\\" $Text APanel.Current "\" \"" $Text %url "\"" Enter
User avatar
Skirda
Posts: 3475
Joined: Wed 16 Mar, 2005 11:01
Been thanked: 8 times

Re: макрос для ftp

Post by Skirda »

а в макросе ли дело?
может это плагин?
We are the Borg. You will be assimilated.
So Say We All!
VovKa
Posts: 12
Joined: Sun 11 May, 2008 10:18

Re: макрос для ftp

Post by VovKa »

да дело в макросе

Code: Select all

macro:post CtrlY $IClip CtrlF CtrlIns CtrlY %url=substr(clip(0,""),6,0); $Text %url
работает в The FAR manager, version 1.71 alpha 4 (build 2368)
не работает The FAR manager, version 1.71 alpha 4 (build 2449)
в конце концов разобрался
изменилось поведение substr
вот так будет работать

Code: Select all

macro:post CtrlY $IClip CtrlF CtrlIns CtrlY %url=substr(clip(0,""),6,-1); $Text %url
kondrik
Posts: 139
Joined: Tue 29 Mar, 2005 13:30
Has thanked: 2 times

Re: Как написать простой макрос?

Post by kondrik »

А для более сложных макросов есть какие-то специализированные редакторы?
kondrik
Posts: 139
Joined: Tue 29 Mar, 2005 13:30
Has thanked: 2 times

Помогите намакросить...

Post by kondrik »

Хочу написать макрос для копирования выделенных файлов с временной панели в другую панель с сохранением всех путей (кроме имени диска).
Подскажите как правильнее такое реализовать?
Kildor
Posts: 1515
Joined: Wed 16 Mar, 2005 06:26
Location: Новосибирск
Been thanked: 1 time
Contact:

Re: Как написать простой макрос?

Post by Kildor »

kondrik
Есть.
Встроен в Фар.
Рекомендую редактировать с колорером, схемой для *.macro, кажется идёт в комплекте к плагину selmacro.
Ты мне не выкай!
«ФарФорум не для пользователей!»
Upd:
P.S. Я просто поддерживаю беседу.» © Народ.

xmpp:kildor@jabber.ru
kondrik
Posts: 139
Joined: Tue 29 Mar, 2005 13:30
Has thanked: 2 times

Re: Помогите намакросить...

Post by kondrik »

подскажите как в сделать обход выделенных файлов. Понимаю что как-то циклом $While, но что-то не выходит.
kondrik
Posts: 139
Joined: Tue 29 Mar, 2005 13:30
Has thanked: 2 times

Re: Помогите намакросить...

Post by kondrik »

что-то тишина здесь. Никто не хочет помочь. В общем как-то удалось намакросить. Но теперь интересует вопрос - в макросах можно использовать команды типа "copy", "xcopy" и т.п.?
User avatar
Centaur
Posts: 1083
Joined: Tue 05 Apr, 2005 20:09
Location: Novosibirsk, Russia
Been thanked: 2 times

Re: Помогите намакросить...

Post by Centaur »

Я так думаю, простейше в данном случае будет скопировать список выделенных файлов с путями в буфер, вставить в редактор, пройтись заменой по регекспу /^(базовый путь)\\(.*)$/ на move "$1\$2" "путь назначения\$2", сохранить в .cmd и запустить.
kondrik
Posts: 139
Joined: Tue 29 Mar, 2005 13:30
Has thanked: 2 times

Re: Помогите намакросить...

Post by kondrik »

Centaur
спасибо. Я уже над этим подумывал. Возможно это решение проблемы.
User avatar
HaRT
Moderator
Posts: 10823
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Re: Как написать простой макрос?

Post by HaRT »

Kildor wrote:в комплекте к плагину selmacro
Улучшенная и дополненная схема тут.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
HaRT
Moderator
Posts: 10823
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Re: Помогите намакросить...

Post by HaRT »

Centaur, kondrik
А зачем через буфер? С временной панели можно список сразу в файл сохранить (AltShiftF2).
Фар есть инструмент, а не нянька. © 2009 DrKnS
Locked

Return to “Нужна помощь”