2016-05-24 11:17:03 +00:00
|
|
|
function fish_clipboard_copy
|
2018-11-25 16:32:25 +00:00
|
|
|
# Copy the current selection, or the entire commandline if that is empty.
|
2020-05-14 19:07:37 +00:00
|
|
|
set -l cmdline (commandline --current-selection | string collect)
|
|
|
|
test -n "$cmdline"; or set cmdline (commandline | string collect)
|
2016-11-28 05:27:22 +00:00
|
|
|
if type -q pbcopy
|
2020-04-21 05:24:20 +00:00
|
|
|
printf '%s' $cmdline | pbcopy
|
2019-10-24 09:41:16 +00:00
|
|
|
else if set -q WAYLAND_DISPLAY; and type -q wl-copy
|
2020-04-21 05:24:20 +00:00
|
|
|
printf '%s' $cmdline | wl-copy
|
2021-07-23 18:50:04 +00:00
|
|
|
else if set -q DISPLAY; and type -q xsel
|
|
|
|
printf '%s' $cmdline | xsel --clipboard
|
|
|
|
else if set -q DISPLAY; and type -q xclip
|
|
|
|
printf '%s' $cmdline | xclip -selection clipboard
|
2020-11-06 12:11:56 +00:00
|
|
|
else if type -q clip.exe
|
|
|
|
printf '%s' $cmdline | clip.exe
|
2016-05-24 11:17:03 +00:00
|
|
|
end
|
|
|
|
end
|