fish-shell/share/functions/fish_commandline_append.fish

16 lines
544 B
Fish
Raw Permalink Normal View History

function fish_commandline_append --description "Append the given string to the command-line, or remove the suffix if already there"
if not commandline | string length -q
commandline -r $history[1]
end
set -l escaped (string escape --style=regex -- $argv[1])
set -l job (commandline -j | string collect)
if set job (string replace -r -- $escaped\$ "" $job)
set -l cursor (commandline -C)
commandline -rj -- $job
commandline -C $cursor
else
commandline -aj -- $argv[1]
end
end