diff --git a/conf.d/forgit.plugin.fish b/conf.d/forgit.plugin.fish index 18b7f60..7d64814 100644 --- a/conf.d/forgit.plugin.fish +++ b/conf.d/forgit.plugin.fish @@ -101,10 +101,10 @@ function forgit::add -d "git add selector" set preview " set file (echo {} | $extract_file) # exit - if test (git status -s -- \$file | grep '^??') # diff with /dev/null for untracked files - git diff --color=always --no-index -- /dev/null \$file | $forgit_diff_pager | sed '2 s/added:/untracked:/' + if test (git status -s -- \\\$file | grep '^??') # diff with /dev/null for untracked files + git diff --color=always --no-index -- /dev/null \\\$file | $forgit_diff_pager | sed '2 s/added:/untracked:/' else - git diff --color=always -- \$file | $forgit_diff_pager + git diff --color=always -- \\\$file | $forgit_diff_pager end " set opts " @@ -115,7 +115,7 @@ function forgit::add -d "git add selector" set files (git -c color.status=always -c status.relativePaths=true status -su | grep -F -e "$changed" -e "$unmerged" -e "$untracked" | sed -E 's/^(..[^[:space:]]*)[[:space:]]+(.*)\$/[\1] \2/' | # deal with white spaces internal to fname - env FZF_DEFAULT_OPTS="$opts" fzf --preview="$preview" | + env FZF_DEFAULT_OPTS="$opts" fzf --preview="fish -c \"$preview\"" | sh -c "$extract_file") # for rename case if test -n "$files"