您好我在按F2时尝试制作VIM映射来运行脚本。 我很难将使用vim编辑的文件的完整路径放入命令函数中。
nnoremap <F2> :! php /home/kbuczynski/diff_re.php fix <full file path here> flagArg
有什么想法吗?
答案 0 :(得分:5)
您可以使用以下命令获取当前缓冲区的完整路径:
expand('%:p')
您的映射可能看起来像这样(您还需要使用execute
函数):
function! CallPHP()
execute '!php /home/kbuczynski/diff_re.php fix '.expand('%:p').' flagArg'
endfunction
nnoremap <F2> :call CallPHP()<CR>
Here是处理文件路径的一些很好的文档。
答案 1 :(得分:3)
如果您没有其他要注入的变量,则不需要:execute
和expand()
。您应该可以直接使用%:p
。
nnoremap <F2> :!php /home/kbuczynski/diff_re.php fix %:p flagArg<cr>
如果您需要在其他地方阅读flagArg
,那么您需要:execute
。