Макрос-альтернатива плагинам (Mouse2002|MouseSelect)

Здесь обсуждается всё, что касается макросов.
User avatar
John Doe
Бюрократ
Posts: 13863
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 74 times
Been thanked: 428 times
Contact:

Re: Макрос-альтернатива плагинам "Mouse2002|MouseSelect"

Post by John Doe »

Latest post of the previous page:

SUSim wrote: :crazy: прикалывают меня здешние смайлы :)
Испралюсь...
Да и еще я грешу многоточием... :)
Не очень-то вы исправляетесь - смайл в каждой строчке.
SUSim wrote:2. editor.sel(3,1) не снимает выделение при совпадении колонки начала и колонки конца выделения при несовпадении строк, по логике должен (приходится снимать выделение вручную).
Не совсем по теме, но для информации: на мантисе есть незавершённая дискуссия на тему выделения/снятия (там речь в основном про поточные блоки).
User avatar
HaRT
Moderator
Posts: 10868
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Re: Макрос-альтернатива плагинам "Mouse2002|MouseSelect"

Post by HaRT »

SUSim wrote:3. $SelWord ведет себя непонятно при нахождении курсора вне слова.
Очень даже понятно (в Фаре 1.75) — выделяет слово, которое заканчивается в строке курсора не левее его позиции. Если такого нет, ничего не выделяет. Положение курсора не меняется.
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

Re: Макрос-альтернатива плагинам "Mouse2002|MouseSelect"

Post by SUSim »

Обновление плагина, тьфу макроса :) (22.06.10)
1)
Maximus5 wrote:Еще баг вылез (на предыдущей версии макроса, новый пока не пробовал).
При наличии неразвернутых табов, по даблклику выделяет слово правее чем нужно.
Фиксед!
2) При файле короче экрана - прогон выделения.
Фиксед!
http://forum.farmanager.com/viewtopic.p ... 446#p63980
SimSU ··· ·· -- ··· ··-
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

Re: Макрос-альтернатива плагинам "Mouse2002|MouseSelect"

Post by SUSim »

Еще заметил при выделении вертикального блока было несоответствие позиции :( при неразвернутых табах.
Поправил :) теперь лучше, на мой взгляд, даже чем клавишами выделять вертикальный блок...
Обновление
http://forum.farmanager.com/viewtopic.p ... 446#p63980
с этим макросом в х64 работает мышь в редакторе, я доволен :)
SimSU ··· ·· -- ··· ··-
ccaid
Posts: 908
Joined: Fri 12 Jun, 2009 16:04
Has thanked: 24 times
Been thanked: 6 times

Re: Макрос-альтернатива плагинам "Mouse2002|MouseSelect"

Post by ccaid »

есть проблема, хотя затрагивает она не всех.
берём колорёр, включаем в нём «крест» и начинаем кликать в произвольных точках экрана редактора. курсор-то прыгает сразу же в указанную точку, а вот крест — с запозданием. видимо, пока таймауты в макросе отсчитываются, управление плагинам не передается.
Фар делают добрые люди
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

Re: Макрос-альтернатива плагинам "Mouse2002|MouseSelect"

Post by SUSim »

