现在的位置: 首页 > 综合 > 正文

Mac下面从Vim里复制内容到系统剪贴板

2013年10月14日 ⁄ 综合 ⁄ 共 518字 ⁄ 字号 评论关闭

在vim内部的复制,选择之后,用y键就可以解决问题了。

要复制到系统剪贴板,由于有Windows的传统思维的影响,会通常使用鼠标选择,然后复制的办法。这个办法有3大缺点:

(1)动作很慢,效率很低;

(2)当内容行数超过屏幕能够显示的范围时,只能多次复制,非常繁琐,而且容易错误,特别是在复制代码的时候;

(3)如果有行号显示,还需要先把行号去掉(:set nonu)。

其实有更简捷的方法,不然它就是不是vim了。

在Mac下面,需要在vim的.vimrc配置文件中添加如下2行配置:

vmap "+y :w !pbcopy<CR><CR> 
nmap "+p :r !pbpaste<CR><CR>

这样,接下来的步骤就是先用Vim提供的方法进行各种选择,然后一次按 " + y 这3个键就好了。当然 " 和 + 这2个键需要Shift键的辅助。

注意,连续按这3个键的时候,动作一定要快,慢了就复制不到系统的剪贴板了,就只能在vim内部粘贴了。

另外,如果从系统剪贴板复制代码到vim,因为vim的smartident会让代码格式非常混乱,而且把很多代码注释掉。这个时候可以在粘贴代码之前和之后各敲一个命令来解决这个问题:

粘贴之前::set paste

粘贴之后::set nopaste

抱歉!评论已关闭.