Apakah ada cara untuk mendapatkan keymind vim di PowerShell seperti yang Anda lakukan di bash atau zsh dengan perintah seperti
set -o vi
Apakah ada cara untuk mendapatkan keymind vim di PowerShell seperti yang Anda lakukan di bash atau zsh dengan perintah seperti
set -o vi
Jawaban:
Saat ini Anda memiliki beberapa opsi. Dengan konsol default, Anda dapat menjalankan Vim di Windows (Anda mungkin sudah memilikinya jika Anda memiliki git atau alat lain yang diinstal). Untuk menjadikan integrasi ini tempat yang lebih mulus di profil PowerShell Anda:
$VIMEXEPATH = "c:\<location>\vim.exe"
Set-Alias vim $VIMEXEPATH
Set-Alias vi $VIMEXEPATH
Saya juga merekomendasikan menambahkan berikut ini ke vimrc
file Anda sehingga menjalankan perintah shell dengan PowerShell itu sendiri.
set shell=powershell
set shellcmdflag=-command
Kalau tidak, satu-satunya ISE yang mendukung mode Vi sekarang adalah PSReadLine sekarang tersedia di Galeri PS
Ada catatan penggunaan tetapi secara singkat untuk mode VI Anda perlu menambahkan baris berikut ke profil ISE Anda.
Set-PSReadlineOption -EditMode vi
Perhatikan bahwa dukungan Vi telah ditambahkan di 1.2 tetapi 1.1 dikirimkan bersama Windows 10. Anda harus menggunakan parameter -force untuk memperbarui versi pengiriman (alias yang diinstal secara manual).
Modul PSReadline menyediakan ini.
Untuk menginstal sederhana tidak yakin apa persyaratannya tapi saya pikir setidaknya windows 10 untuk metode ini disediakan. Jika Anda tidak memiliki OneGet atau tidak yakin Anda dapat mengikuti instruksi di PSReadline
Untuk menginstal PSReadline tanpa meninggikan hak istimewa
Install-Module PsReadline -Scope CurrentUser
Periksa Anda memiliki profil PowerShell
Test-Path $PROFILE
Jika Anda tidak membuatnya
New-File -Type File $PROFILE
Buka $ PROFIL di ISE
ise $PROFILE
Tambahkan baris ini
Set-PSReadlineOption -EditMode vi
Muat ulang $ PROFIL atau restart ulang PowerShell
& $PROFILE
Saya tidak akan bersumpah bahwa tidak ada fitur tidak berdokumen dari Powershell yang memungkinkan ini, tetapi sejauh yang saya tahu jawabannya adalah tidak. Setidaknya saya belum pernah melihat apa pun dalam dokumentasi Powershell untuk menyarankan itu mungkin.
JR
Seperti yang terjadi, Anda dapat memuat penyorotan PowerShell ke VIM. Itu yang saya gunakan untuk pengembangan skrip.
http://www.vim.org/scripts/script.php?script_id=1327
Meskipun tidak ada dalam shell itu sendiri, ini berguna untuk membuat skrip yang lebih panjang. Saya punya satu jendela di VIM, dan ada prompt PowerShell di jendela lain. Saya merasa sangat berguna .
Mesin powershell sekarang menawarkan kait untuk membuatnya relatif mudah, tetapi saya belum tahu siapa yang pernah melakukannya.
Proyek PSReadln memiliki mode emacs yang muncul, meskipun masih dalam masa pertumbuhan. Menambahkan mode vi di PSReadln akan menjadi hal yang jelas untuk dilakukan, tetapi saya tidak punya waktu untuk mencurahkannya.