AutoHotKeyで、KbMediaPlayerを少し便利に。

 KbMediaPlayerが7年ぶりにバージョンアップされたが、メニューのIDが変わって今までのスクリプトで問題が出たので、更新がてらPOSTしてみる。「2.51beta.2012.0930」向け。

;--------------------------------------------------------------------------------------
; KbMediaPlayer
;--------------------------------------------------------------------------------------
#IfWinActive - KbMedia Player - ahk_class TFrmMIDI

F1::return
F2::PostMessage, 0x111, 24, 0, , A  ; 単曲再生
F3::PostMessage, 0x111, 21, 0, , A  ; 単曲リピート
F4::PostMessage, 0x111, 22, 0, , A  ; リピート
F6::
  PostMessage, 0x111, 16, 0, , A  ; フェードアウト
  Sleep, 3500
  PostMessage, 0x111, 15, 0, , A  ; 停止
return
F7::PostMessage, 0x111, 25, 0, , A  ; 連続再生
F8::PostMessage, 0x111, 26, 0, , A  ; ランダム再生
F9::PostMessage, 0x111, 29, 0, , A  ; 未再生の曲だけ


#IfWinActive Error ahk_class #32770, ファイルは削除または移動されました。

; 「ファイルが見つからん」ダイアログでスペースを打鍵すると、以後自動で閉じるように。
$Space::
  SetTimer, Check_KB, 500
return

Check_KB:
  IfWinExist, Error ahk_class #32770, ファイルは削除または移動されました。
  {
    ControlSend, , {Enter}
    WinWaitClose, , , 1
    PostMessage, 0x111, 18, 0, , ahk_class TFrmMIDI  ; 次の曲
  }
  IfWinNotExist, ahk_class TFrmMIDI
    SetTimer, Check_KB, Off
return

 どのキーがどの機能か覚えられない人は、スキンにでも書いておくとよい。

 後半のは、音楽ファイルのあるNASが停止中に「次の曲」した時にダイアログ頻発するの対策。ダイアログが出てると(Kbの)ホットキー効かなくなるから、致命的に邪魔なんだあれ……。

 ダイアログ閉じるだけでなく、正常に次の曲が読み込まれるまで繰り返すようにしてみた。


[PR]
by lordnoesis | 2012-09-30 19:41 | テクノロジ | Trackback | Comments(0)

AutoHotKeyで、常駐AHKスクリプトの運用を少し便利に。

 常駐AHKスクリプトの運用(編集やリロード)を便利にするホットキー。

;--------------------------------------------------------------------------------------
; AHK
;--------------------------------------------------------------------------------------

; 5秒後にスクリプトリロード
; もう一度呼び出せば即座にリロード。一時的にホットキーを無効化する作用も。
#R::
  Suspend, Permit
  if ("#R" == A_PriorHotkey)
    Reload
  Suspend, On
  SplashTextOn, 100, 20, , AHK Reload
  SetTimer, AHK_Reload, -5000
return

AHK_Reload:
  Reload
return

; スクリプト編集
#E::
  Run, Edit %A_ScriptFullPath%
return

; WinSpy呼び出し
; WinSpy起動済みならアクティブに。
#W::
  SplitPath, A_AhkPath, , AhkDir
  IfWinExist, Active Window Info (Shift-Alt-Tab to freeze display) ahk_class AU3Reveal
    WinActivate
  else
    Run, %AhkDir%\AU3_Spy.exe
return


[PR]
by lordnoesis | 2012-09-30 18:05 | Trackback | Comments(0)

AutoHotKeyで、Operaの拡張管理を開いてもKbMedia Playerが停止しないようにしてみた。

 KbMedia Playerでホットキーを有効にしてるとそちらが優先されて、Operaで拡張管理を開くショートカットが効かなくなるので、AHKで対策。
 打鍵で拡張管理を開き、長押しでKb停止。

#IfWinActive ahk_class OperaWindowClass
$^+E::
  KeyWait, E, T0.8
  if ErrorLevel
    Send, ^+E
  else
    SendPlay, ^+E
  KeyWait, E
return

 SendとSendPlayを逆にした方が(長押しで拡張管理にした方が)使いやすいかも。Kbはグローバルホットキーだし。


[PR]
by lordnoesis | 2012-09-13 20:42 | テクノロジ | Trackback | Comments(0)
ブログトップ | ファンになる