Vim Powershell ile
Windows gvim kullanıyorum.
Benim _vimrc ekledim:
set shell=powershell.exe
set shellcmdflag=-c
set shellpipe=>
set shellredir=>
function! Test()
echo system("dir -name")
endfunction
command! -nargs=0 Test :call Test()
Eğer bu işlevi çalıştırmak (Test) anlamsız karakterler (non rakam/harf ASCII karakter) görüyorum.
Eğer kabuk gibi cmd kullanıyorum, sorun powershell alma çıkışı gibi (adı) olmadan, yani vim içine çalışır.
İlginçtir, bu harika çalışıyor:
:!dir -name
Olarak bu:
:r !dir -name
GÜNCELLEME:onaylayan davranış David tarafından belirtilen
Eğer çalıştırmak için set komutları yukarıda _vimrc, Testi bahsedilen saçma çıktılar. Ancak, eğer onlara doğrudan _vimrc, :Test vim yerine çalıştırmak için beklendiği gibi çalışır.
Ayrıca, kodlama bir sorun oldu diye iconv kullanarak denedim:
:echo iconv( system("dir -name"), "unicode", &enc )
Ama bu herhangi bir fark yoktu. Ama yanlış kodlama türlerini kullanıyor olabilirim.
Herkes bu işin nasıl yapıldığını biliyor musun?
CEVAP
Bir kesmek biraz, ama şunu Vim 7.2 çalışır. Dikkat edin, Powershell CMD oturumu içinde çalıştırıyorum.
if has("win32")
set shell=cmd.exe
set shellcmdflag=/c\ powershell.exe\ -NoLogo\ -NoProfile\ -NonInteractive\ -ExecutionPolicy\ RemoteSigned
set shellpipe=|
set shellredir=>
endif
function! Test()
echo system("dir -name")
endfunction
Aşağıdaki test...
:!dir -name
:call Test()
'in ne yerini belirlemek için en ...
PowerShell Komut dosyası yürütme C# il...
Eğer PowerShell `profil.ps1` dosya?...
Nasıl PowerShell SQL Server bir sorgu ...
Unıx kuyruk Windows eşdeğer komut Powe...