git-gui: grey out comment lines in commit message

Comment lines are stripped by wash_commit_message, but there is no indication in the UI that they are special and will be removed. Grey these lines out to indicate that they will be removed. Signed-off-by: Wolfgang Faust <contrib-git@wolfgangfaust.com> Signed-off-by: Johannes Sixt <j6t@kdbg.org>

Wolfgang Faust committed Mar 3, 2026 at 17:30 UTC bb52cdac6254c006e06bf0bb820268dcf024fc22
1 file changed +18
git-gui.sh
+18
@@ -3900,6 +3900,24 @@ if {[winfo exists $ui_comm]} {
3900
3901 backup_commit_buffer
3902
3903 + # Grey out comment lines (which are stripped from the final commit message by
3904 + # wash_commit_message).
3905 + $ui_comm tag configure commit_comment -foreground gray
3906 + proc dim_commit_comment_lines {} {
3907 + global ui_comm comment_string
3908 + $ui_comm tag remove commit_comment 1.0 end
3909 + set text [$ui_comm get 1.0 end]
3910 + # See also cmt_rx in wash_commit_message
3911 + set cmt_rx [strcat {^} [regsub -all {\W} $comment_string {\\&}]]
3912 + set ranges [regexp -all -indices -inline -line -- $cmt_rx $text]
3913 + foreach pair $ranges {
3914 + set idx "1.0 + [lindex $pair 0] chars"
3915 + $ui_comm tag add commit_comment $idx "$idx lineend + 1 char"
3916 + }
3917 + }
3918 + dim_commit_comment_lines
3919 + bind $ui_comm <<Modified>> { after idle dim_commit_comment_lines }
3920 +
3921 # -- If the user has aspell available we can drive it
3922 # in pipe mode to spellcheck the commit message.
3923 #