Wie richte ich Tastenkombinationen für Powershell unter Arch Linux ein?

Wie richte ich Tastenkombinationen für Powershell unter Arch Linux ein?

Ich arbeite mit Arch Linux (Manjaro), aber ich fange gerade an, Powershell zu lernen. Ich habe Powershell mit aus dem AUR installiert yay -S powershell. Bei der Verwendung von Powershell ( pwsh) habe ich jedoch festgestellt, dass die Tastenkombinationen nicht funktionieren. Durch Drücken von Auf/Ab wird der Befehlsverlauf nicht durchsucht, und durch Drücken von TABund ctrl-spacewird keine Tab-Vervollständigung ausgelöst.

Ich verwende alacritty mit zsh. Ich habe es jedoch auch mit getestet xterm pwshund das gleiche Problem besteht, daher glaube ich, dass der Terminalemulator und die übergeordnete Shellnichtdie Ursache und dass ich die Tastenkombinationen selbst konfigurieren muss.

Wie konfiguriere ich die grundlegenden Powershell-Tastenkombinationen?

Antwort1

PowerShell-Tastenkombinationen werden über das PSReadLinemitgelieferte Modul gesteuert. Das Modul bietet verschiedene Funktionen wie Syntaxhervorhebung, eine gute Mehrzeilenerfahrung, Verlauf und mehr (siehe:https://github.com/PowerShell/PSReadLine).

Was Sie suchen, sind die Schlüsselhandler:

PS> Set-PSReadLineKeyHandler -Key Tab -Function Complete

Eine vollständige Übersicht über die unterstützten Konfigurationsparameter finden Sie in der Dokumentation:

PS> help about_PSReadLine
# Or list the key current handlers and options:
PS> Get-PSReadLineKeyHandler
PS> Get-PSReadLineOption

Eine Beispielkonfiguration finden Sie in ihrem Git-Repository:https://github.com/PowerShell/PSReadLine/blob/master/PSReadLine/SamplePSReadLineProfile.ps1. Alle PSReadline-Anpassungen müssen zu Ihrem PowerShell-Profil hinzugefügt werden, damit sie über mehrere Sitzungen hinweg erhalten bleiben:

PS> echo $PROFILE
/Users/megamorf/.config/powershell/Microsoft.PowerShell_profile.ps1

Folgendes befindet sich normalerweise in meinem PowerShell-Profil:

Set-PSReadLineOption -EditMode Emacs -BellStyle None
Set-PSReadLineOption -HistorySearchCursorMovesToEnd

Set-PSReadlineKeyHandler -Key Tab -Function MenuComplete
Set-PSReadLineKeyHandler -Key UpArrow -Function HistorySearchBackward
Set-PSReadLineKeyHandler -Key DownArrow -Function HistorySearchForward

Set-PSReadlineKeyHandler -Key Ctrl+Shift+P `
    -BriefDescription CopyPathToClipboard `
    -LongDescription "Copies the current path to the clipboard" `
    -ScriptBlock { (Resolve-Path -LiteralPath $pwd).ProviderPath.Trim() | Set-Clipboard }

verwandte Informationen