]> Cypherpunks repositories - dsc.git/commitdiff
Friendlier diff
authorSergey Matveev <stargrave@stargrave.org>
Thu, 14 Aug 2025 08:06:55 +0000 (11:06 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Thu, 14 Aug 2025 08:06:55 +0000 (11:06 +0300)
dsc

diff --git a/dsc b/dsc
index e2f68ef2d08b4da62f91bcd7a0269d742293f8cd6859c32e230b3ff0b37c39ad..d867fdac243c752c6ae93155024b437ece76d4219435c5e169756ac1c7a7c547 100755 (executable)
--- a/dsc
+++ b/dsc
@@ -209,7 +209,24 @@ switch [lindex $argv 0] {
         file delete $dirsSaved
         file delete $dirsStash
         set fh [open "| diff -urN $Saved/$opt $Stash/$opt" r]
-        puts -nonewline [read $fh]
+        set prefixSaved "--- $Saved/"
+        set prefixSavedLen [string length $prefixSaved]
+        set prefixStash "+++ $Stash/"
+        set prefixStashLen [string length $prefixStash]
+        while {[gets $fh line] >= 0} {
+            if {[string range $line 0 3] == "diff"} {
+                continue
+            }
+            if {[string range $line 0 $prefixSavedLen-1] == $prefixSaved} {
+                puts "--- [string range $line $prefixSavedLen end]"
+                continue
+            }
+            if {[string range $line 0 $prefixStashLen-1] == $prefixStash} {
+                puts "+++ [string range $line $prefixStashLen end]"
+                continue
+            }
+            puts $line
+        }
         catch {close $fh}
     }
     revert {