首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在MacVim中使用缩写

如何在MacVim中使用缩写
EN

Stack Overflow用户
提问于 2011-12-28 05:20:05
回答 2查看 230关注 0票数 1

我是mvim新手,我不知道如何使用保存在我的vimrc文件中的命令,如下所示:

代码语言:javascript
复制
"Load the current buffer in Chrome - Mac specific.
abbrev chrome :! open -a Google\ Chrome %:p<cr>

(注:这最初是:

代码语言:javascript
复制
"Load the current buffer in Chrome - Mac specific.
abbrev ff :! open -a FireFox.app %:p<cr>

)

我只是困惑于这个缩写是如何在一起工作的,并且在谷歌上找不到答案:\也许这里有人可以帮助我?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-12-28 06:37:10

这些行创建常用命令的缩写。在本例中,它创建了一个缩写,用于在特定应用程序中打开当前缓冲区。例如,如果您正在处理一个名为index.html的文件,并且在vim中输入命令:chrome,那么它将在Chrome中打开index.html。

对于三种主要的Mac浏览器,请在.vimrc文件中使用以下行:

代码语言:javascript
复制
" 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执行一个外壳命令。在这些情况下,外壳命令是使用当前缓冲区%:popen -a [WHICHEVER_BROSWER].app

下面是一些进一步的阅读:

票数 2
EN

Stack Overflow用户

发布于 2011-12-28 16:17:10

虽然在这种情况下使用abbrev是可行的,但它通常用于保存输入或修复常见的拼写错误:

代码语言:javascript
复制
iabbrev mmm myultRalonganDrandomlycapiTAlizedemailadDress@example.com
iabbrev teh the

如果你想执行一个命令,我认为普通映射在概念上更适合。下面是我的~/.vimrc中的内容

代码语言:javascript
复制
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
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8649406

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档