我需要通过在vim命令模式下按sequence br
来复制以下形式的缓冲线。br /absolute_path/current_file : cursor_line
我认为应该与此相似:
:noremap <silent> fn :let @*=expand('%:p')<CR>:echo "filename copied: ".@*<CR>
谢谢!
我不确定我完全了解您的问题,但看起来您很近。如果您想要的只是复制当前文件名,则应这样写:
:noremap <silent> fn :execute "let @*='".expand('%:p')."'"<cr>:echo "filename copied: ".@*<cr>
如果您想要的是文件名:currentlineNumber,则应将其写为
:noremap <silent> fn :execute "let @*='".expand('%:p').":".getpos('.')[1]."'"<cr>:echo "filename copied: ".@*<cr>
如果您想要的是文件名:contents ofCurrentCursorline,则使用此改为
:noremap <silent> fn :execute "let @*='".expand('%:p').":".getline('.')."'"<cr>:echo "filename copied: ".@*<cr>