我需要將vim中的一些選定文本傳遞給curl命令作爲參數值。例如。我需要能夠運行將vim選擇替換爲shell命令的輸出
curl -sSd css="body { border-radius: 5px; }" http://prefixr.com/api/index.php
從vim。顯然,「body {border-radius:5px;}」部分將是動態的。通常,在vim中可視化模式選擇。
如何獲取所選文本並將其作爲捲曲參數傳遞?
我需要將vim中的一些選定文本傳遞給curl命令作爲參數值。例如。我需要能夠運行將vim選擇替換爲shell命令的輸出
curl -sSd css="body { border-radius: 5px; }" http://prefixr.com/api/index.php
從vim。顯然,「body {border-radius:5px;}」部分將是動態的。通常,在vim中可視化模式選擇。
如何獲取所選文本並將其作爲捲曲參數傳遞?
您可以使用:!
命令通過外部程序過濾所選文本。 將文本輸入到stdin,並用stdout的結果替換。
在這種情況下,你將不得不使用貓和命令替換到線進給作爲參數捲曲,像這樣:
:'<,'>!curl -sSd css="`cat`" http://prefixr.com/api/index.php
通過選擇一個或多個行和使用!你可以通過這些線路的命令,例如:
所以排序使用sort
命令整個文件,試試這個:ggVG排序,這看起來應該像這樣在你的編輯器:
乙
ç
一個
: '<'>排序
我知道!讓你運行一個shell命令,但是我想把選擇複製到一個* part * shell命令中。不只是管它。 – harithski
對於沒有無端換行符管道話,請參見本例爲大寫選擇文本:
select-region c Control-r = system("perl -pe '$=uc($)'", @")
說明:選擇區域,c是(改變選擇),CR來執行表達式。 注意:美元是美元下劃線,但在發佈後下劃線不可見。
提供所選文本爲'STDIN'到shell命令的相關問題:[管道到外殼和接收信息行輸出](http://stackoverflow.com/questions/2575545/vim-pipe-selected-text-to -shell-cmd-and-receive-output-on-vim-info-command-line)和[從外殼進出管道,使用整個緩衝區](http://stackoverflow.com/questions/7867356/piping-緩衝區到外部命令在vim) – user1129682