2
A
回答
0
首先,您可以通過函數獲得視覺上選擇的文本。我把這個從https://stackoverflow.com/a/6271254/3108885:
function! s:GetVisualSelection()
let [lnum1, col1] = getpos("'<")[1:2]
let [lnum2, col2] = getpos("'>")[1:2]
let lines = getline(lnum1, lnum2)
let lines[-1] = lines[-1][:col2 - (&selection == 'inclusive' ? 1 : 2)]
let lines[0] = lines[0][col1 - 1:]
return join(lines, "\n")
endfunction
然後添加一個地圖可視模式:
vnoremap <buffer> <F5> :<C-U>exec '!python -c' shellescape(<SID>GetVisualSelection(), 1)<CR>
如果按F5 ,視覺上選擇Python代碼會被執行。您可以通過在vnoremap
之前預先設置autocmd FileType python
來爲Python代碼定義此映射。因此可以處理多種文件類型。
autocmd FileType python vnoremap <buffer> <F5> :<C-U>exec '!python -c' shellescape(<SID>GetVisualSelection(), 1)<CR>
autocmd FileType ruby vnoremap <buffer> <F5> :<C-U>exec '!ruby -e' shellescape(<SID>GetVisualSelection(), 1)<CR>
相關問題
- 1. VIM中的一些bash命令將輸出發送到bash而不是VIM
- 2. 如何將CheckedListBox選擇發送到文本文件?
- 3. 如何用bash腳本將文件發送到桌面?
- 4. 將代碼從vim發送到stata
- 5. 更改vim選擇的文本顏色
- 6. 用bash腳本發送keycode到Xorg + wine
- 7. BASH腳本:whiptail文件選擇
- 8. 將代碼段從vim發送到shell以進行臨時測試(bash)
- 9. C#,將值發送到文本框
- 10. Sendkeys將%符號發送到文本框
- 11. 如何將BASH變量發送到多個腳本?
- 12. 將輸入發送到bash的運行shell腳本
- 13. 將數據發送到MySQL數據庫的Bash腳本
- 14. 將數據從PHP發送到bash腳本
- 15. 無法將參數發送到來自java的bash腳本
- 16. 如何將單選按鈕選擇發送到服務器
- 17. 如何使用sendmail將文件作爲附件發送到bash腳本中?
- 18. Vim的:選擇
- 19. 發送文本到Form1
- 20. 發送文本到GCM
- 21. Vim:如何將選定的文本作爲vim命令執行
- 22. python腳本發送命令給vim(mvim)
- 23. 將文本從vim複製到窗口
- 24. 試圖將文本的文本INFRONT發送到printPreview?
- 25. 試圖發送選擇輸入的值和文本
- 26. 如何發送選擇文本而不是表單上的值?
- 27. 從Spinner中選擇並作爲文本短信發送
- 28. TreeViewItem在Xaml中選擇MVVM不會將值發送到View-Model
- 29. 如何將參數發送到選擇器?
- 30. 如何將選擇器或塊發送到NSRunLoop來執行?