@@ -21,6 +21,12 @@ yank_wo_newline_option="@copy_mode_yank_wo_newline"
21
21
yank_selection_default=" clipboard"
22
22
yank_selection_option=" @yank_selection"
23
23
24
+ yank_selection_mouse_default=" primary"
25
+ yank_selection_mouse_option=" @yank_selection_mouse"
26
+
27
+ yank_with_mouse_default=" on"
28
+ yank_with_mouse_option=" @yank_with_mouse"
29
+
24
30
yank_action_default=" copy-pipe-and-cancel"
25
31
yank_action_option=" @yank_action"
26
32
@@ -74,6 +80,14 @@ yank_selection() {
74
80
get_tmux_option " $yank_selection_option " " $yank_selection_default "
75
81
}
76
82
83
+ yank_selection_mouse () {
84
+ get_tmux_option " $yank_selection_mouse_option " " $yank_selection_mouse_default "
85
+ }
86
+
87
+ yank_with_mouse () {
88
+ get_tmux_option " $yank_with_mouse_option " " $yank_with_mouse_default "
89
+ }
90
+
77
91
yank_action () {
78
92
get_tmux_option " $yank_action_option " " $yank_action_default "
79
93
}
@@ -121,6 +135,7 @@ command_exists() {
121
135
}
122
136
123
137
clipboard_copy_command () {
138
+ local mouse=" ${1:- false} "
124
139
# installing reattach-to-user-namespace is recommended on OS X
125
140
if [ -n " $( override_copy_command) " ]; then
126
141
override_copy_command
@@ -134,11 +149,19 @@ clipboard_copy_command() {
134
149
echo " clip.exe"
135
150
elif command_exists " xsel" ; then
136
151
local xsel_selection
137
- xsel_selection=" $( yank_selection) "
152
+ if [[ $mouse == " true" ]]; then
153
+ xsel_selection=" $( yank_selection_mouse) "
154
+ else
155
+ xsel_selection=" $( yank_selection) "
156
+ fi
138
157
echo " xsel -i --$xsel_selection "
139
158
elif command_exists " xclip" ; then
140
159
local xclip_selection
141
- xclip_selection=" $( yank_selection) "
160
+ if [[ $mouse == " true" ]]; then
161
+ xclip_selection=" $( yank_selection_mouse) "
162
+ else
163
+ xclip_selection=" $( yank_selection) "
164
+ fi
142
165
echo " xclip -selection $xclip_selection "
143
166
elif command_exists " putclip" ; then # cygwin clipboard command
144
167
echo " putclip"
0 commit comments