Vim - 在mac上的tmux里面使用vim和剪贴板

时间:2017-03-05 06:43:21

标签: macos vim clipboard tmux

目标:我想在(1)tmux复制/粘贴缓冲区,(2)系统剪贴板,(3)Vim "*"+寄存器之间进行无缝集成。我不希望Vim在每个yank和put上默认为剪贴板集成;我想用这些寄存器中的任何一个显式调用它。

状态:当我在tmux之外运行Vim时,这可以正常工作。 tmux复制/粘贴和我的剪贴板之间的集成也可以正常工作(没有reattach-to-user-namespace)。我唯一的问题是当我在tmux中运行Vim并想要使用这些寄存器时 - 在这种情况下,它们与我的tmux复制/粘贴缓冲区的系统剪贴板完全分开。

我认为我不应该需要reattach-to-user-namespace,因为我的tmux / clipboard集成已经在Vim之外正常工作了。我认为我不需要set clipboard=unnamed,因为我想使用默认的剪贴板寄存器。但我不完全确定我需要什么。

Specs&设置:我正在使用+clipboard运行OS X Sierra 10.12.3,tmux 2.3和Vim 8。我在iTerm 2(版本3.0.14)中运行这一切,不使用iTerm-tmux集成,并启用“终端中的应用程序可以访问剪贴板”。以下是我认为可能与我的dotfiles相关的设置。

~/.tmux.conf

set-option -g focus-events on
bind-key v copy-mode
bind-key p paste-buffer
bind-key -t vi-copy v begin-selection
bind-key -t vi-copy y copy-selection
bind-key -t vi-copy Enter copy-selection
bind-key -t vi-copy MouseDragEnd1Pane copy-selection
bind-key -t vi-copy r rectangle-toggle

~/.vimrc

Plugin 'tmux-plugins/vim-tmux-focus-events'
Plugin 'christoomey/vim-tmux-navigator'

如果有其他可能相关的设置,我很乐意根据要求添加到此列表中。我不想发布完整的tmux.confvimrc文件,因为这样会臃肿。

不是重复:在OS X中有很多与Vim / tmux剪贴板集成有关的问题,我已经阅读了它们但我仍然遇到了麻烦。我认为这不是这些问题的重复。

更新:我尝试使用reattach-to-user-namespace并且效果很好。我不明白为什么Vim需要这个,但只是从tmux那里定期复制/粘贴没有。

0 个答案:

没有答案