φ(.. ) 備忘録
   
  

2014年2月13日木曜日

fvwmユーザのためのAutoHotKey入門

私が入社した頃はSunOSでウィンドウマネージャーはfvwm、エディタはNEmacsというが主流であった。そのせいかWindowsをメインに使用する現在においても当時の癖が抜けず試行錯誤しながらWindowsのカスタマイズを行っている。
そのカスタマイズに最適なツールがAutoHotKeyである。
このツールはショートカットキーを自由にカスタマイズできることに加え、シャットダウンや再起動などの動作も任意のショーカットキーに割り当てることが可能で大変便利である。
ただ、カスタマイズはスクリプトライクなプログラミングが必要であり、初心者にはちょっとハードルが高いかも・・・・。ネットに転がっているスクリプトをコピペして書き換えるのが一番ラクかも。
ということでまずは、fvwmのときにつかっていたキーボードでウィンドウサイズを拡縮する機能を実装してみる。意外と簡単だった。スクリプトは以下。
#NoEnv
;============================================
;ウィンドウサイズ制御
;コンフィグ
MAX_H=1051
MAX_W=1920
^+i::
WinGet,id,ID,A
if(x%id%= ""){
WinGetPos,x%id%,y%id%,w%id%,h%id%,A
WinMove,ahk_id %id%,,x%id%,0,w%id%,MAX_H
}
Else{
WinMove,ahk_id %id%,,x%id%,y%id%,w%id%,h%id%
x%id%=
y%id%=
w%id%=
y%id%=
}
return
^+k::
WinGet,id,ID,A
if(x%id%= ""){
WinGetPos,x%id%,y%id%,w%id%,h%id%,A
WinMove,ahk_id %id%,,0,y%id%,MAX_W,h%id%
}
Else{
WinMove,ahk_id %id%,,x%id%,y%id%,w%id%,h%id%
x%id%=
y%id%=
w%id%=
y%id%=
}
return
^+j::
WinGet,id,ID,A
if(x%id%= ""){
WinGetPos,x%id%,y%id%,w%id%,h%id%,A
WinMove,ahk_id %id%,,0,0,MAX_W,MAX_H
}
Else{
WinMove,ahk_id %id%,,x%id%,y%id%,w%id%,h%id%
x%id%=
y%id%=
w%id%=
y%id%=
}
return
Ctrl + Shift + i で縦拡大、Ctrl + Shift + k で横拡大、Ctrl + Shift + j で全画面にでき、拡大状態でいずれかのショートカットキーを入力すると元に戻る。
みなさんも活用してみてはw

ウィンドウマネージャ徹底解説 fvwm―Fvwm/Fvwn95
江面 敦
テクノプレス
売り上げランキング: 1,224,284

0 件のコメント :

コメントを投稿