ccaid wrote:видимо, пока таймауты в макросе отсчитываются, управление плагинам не передается.
да :( задержка может быть 3х250 мс
можно сделать перерисовку экрана 3 раза за эту почти секунду, подумаю, на днях...

главное не забыть :) крестом не пользуюсь... (напомни в понедельничек ЛС, командировка опять :( )
SimSU ··· ·· -- ··· ··-
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

Re: Макрос-альтернатива плагинам "Mouse2002|MouseSelect"

Post by SUSim »

SimSU ··· ·· -- ··· ··-
valiva28
Posts: 49
Joined: Tue 07 Sep, 2010 10:20

Re: Макрос-альтернатива плагинам (Mouse2002|MouseSelect)

Post by valiva28 »

А возможно доработать макрос таким образом, что-бы при отметке блока левой/правой кнопкой мыши, блок сразу-же копировался в буфер, без дополнительного нажатия клавиши Shift (функциональность MouseSelect)?
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

Re: Макрос-альтернатива плагинам (Mouse2002|MouseSelect)

Post by SUSim »

Можно заменив строку %TOper=0; на %TOper=2; соответствующий кусок будет выглядеть так:
SimSU ··· ·· -- ··· ··-
valiva28
Posts: 49
Joined: Tue 07 Sep, 2010 10:20

Re: Макрос-альтернатива плагинам (Mouse2002|MouseSelect)

Post by valiva28 »

А в каком месте самого макроса и что надо изменить, что-бы потестировать этот вариант? Или ткните носом в ссылку, как преобразовать многострочный текст макроса в код, совместимый с форматом соответствующей записи в реестре
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

Re: Макрос-альтернатива плагинам (Mouse2002|MouseSelect)

Post by SUSim »

valiva28 wrote:как преобразовать многострочный текст макроса в код, совместимый с форматом соответствующей записи в реестре
А преобразовывать ничего и не надо...
Отредактируй HKEY_CURRENT_USER\Software\far2\KeyMacros\Editor\MsLClick\Sequence хоть в regedit хоть плагином registy browser или regeditor.

P.S.
Сорри что долго не отвечал, находился далеко от цивилизации :) отдыхал 8)
SimSU ··· ·· -- ··· ··-
valiva28
Posts: 49
Joined: Tue 07 Sep, 2010 10:20

Re: Макрос-альтернатива плагинам (Mouse2002|MouseSelect)

Post by valiva28 »

SUSim, спасибо за подсказку. Попробовал новый вариант макроса - как-то неправильно работает: отмечает блок и копирует его сразу в буфер - OK! Но потом любой "клик" левой кнопкой в редакторе вызывает вставку блока из буфера. Можно поправить ?
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

Re: Макрос-альтернатива плагинам (Mouse2002|MouseSelect)

Post by SUSim »

В одном месте заменили, а в другом я забыл :oops:
надо

Code: Select all

  $IF (((%Toper==1)||(%Toper==2))&&!%Selected) CtrlV $End
заменить на

Code: Select all

  $IF (((%Toper==1)||(%Toper==0))&&!%Selected) CtrlV $End
Это почти в самом конце макроса.
SimSU ··· ·· -- ··· ··-
valiva28
Posts: 49
Joined: Tue 07 Sep, 2010 10:20

Re: Макрос-альтернатива плагинам (Mouse2002|MouseSelect)

Post by valiva28 »

SUSim, спасибо, все заработало как надо! Еще один момент. По тройному клику выделяется строка, но выделяется вертикальным блоком. Можно ли исправить на выделение строчным блоком ?
User avatar
SUSim
Posts: 1637
Joined: Thu 18 Feb, 2010 17:32
Has thanked: 9 times
Been thanked: 26 times

Re: Макрос-альтернатива плагинам (Mouse2002|MouseSelect)

Post by SUSim »

Ну на самом-то деле блок не вертикальный, но я понял что ты хочешь...
Вместо

Code: Select all

        mmode(1,1) Home ShiftEnd editor.pos(1,5,%Fc) editor.pos(1,3,%Sec) mmode(1,0) %Selected=1;
Надо

Code: Select all

        mmode(1,1) Home ShiftDown editor.pos(1,5,%Fc) editor.pos(1,1,%Sel) editor.pos(1,3,%Sec) mmode(1,0) %Selected=1;
Только последняя строка файла не будет выделяться.
SimSU ··· ·· -- ··· ··-
User avatar
HaRT
Moderator
Posts: 10868
Joined: Tue 30 Aug, 2005 17:21
Has thanked: 221 times
Been thanked: 358 times

Re: Макрос-альтернатива плагинам (Mouse2002|MouseSelect)

Post by HaRT »

SUSim wrote:Только последняя строка файла не будет выделяться.
По меньшей мере в Фаре 1.75 есть вот такая магия: $IClip CtrlU CtrlIns
Фар есть инструмент, а не нянька. © 2009 DrKnS
Locked

Return to “Обсуждение макросов”