Наверняка кто-то уже имеет правильный макрос для копирования строки в редакторе (на кнопке F5, разумеется ).
Поделитесь.
Макрос для дублирования строки в редакторе
-
- Posts: 1515
- Joined: Wed 16 Mar, 2005 06:26
- Location: Новосибирск
- Been thanked: 1 time
- Contact:
для копирования? или для дублирования??
Если первое, то CtrlC на строке.
Если второе, то
Если первое, то CtrlC на строке.
Если второе, то
Code: Select all
$iClip
$if(Editor.State & 0x020 )
CtrlD $exit $end
$if(Editor.State & 0x010 )
CtrlD $exit $end
%cp=Editor.CurPos; CtrlU CtrlC Home
$if(Editor.CurPos!=1)
Home $end CtrlV CtrlU
$while (Editor.CurPos!=%cp)
$if (Editor.CurPos>%cp) Left
$else
Right $end
$end
Ты мне не выкай!
«ФарФорум не для пользователей!»
Upd:
P.S. Я просто поддерживаю беседу.» © Народ.
xmpp:kildor@jabber.ru
«ФарФорум не для пользователей!»
Upd:
P.S. Я просто поддерживаю беседу.» © Народ.
xmpp:kildor@jabber.ru
-
- Posts: 1515
- Joined: Wed 16 Mar, 2005 06:26
- Location: Новосибирск
- Been thanked: 1 time
- Contact:
al666
просто я его взял из своего фара, а у меня этот макрос висит на CtrlD, и логика там следующая:
Если в редакторе есть выделеный блок, то вызываем CtrlD (то есть, удаление выделеного блока)
Иначе, дублируем строку.
Соответственно, раз ты хочешь повешать его на F5, то да, тебе начало макроса не нужно
просто я его взял из своего фара, а у меня этот макрос висит на CtrlD, и логика там следующая:
Если в редакторе есть выделеный блок, то вызываем CtrlD (то есть, удаление выделеного блока)
Иначе, дублируем строку.
Соответственно, раз ты хочешь повешать его на F5, то да, тебе начало макроса не нужно
Ты мне не выкай!
«ФарФорум не для пользователей!»
Upd:
P.S. Я просто поддерживаю беседу.» © Народ.
xmpp:kildor@jabber.ru
«ФарФорум не для пользователей!»
Upd:
P.S. Я просто поддерживаю беседу.» © Народ.
xmpp:kildor@jabber.ru
- HaRT
- Moderator
- Posts: 10823
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Предлагаю свой макрос на эту тему.
Дублируется выделение (если оно есть) или текущая строка (в противном случае). Если установлен плагин Mouse Select++ версии 2.03 или выше, то а) выделение сохраняется, и б) дубликат оказывается в правильном месте (сразу вслед за оригиналом), даже если курсор находится невесть где.
Примечание: в любом случае используется закладка №0.
Дублируется выделение (если оно есть) или текущая строка (в противном случае). Если установлен плагин Mouse Select++ версии 2.03 или выше, то а) выделение сохраняется, и б) дубликат оказывается в правильном месте (сразу вслед за оригиналом), даже если курсор находится невесть где.
Примечание: в любом случае используется закладка №0.
Code: Select all
REGEDIT4
[HKEY_CURRENT_USER\Software\Far\PluginHotkeys\Plugins/MSel/MouseSelect.DLL]
"Hotkey"="o"
[HKEY_CURRENT_USER\Software\Far\KeyMacros\Editor\F5]
"Sequence"="F11 %c = Checkhotkey ( \"o\" ); $If ( %c ) o s $Else Esc $End %l = ! Selected; CtrlShift0 $IClip CtrlC $If ( %c ) F11 o e $Else $If ( %l ) Home $End $End CtrlU CtrlV Ctrl0 $If ( %c ) F11 o r $Else $If ( %l ) CtrlU $End $End"
"DisableOutput"=dword:00000001
"NoSendKeysToPlugins"=dword:00000001
"Description"="MSel: duplicate block or line"
@="MSel: duplicate block or line"
Re: Макрос для дублирования строки в редакторе
Я делаю себе простейшие макросы. Вот мой макрос:
Команда выполнения F5
Область выполнения Текстовый редактор
Последовательность CtrlShift4 Home ShiftDown CtrlP CtrlU Ctrl4
Команда выполнения F5
Область выполнения Текстовый редактор
Последовательность CtrlShift4 Home ShiftDown CtrlP CtrlU Ctrl4