4
是否有一個寄存器或變量保存當前選定範圍的行號?VIM量程行號寄存器
line(".")
適用於當前行,但有一個在視覺範圍內?
編輯
如下的'<
和'>
寄存器提到持有的起止線。
我最終什麼事,除了使用上述在寫Vimscript中的一個函數,它接受這些行號,並執行一個外部命令做的,下面我將它包含:
function! Github(line1, line2)
execute "!github -f " . expand("%") . " -l " . a:line1 . " -n " . a:line2
endfunction
com! -range Github call Github(<line1>, <line2>)
我的品牌VimScript是新的,但是從我從最初的谷歌搜索中收集的信息,上述函數接受一個範圍。然後我開始和結束行號,並使用它們來執行外部腳本github
,它與Github API接口和/或基於git信息打開瀏覽器到github頁面。
完美的答案,甚至作爲一個長期Vim的用戶,我學到了一些東西(':*',它比'gv:'短一個鍵)! –
@IngoKarkat謝謝!老實說,對我來說,這不是關鍵擊;這是一個需要記住的好工作集(小而靈活)和便於打字。 ':'<,'>'傷害打字。我通常使用'gv:'來代替(所以''*')不要依賴'cpoptions'。 – sehe