Czy istnieje sposób na uzyskanie skrótów klawiszowych vima w PowerShell, tak jak w bash lub zsh za pomocą polecenia takiego jak
set -o vi
Czy istnieje sposób na uzyskanie skrótów klawiszowych vima w PowerShell, tak jak w bash lub zsh za pomocą polecenia takiego jak
set -o vi
Odpowiedzi:
Obecnie masz kilka opcji. Za pomocą domyślnej konsoli możesz po prostu uruchomić Vima w systemie Windows (możesz go już mieć, jeśli masz zainstalowany git lub inne narzędzia). Aby integracja była bardziej płynna, umieść to w swoim profilu PowerShell:
$VIMEXEPATH = "c:\<location>\vim.exe"
Set-Alias vim $VIMEXEPATH
Set-Alias vi $VIMEXEPATH
Polecam również dodanie do vimrc
pliku następującego pliku, aby wykonywał polecenia powłoki za pomocą samego programu PowerShell.
set shell=powershell
set shellcmdflag=-command
W przeciwnym razie jedynym ISE, który obsługuje obecnie tryb Vi, jest PSReadLine teraz dostępny w Galerii PS
Istnieją uwagi dotyczące użytkowania, ale w skrócie dla trybu VI musisz dodać następujący wiersz do swojego profilu ISE.
Set-PSReadlineOption -EditMode vi
Zauważ, że obsługa Vi została dodana w 1.2, ale 1.1 dostarczonym z Windows 10. Musisz użyć parametru -force, aby zaktualizować wersję wysyłkową (inaczej ręcznie zainstalowaną).
Moduł PSReadline zapewnia to.
Instalacja jest prosta, nie jestem pewien, jakie są wymagania, ale myślę, że przynajmniej Windows 10 dla tej metody pod warunkiem. Jeśli nie masz OneGet lub nie jesteś pewien, możesz postępować zgodnie z instrukcjami w PSReadline
Aby zainstalować PSReadline bez podnoszenia uprawnień
Install-Module PsReadline -Scope CurrentUser
Sprawdź, czy masz profil PowerShell
Test-Path $PROFILE
Jeśli go nie utworzysz
New-File -Type File $PROFILE
Otwórz $ PROFIL w ISE
ise $PROFILE
Dodaj tę linię
Set-PSReadlineOption -EditMode vi
Załaduj ponownie PROFIL $ lub po prostu uruchom ponownie PowerShell
& $PROFILE
Nie przysięgałbym, że nie ma nieudokumentowanej funkcji programu PowerShell, która na to pozwala, ale o ile wiem, odpowiedź brzmi „nie”. Przynajmniej nigdy nie widziałem w dokumentacji Powershell niczego, co sugerowałoby, że jest to możliwe.
JR
Tak się składa, że możesz załadować podświetlanie składni PowerShell do VIM. Tego używam do programowania skryptów.
http://www.vim.org/scripts/script.php?script_id=1327
Chociaż nie ma go w samej powłoce, jest przydatny do tworzenia dłuższych skryptów. Mam jedno okno w VIM i mam monit PowerShell w innym. Uważam to za bardzo przydatne .
Silnik PowerShell oferuje teraz haczyki, które sprawiają, że jest to stosunkowo proste, ale nie znam jeszcze nikogo, kto to zrobił.
Projekt PSReadln ma nowy tryb emacs, choć jest jeszcze w powijakach. Dodanie trybu vi w PSReadln byłoby oczywistą rzeczą do zrobienia, ale nie mam czasu na to poświęcać.