将线号从vim传递到外部命令

将线号从vim传递到外部命令,vim,Vim,我正在使用VIM,我想将当前行号传递给外部程序 大概是这样的: map:!mycmd 我试着用代替行('.'),行(“.”,和其他,但似乎没有任何效果。 谢谢。您必须使用:execute在映射中使用变量或表达式: nnoremap <F3> :execute ":!echo " . line('.')<CR> nnoremap:execute::!echo”。行('.')) 可能map exec(“:!mycmd.line(“.”)。没有测试它…简单一点:nnorema

我正在使用VIM,我想将当前行号传递给外部程序

大概是这样的:
map:!mycmd

我试着用
代替
行('.')
行(“.”
和其他,但似乎没有任何效果。
谢谢。

您必须使用
:execute
在映射中使用变量或表达式:

nnoremap <F3> :execute ":!echo " . line('.')<CR>
nnoremap:execute::!echo”。行('.'))
可能
map exec(“:!mycmd.line(“.”)
。没有测试它…简单一点:nnoremap:execute::!echo“行('.'))