复制到tmux中的系统剪贴板。
支持:
安装tmux-yank最简单方法是通过TMUX插件管理器。
将插件添加到.tmux.conf中的TPM插件列表:
set -g @plugin ' tmux-plugins/tmux-yank '使用前缀-我安装了tmux-yank 。现在,您应该能够立即进行tmux-yank 。
当您想更新tmux-yank时,请使用前缀- u 。
克隆存储库
$ git clone https://github.com/tmux-plugins/tmux-yank ~ /clone/path将此行添加到.tmux.conf的底部
run-shell ~ /clone/path/yank.tmux重新加载tmux环境
# type this inside tmux
$ tmux source-file ~ /.tmux.conf现在,您应该能够立即使用tmux-yank 。
为了使tmux-yank工作,必须有一个程序将数据存储在系统剪贴板中。
reattach-to-user-namespace注意:据报道,某些版本的MACOS(又称OS X)在没有reattach-to-user-namespace情况下可以使用。安装它没有什么坏处。
使用tmux使用reattach-to-user-namespace最简单方法是使用tmux-sensible插件。
要手动使用它,请使用:
# ~/.tmux.conf
set-option -g default-command " reattach-to-user-namespace -l $SHELL "如果您的tmux 1.5或更新,并且正在使用ITERM2版本3或更新,则copy-mode和鼠标选择中的y将无需tmux-yank 。
为此启用:
进入ITERM2的偏好。
转到“常规”选项卡。
检查“终端中的应用程序可以访问剪贴板”
在tmux中,确保打开set-clipboard :
$ tmux show-options -g -s set-clipboard
set-clipboard on$ brew install reattach-to-user-namespace$ sudo port install tmux-pasteboardxsel (推荐)或xclip (用于X)。wl-copy如果您的tmux 1.5或更新,并且正在使用xterm , copy-mode和鼠标选择中的Y将无需tmux-yank 。请参阅set-clipboard选项的tmux(1) MAN页面条目。
$ sudo apt-get install xsel # or xclip $ sudo yum install xsel # or xclipputclip是cygutils-extra软件包的一部分。clip.exe配备了Windows子系统的Linux。 正常模式
前缀- y - 将文本从命令行复制到剪贴板。
与所有流行的壳/录音一起使用。测试:
bash , zsh (带有bindkey -e ), tcshirb , pry , node , psql , python , php -a , coffeessh ,MOSH前缀- Y - 将当前窗格的当前工作目录复制到剪贴板。
复制模式
Tmux-yank竭尽所能检测OS上剪贴板程序的合理选择。
如果Tmux-yank无法检测到已知的剪贴板程序,则它将@custom_copy_command tmux选项用作剪贴板程序(如果设置)。
如果您需要始终覆盖Tmux-yank选择剪贴板程序,则可以设置@override_copy_command迫使tmux-yank使用您想要的任何东西。
请注意,两个程序都必须接受STDIN ,以便复制文本。
设置@override_copy_command的示例:
# ~/.tmux.conf
set -g @custom_copy_command ' my-clipboard-copy --some-arg '
# or
set -g @override_copy_command ' my-clipboard-copy --some-arg 'Linux有几个切割剪贴板: primary , secondary和clipboard (tmux-yank中默认是clipboard )。
您可以通过设置@yank_selection来更改此问题:
# ~/.tmux.conf
set -g @yank_selection ' primary ' # or 'secondary' or 'clipboard'在鼠标支撑下打开(请参见下文)鼠标选择的默认剪贴板是primary 。
您可以通过设置@yank_selection_mouse来更改此操作:
# ~/.tmux.conf
set -g @yank_selection_mouse ' clipboard ' # or 'primary' or 'secondary'默认情况下, tmux-yank将在文本上退出复制模式。如果您希望保持复制模式,则可以设置@yank_action :
# ~/.tmux.conf
set -g @yank_action ' copy-pipe ' # or 'copy-pipe-and-cancel' for the defaulttmux-yank默认情况下启用了鼠标支持。仅当还启用了tmux的内置mouse on支持时(自tmux 2.1以来,或在较旧版本中mode-mouse on )才能使用。
要用鼠标拉动,请单击并用主按钮拖动以开始选择,然后释放到yank。
如果您希望禁用此行为,或为MouseDragEnd1Pane事件提供自己的绑定,则可以这样做:
# ~/.tmux.conf
set -g @yank_with_mouse off # or 'on'如果您想在选择鼠标后保持复制模式,请按照上述设置@yank_action 。
如果使用tmux 2.3或以上并使用VI密钥,则将添加以下配置设置:
# ~/.tmux.conf
set -g @shell_mode ' vi ' tmux 2.4或更新的情况不需要。

注意:屏幕铸造使用控制- y用于“放置”。在v2.0.0及以后使用y 。
麻省理工学院