使用wsl tmux ssh vim复制/粘贴

问题描述

主要目标是使用wsl + tmux + ssh + vim建立一个真正全球通用的复制/粘贴系统。

我需要使用Windows中带有WSL的Windows,在tmux中启动Tmux,我开始创建一些窗口,每个窗口是一个到不同计算机的SSH会话,在SSH会话中,我打开VIM,需要在其中复制/粘贴内容一个会话到另一个会话,有时从我的计算机复制/粘贴到ssh会话,反之亦然。

我拥有的是WSL> TMUX> SSH的> Vim的

所以...如何使用VIM键盘获得完整的全局复制/粘贴系统,以便yy复制行和p粘贴到另一个打开了vim的ssh会话中,有时我想从Windows复制/粘贴到ssh会话


到目前为止我所拥有的..我可以在tmux + wsl中使用xclip来获取全局/复制粘贴

# Set mode vi
# Use 'v'/'Space' to start selection and 'Enter' to end,use 'q' to exit selection mode
setw -g mode-keys vi
bind -T copy-mode-vi v send-keys -X begin-selection
bind -T copy-mode-vi r send-keys -X rectangle-toggle

# Make Home & End keys work in copy mode
bind-key -T copy-mode-vi 'Home' send -X start-of-line
bind-key -T copy-mode-vi 'End' send -X end-of-line

# Yank selection in copy mode,copy to windows clipboard,cancel copy mode
bind -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel clip.exe
bind -T copy-mode-vi 'y' send-keys -X copy-pipe-and-cancel clip.exe
bind -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel clip.exe

如果我想在VIM和WSL之间进行全局复制/粘贴,则需要以下方法

1. Install gvim or vim-gtk 
2. alias vim='gvim -v'
3. vim --version | grep -e 'clipboard' # desired +clipboard and +xterm_clipboard
4. Install VcXsrv
5. Generate the config.xlaunch file by opening XLaunch,select default options,be sure clipboard options are enabled
6. Add the config.xlaunch to startup of Windows,%AppData%\Microsoft\Windows\Start Menu\Programs\Startup

on ~/.vimrc
" Enable global copy/paste Unix and Windows
set clipboard^=unnamed,unnamedplus

我发现的问题:在vim内从y的ssh会话复制/粘贴并在vim的另一个ssh会话中粘贴时,它从我认为的机器剪贴板中粘贴了另一个内容

如果需要更多信息或需要澄清一些信息,请通知我。

如果您推荐其他工具/工作流程,我欢迎您。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)