dotfiles/.config/helix/scripts/paste-util.fish

25 lines
644 B
Fish
Executable file

#!/usr/bin/env fish
# script takes the clipboard contents and
# trims/adds newlines appropriately to force
# inline or above/below line paste
# In helix, if there's a trailing newline, it's pasted linewise
# Otherwise it's pasted inline
set -l cmd $argv[1]
# get clip contents, and preserve newlines
set -l contents (wl-paste -n | string collect -N)
count "$contents"
if test "$cmd" = inline
# if there's more than 1 newline, it
# has to be linewise
set -l newlines (string split \n "$contents" | count)
echo $newlines
echo \'"$(string replace \n → "$contents")"\'
else if test "$cmd" = linewise
end
echo paste-util