1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

PowerShell のキーバインドを Vim にする

Posted at

やりたかったこと

  • PowerShell のコマンドラインを Vim コマンドで操作したい
  • jjEsc として扱う
  • ついでに PowerShell を便利にしたい

方法

PowerShell 起動時に実行されるスクリプトファイルの場所を確認

$PROFILE

ファイル内に以下を記述する

Set-PSReadLineOption -EditMode Vi

jjEsc を呼び出したい場合には以下を追記する

Set-PSReadLineKeyHandler -Chord 'j' -ScriptBlock {
  if ([Microsoft.PowerShell.PSConsoleReadLine]::InViInsertMode()) {
    $key = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")
    if ($key.Character -eq 'j') {
      [Microsoft.PowerShell.PSConsoleReadLine]::ViCommandMode()
    }
    else {
      [Microsoft.Powershell.PSConsoleReadLine]::Insert('j')
      [Microsoft.Powershell.PSConsoleReadLine]::Insert($key.Character)
    }
  }
}

括弧や引用符の補完などを行いたい場合は以下を参考にさらに追記する

他によい方法があったらぜひ教えてください。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?