On 16.11.2013 15:11, Florian Pritz wrote:
On 16.11.2013 11:44, Vasiliy Korchagin wrote:
I often use pacdiff tool for updating config files. And I find it very
inconvenient that after viewing files in vimdiff, I have the only choice
to delete pacfile. It would be more useful to ask user what to do next
with standard set of choices (view, skip, remove, overwrite).
Looks good. Maybe also print the option string again (I'm never sure if
removing is r or d (for delete)) and possibly also the filenames so it's
easier to see what exactly is going to happen.
We are dealing with system config files mostly so I think a little extra
verbosity about what's going to happen never hurts. Especially
considering that overwriting and removing don't ask for confirmation.
One line patch is attached.
Please use git-send-email in the future so we can comment inline (most
clients strip the attachment when replying otherwise). Not needed here,
but very useful for larger patches.
We can print the same option string again, so session will look like:
# pacdiff
==> pacnew file found for /etc/dhcpcd.conf
:: (V)iew, (S)kip, (R)emove pacnew, (O)verwrite with pacnew: [v/s/r/o] v
:: (V)iew, (S)kip, (R)emove pacnew, (O)verwrite with pacnew: [v/s/r/o]
---
contrib/pacdiff.sh.in | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/contrib/pacdiff.sh.in b/contrib/pacdiff.sh.in
index 1bad0e4..d8a0c60 100644
--- a/contrib/pacdiff.sh.in
+++ b/contrib/pacdiff.sh.in
@@ -178,7 +178,7 @@ while IFS= read -u 3 -r -d '' pacfile; do
o|O) mv -v "$pacfile" "$file"; break ;;
v|V)
$diffprog "$pacfile" "$file"
- rm -iv "$pacfile"; break ;;
+ ask "(V)iew, (S)kip, (R)emove %s, (O)verwrite with %s, (Q)uit:
[v/s/r/o/q] " "$file_type" "$file_type"; continue ;;
s|S) break ;;
*) ask "Invalid answer. Try again: [v/s/r/o/q]
"; continue ;;
esac
-- 1.8.4.2