解决 VIM 下 set past & set nopaste 困扰

更新日期: 2016-09-10 阅读次数: 3491 分类: Vim

做为 ctrl-c ctrl-v 工程师,恰好又是 VIM 党,最痛苦的莫过于,在 paste 与 nopaste 之间来回切换。

特别是在写页面的时候,需要经常 copy HTML 代码,set 操作极大地影响到了编写代码的效率。还是得绑定个快捷键为好。

:help paste

会看到 vim 帮助文档里就有一个不错的解决方案,在 vimrc 里加入如下配置

map <F9> :set paste<CR>
map <F10> :set nopaste<CR>
imap <F9> <C-O>:set paste<CR>
imap <F10> <nop>
set pastetoggle=<F10>

文档里使用的 F10, F11 被我替换成了 F9, F10, 原因是在 Ubuntu 下 F10 是终端的全屏快捷键。不知道在 Mac 上是否有影响,回去测试一下。

paste nopaste

Mac 上的切换快捷键

Mac 上如果要沿用之前在 Ubuntu 上配置的 F9, F10 快捷键,就需要结合 fn 键使用。

fn 键,即 function 键

所以,对应的快捷键为

fn + F9
fn + F10

谈笑风生

子昂

感谢分享!

爱评论不评论