W mojej konfiguracji Vima chciałbym dodać konfigurację, która uruchamia polecenie powłoki z określonym odwzorowaniem. Czy jest jakiś sposób na zrobienie tego w Vimscript?Jak uruchomić polecenie powłoki przez vimscript?
6
A
Odpowiedz
7
Jest system()
funkcja w vim
, spróbuj tego:
:call system('date')
3
zrobić to z tradycyjnym VI, więc zakładam, że będzie pracować z vim, jak również.
W moim .exrc mam:
map ^_ !}fmt 71 72^M
(To ^_
wszedł wpisując Ctrl-V Ctrl-_, a ^M
wszedł wpisując Ctrl-V Ctrl-M
Kiedy uderzę ctrl-_ w vi, to formatuje moją bieżącą linię do 72 znaków.
jest '' dla '^ _' i' 'dla'^M' (w vim, nie w vi). Nie sugeruj używania surowych kodów sterujących w vimrc, to powoduje skasowanie wyniku narzędzi, które oczekują tekstu (jak 'cat vimrc | grep fmt'). Może to również sprawić, że systemy VCS przyjmują vimrc jako plik binarny, skutecznie wyłączając zwykłe 'vcs diff' i usuwając dane wyjściowe' vcs diff -a', tak jak ma to miejsce w przypadku 'grep'. Istnieje również 'nnoremap' w vim dla tego typu rzeczy (nie potrzebujesz ani innego trybu niż normalnego ani mapowania użytkowników). –
ZyX
Dobre punkty. Być może pomiędzy moją (zorientowaną na VI) odpowiedzią a twoim wyrafinowaniem, PO uzyska dobrą odpowiedź. :-) – ghoti
Co, na Boga, ma to związek z pytaniem? – Lambart