人気ブログランキング | 話題のタグを見る

MouseGesture.ahkで、マウスホイールを加速してみた。

 長いページをホイールでスクロールさせるのが面倒になって、ソフトごとにホイール係数変えてみたら便利だったので、さらに発展させてみた。

 ホイールを一方向に連続して回転させ続けると、徐々に加速――というか、動く距離が増えていく。
 解除はカウンターあてればできるのだし、移動量の増加と共に、許容する入力間隔も増加させた方がいいかも。調整は個々人によるだろうから、今回はとりあえず600固定にしといた。かなり素早く回した時だけ超加速――というのも考えたが、必死こいて回したくないというのが出発点なのでやめた。他に、Shift+ホイールとかでPageUp/Downさせるのもいいかも。

 以下、ブラウザ向けの例。条件定義等は各自適当に。内容自体は、MG.ahkでなくAHKでも動く。

[Browser]
Exe=iexplore.exe
Exe=firefox.exe
Exe=opera.exe
Exe=chrome.exe

[WU_]
G=WU_
Browser=if(("*WheelUp" == A_PriorHotkey) && (600 >= A_TimeSincePriorHotkey)) {【TAB】【TAB】if (6 > WUSW) {【TAB】【TAB】【TAB】WUSW++【TAB】【TAB】【TAB】Send, {WheelUp}【TAB】【TAB】} else if (18 > WUSW) {【TAB】【TAB】【TAB】;TipView("Turbo", 600)【TAB】【TAB】【TAB】WUSW++【TAB】【TAB】【TAB】Send, {WheelUp 3}【TAB】【TAB】} else {【TAB】【TAB】【TAB】;TipView("Super Turbo", 600)【TAB】【TAB】【TAB】Send, {WheelUp 6}【TAB】【TAB】}【TAB】} else {【TAB】【TAB】WUSW := 1【TAB】【TAB】Send, {WheelUp}【TAB】}

[WD_]
G=WD_
Browser=if(("*WheelDown" == A_PriorHotkey) && (600 >= A_TimeSincePriorHotkey)) {【TAB】【TAB】if (6 > WDSW) {【TAB】【TAB】【TAB】WDSW++【TAB】【TAB】【TAB】Send, {WheelDown}【TAB】【TAB】} else if (18 > WDSW) {【TAB】【TAB】【TAB】;TipView("Turbo", 600)【TAB】【TAB】【TAB】WDSW++【TAB】【TAB】【TAB】Send, {WheelDown 3}【TAB】【TAB】} else {【TAB】【TAB】【TAB】;TipView("Super Turbo", 600)【TAB】【TAB】【TAB】Send, {WheelDown 6}【TAB】【TAB】}【TAB】} else {【TAB】【TAB】WDSW := 1【TAB】【TAB】Send, {WheelDown}【TAB】}

 発動してるか判りにくいので、ツールチップを表示するユーザー関数「TipView」を仕込んである。使いたい人はコメントアウトを解除して、以下の関数をMG.ahkの拡張スクリプトに書くか、AHKの関数ライブラリに置く。





TipView.ahk

TipView(TextBuf, Timer = 3000) {
  ToolTip, %TextBuf%
  SetTimer, TipClose, %Timer%
}

TipClose:
  SetTimer, TipClose, Off
  ToolTip
return


by lordnoesis | 2012-10-15 20:30 | テクノロジ | Trackback | Comments(0)
ブログトップ | ファンになる