vim 跟系统共享剪切板是很需要的,本来set clipboard=unnamed
用的好好的,结果到了 tmux 里竟然失效了!!
打开寄存器一看,没了"*
寄存器,为什么会这样?
Ubuntu没问题(有X11),macOS里出现的这个情况。另外我用的macvim,+clipboard, -X11
还请讲下原理啊。。。
1
huobazi 2016-11-27 21:01:25 +08:00 via iPhone
|
2
skydiver 2016-11-27 21:27:19 +08:00
Google 一些就能找到解决方法啊……
brew install reattach-to-user-namespace |
6
r0ck3r OP 在看 vim doc 了, mac 里没有了 x11 好像情况有点变化,不过真不想装一个 xquartz ,每次开 vim 后台跑一个 x server
|
7
fy 2016-11-27 21:47:11 +08:00
> vim 跟系统共享剪切板是很需要的
我反而感觉不共享的话有两个剪贴板,比一个好。。。 |
8
r0ck3r OP 找到原因了,[Chris Johnsen]( https://github.com/ChrisJohnsen/tmux-MacOSX-pasteboard)解释的非常清楚。
osx 里剪切板是一个用户登录进程上启动的一个服务, tmux 启动时从用户进程上 detatch 了,所以按照 osx 的权限设定无法访问剪切板服务。 Chris 的方法上重新把 shell 挂到用户登录进程上,所以 vim 就又可以访问系统剪切板了。 至于 @huobazi 提到的没有`"+`寄存器,那是 X11 里才支持的东东, osx 的桌面系统不是 X11 所以 vim 默认上没有的,应该用`"*`访问剪切板。当然,除非你走 osx 里装一个 XQuartz ,让 vim 具有+X11 或+xterm_clipboard 属性,那就太费劲了,每次开 vim 后台得跑一个 X Server 。 |
9
kkxxxxxxx 2016-11-28 09:38:28 +08:00
倒是想问下你们有没有碰到 Terminal 下 tmux 一窗分屏的话字符串屏的问题
|