我是mvim的新手,我不知道如何使用保存在我的vimrc文件中的命令,如下所示:
"Load the current buffer in Chrome - Mac specific.
abbrev chrome :! open -a Google\ Chrome %:p<cr>
(注意:这最初是:
"Load the current buffer in Chrome - Mac specific.
abbrev ff :! open -a FireFox.app %:p<cr>
)
我只是对这个缩写如何一起工作感到困惑,并且无法在谷歌上找到答案:\也许这里有人可以提供帮助?
答案 0 :(得分:2)
这些行为常用命令创建缩写。在这种情况下,它创建一个用于在特定应用程序中打开当前缓冲区的缩写。例如,如果您正在处理名为index.html
的文件,并且您在vim中输入了命令:chrome
,则会在Chrome中打开index.html。
对于三种主要的Mac浏览器,请在.vimrc
文件中使用以下行:
" Open the current buffer in a web browser
abbrev ff :!open -a Firefox.app %:p
abbrev chrome :!open -a Google\ Chrome.app %:p
abbrev sf :!open -a Safari.app %:p
这是有效的,因为每个缩写定义开头的:!
告诉vim执行shell命令。在这些情况下,shell命令为open -a [WHICHEVER_BROSWER].app
,使用当前缓冲区%:p
。
以下是一些进一步阅读:
答案 1 :(得分:0)
虽然在这种情况下使用abbrev
,但它通常用于保存输入或修复常见的拼写错误:
iabbrev mmm myultRalonganDrandomlycapiTAlizedemailadDress@example.com
iabbrev teh the
如果你想执行命令,我认为正常的映射在概念上更适合。以下是我在~/.vimrc
中的内容:
let os=substitute(system('uname'), "\n", "", "")
if os == "Darwin" || os == "Mac"
nnoremap <F12>f :exe ':silent !open -a firefox %'<CR>
nnoremap <F12>c :exe ':silent !open -a "google chrome" %'<CR>
nnoremap <F12>o :exe ':silent !open -a opera %'<CR>
nnoremap <F12>s :exe ':silent !open -a safari %'<CR>
elseif os == "Linux"
nnoremap <F12>f :exe ':silent !firefox %'<CR>
nnoremap <F12>c :exe ':silent !chromium-browser %'<CR>
nnoremap <F12>o :exe ':silent !opera %'<CR>
endif