* キーバインド設定 [#a4ebc287]
** AutoHotKeyでBash(Readline)ライクなキーバインド [#f933e3db]
- PowerShell自体にキーバインド設定機能はないらしいので、AutoHotKeyを使う。
- 以下の通りでCTRL+W以外はだいたい再現出来る。CTRL+Rはちょっと違うけど、これはこれで便利がいい。
-- ちなみに、以下では個人的にWindowsのターミナルソフトはConEmuを使っている(Console2はもう使ってない)のでCmdグループを指定してあるが、Windows標準のCMDプロンプトとPowerShellしか使ってない人は指定しなくても良い。
; ==============================================================================
; AHK 設定
; ==============================================================================
; ------------------------------------------------------------------------------
; Group
; ------------------------------------------------------------------------------
; Cmd
GroupAdd, Cmd, ahk_class Console_2_Main ; Console2
GroupAdd, Cmd, ahk_class VirtualConsoleClass ; ConEmu
GroupAdd, Cmd, ahk_class ConsoleWindowClass ; CMD/PowerShell
; ------------------------------------------------------------------------------
; PowerShell
; ------------------------------------------------------------------------------
#If WinActive("ahk_group Cmd") && WinActive("Windows PowerShell")
^a::Send, {HOME}
^e::Send, {END}
^p::Send, {Up}
^n::Send, {Down}
^f::Send, {Right}
^b::Send, {Left}
^l::Send, {ESC}cls{ENTER}
^d::Send, {Del}
^k::Send, ^{END}
^u::Send, ^{HOME}
^r::Send, {F8}
#If
** コマンドヒストリー参照 [#c022d6d5]
※ コマンドヒストリー参照は何気にBash(Readline)以上の複雑な機能が存在してる。
:F1 キー| コマンド ライン上でカーソルを 1 文字右に移動します。カーソルが行の最後にある場合は、最後のコマンドの後に 1 文字挿入します。
:F2 キー| 1 つ前のコマンド ラインで入力した文字のうち、指定した文字より前までをコピーして、新しいコマンド ラインを作成します。
:F3 キー| 1 つ前のコマンド ラインのコンテンツを使用して、現在のカーソル位置から行の末尾まで、コマンド ラインを完成させます。
:F4 キー| 現在のコマンド ラインの文字のうち、現在のカーソルの位置から指定した文字の前までを削除します。
:F5 キー| コマンドの履歴を古い方にさかのぼります。
:F7 キー| コマンドの履歴のポップアップ ウィンドウを表示して、コマンドを選択できます。方向キーを使用して、一覧をスクロールします。Enter キーを押して、実行するコマンドを選択します。また、右方向キーを押して、コマンド ラインにテキストを配置することもできます。
:F8 キー| 入力したテキストに基づいて、コマンドの履歴を古い方にさかのぼり、コマンド ラインに入力されているテキストに一致するコマンドを表示します。
:F9 キー| コマンドの履歴に含まれる特定の番号に対応するコマンドを実行します。F7 キーを押すと、コマンドの番号が一覧表示されます。
:PageUp キー/PageDown キー| コマンドの履歴の先頭または末尾にあるコマンドにアクセスします。
** psreadline [#ee9a8a6f]
- PowerShellをフックしてBash/Readlineの動作を再現するPowerShellモジュール。
- 再現率はかなり高い。
- が、動作が不安定で重い。
- https://bitbucket.org/oising/psreadline
** 参考 [#y43b3755]
- http://www.leeholmes.com/blog/2007/02/10/customize-even-more-with-autohotkey/
- Windows PowerShell で行を編集するための基本的なヒントとショートカット http://technet.microsoft.com/ja-jp/windows/gg182767