AutoHotKeyで、Explorerの並べ替えを便利に。

 エクスプローラの並べ替えにショートカットつけると地味に便利。Ctrl+Nで名前順、Ctrl+Mで更新日時順、Ctrl+Tで種類順、Ctrl+Sでサイズ順。ちなみに、現在と同じ項目で並べ替えをすると逆順になる。

 まずXP向け。それ以前で動くかは知らん。

;--------------------------------------------------
; WindowsExplorer
;--------------------------------------------------
#IfWinActive ahk_class CabinetWClass
^n::PostMessage, 0x111, 30210, 0, , A
^s::PostMessage, 0x111, 30211, 0, , A
^t::PostMessage, 0x111, 30212, 0, , A
^m::PostMessage, 0x111, 30213, 0, , A

#IfWinActive ahk_class ExploreWClass
^n::PostMessage, 0x111, 30210, 0, , A
^s::PostMessage, 0x111, 30211, 0, , A
^t::PostMessage, 0x111, 30212, 0, , A
^m::PostMessage, 0x111, 30213, 0, , A

; デスクトップ
#IfWinActive ahk_class Progman
^n::PostMessage, 0x111, 30210, 0, , A
^s::PostMessage, 0x111, 30211, 0, , A
^t::PostMessage, 0x111, 30212, 0, , A
^m::PostMessage, 0x111, 30213, 0, , A

; ファイルダイアログ
#IfWinActive ahk_class #32770
^n::
ControlGet, CntHwnd, hwnd, , SHELLDLL_DefView1, A
PostMessage, 0x111, 30210, 0, , ahk_id %CntHwnd%
return
^s::
ControlGet, CntHwnd, hwnd, , SHELLDLL_DefView1, A
PostMessage, 0x111, 30211, 0, , ahk_id %CntHwnd%
return
^t::
ControlGet, CntHwnd, hwnd, , SHELLDLL_DefView1, A
PostMessage, 0x111, 30212, 0, , ahk_id %CntHwnd%
return
^m::
ControlGet, CntHwnd, hwnd, , SHELLDLL_DefView1, A
PostMessage, 0x111, 30213, 0, , ahk_id %CntHwnd%
return

 そして7向け。Vistaでも動く……んじゃないかな。

;--------------------------------------------------
; WindowsExplorer
;--------------------------------------------------
#IfWinActive ahk_class CabinetWClass
^n::
ControlGet, CntHwnd, hwnd, , ShellTabWindowClass1, A
PostMessage, 0x111, 30211, 0, , ahk_id %CntHwnd%
return
^m::
ControlGet, CntHwnd, hwnd, , ShellTabWindowClass1, A
PostMessage, 0x111, 30212, 0, , ahk_id %CntHwnd%
return
^t::
ControlGet, CntHwnd, hwnd, , ShellTabWindowClass1, A
PostMessage, 0x111, 30213, 0, , ahk_id %CntHwnd%
return
^s::
ControlGet, CntHwnd, hwnd, , ShellTabWindowClass1, A
PostMessage, 0x111, 30214, 0, , ahk_id %CntHwnd%
return

#IfWinActive ahk_class ExploreWClass
^n::
ControlGet, CntHwnd, hwnd, , ShellTabWindowClass1, A
PostMessage, 0x111, 30211, 0, , ahk_id %CntHwnd%
return
^m::
ControlGet, CntHwnd, hwnd, , ShellTabWindowClass1, A
PostMessage, 0x111, 30212, 0, , ahk_id %CntHwnd%
return
^t::
ControlGet, CntHwnd, hwnd, , ShellTabWindowClass1, A
PostMessage, 0x111, 30213, 0, , ahk_id %CntHwnd%
return
^s::
ControlGet, CntHwnd, hwnd, , ShellTabWindowClass1, A
PostMessage, 0x111, 30214, 0, , ahk_id %CntHwnd%
return

;デスクトップ
#IfWinActive ahk_class Progman
^n::
ControlGet, CntHwnd, hwnd, , SHELLDLL_DefView1, A
PostMessage, 0x111, 30211, 0, , ahk_id %CntHwnd%
return
^s::
ControlGet, CntHwnd, hwnd, , SHELLDLL_DefView1, A
PostMessage, 0x111, 30212, 0, , ahk_id %CntHwnd%
return
^t::
ControlGet, CntHwnd, hwnd, , SHELLDLL_DefView1, A
PostMessage, 0x111, 30213, 0, , ahk_id %CntHwnd%
return
^m::
ControlGet, CntHwnd, hwnd, , SHELLDLL_DefView1, A
PostMessage, 0x111, 30214, 0, , ahk_id %CntHwnd%
return

;ファイルダイアログ
#IfWinActive ahk_class #32770
^n::
ControlGet, CntHwnd, hwnd, , SHELLDLL_DefView1, A
PostMessage, 0x111, 30211, 0, , ahk_id %CntHwnd%
return
^m::
ControlGet, CntHwnd, hwnd, , SHELLDLL_DefView1, A
PostMessage, 0x111, 30212, 0, , ahk_id %CntHwnd%
return
^t::
ControlGet, CntHwnd, hwnd, , SHELLDLL_DefView1, A
PostMessage, 0x111, 30213, 0, , ahk_id %CntHwnd%
return
^s::
ControlGet, CntHwnd, hwnd, , SHELLDLL_DefView1, A
PostMessage, 0x111, 30214, 0, , ahk_id %CntHwnd%
return

 Vista以降はウィンドウ直接狙っても効果がなかったり、番号揺らいでたり、ややこしい。
 あと、WinGetでクラス名指定してもダメだったからControlGetでClassNN指定したけども、そういうもんなん? 正直7版は自信ない。まあウチでは動いてるからいいやー、っていう。XP版のファイルダイアログ操作も、7版を移植しただけなので同様。

 なお、いわば[右クリック>並べ替え]の操作を省略しているにすぎないので、「詳細表示の設定」から項目増やしたり順番いじるとずれる。

 Windows7のはグループ表示がONになってしまうことがあるようなので、グループ表示をOFFにするホットキーも作成。

^g::
ControlGet, CntHwnd, hwnd, , ShellTabWindowClass1, A
PostMessage, 0x111, 30210, 0, , ahk_id %CntHwnd%
return


[PR]
by lordnoesis | 2011-06-13 00:11 | Trackback | Comments(0)
トラックバックURL : http://poimono.exblog.jp/tb/16461927
トラックバックする(会員専用) [ヘルプ]
※このブログはトラックバック承認制を適用しています。 ブログの持ち主が承認するまでトラックバックは表示されません。
名前
URL
画像認証
削除用パスワード

※このブログはコメント承認制を適用しています。ブログの持ち主が承認するまでコメントは表示されません。

ブログトップ | ファンになる