git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 02/10] gitweb: Mark boundary commits in 'blame' view

From
Jakub Narebski <jnareb@gmail.com>
Date
Jul 24, 2009, 22:44 UTC
Message-ID
<1248475450-5668-3-git-send-email-jnareb@gmail.com>
In-Reply-To
<1248475450-5668-1-git-send-email-jnareb@gmail.com>

Use "boundary" class to mark boundary commits, which currently results in using bold weight font for SHA-1 of a commit (to be more exact for all text in the first cell in row, that contains SHA-1 of a commit).

Detecting boundary commits is done by watching for "boundary" header in "git blame -p" output. Because this header doesn't carry additional data the regular expression for blame header fields had to be slightly adjusted.

With current gitweb API only root (parentless) commits can be boundary commits.

Signed-off-by: Jakub Narebski <jnareb@gmail.com>
---
Formatting (styling) of boundary commits is currently very minimal.
This is just resend of previous version of patch.
 gitweb/gitweb.css  |    4 ++++
 gitweb/gitweb.perl |    6 ++++--
 2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/gitweb/gitweb.css b/gitweb/gitweb.css
index 70b7c2f..f47709b 100644
--- a/gitweb/gitweb.css
+++ b/gitweb/gitweb.css
@@ -242,6 +242,10 @@ tr.dark:hover {
 	background-color: #edece6;
 }
 
+tr.boundary td.sha1 {
+	font-weight: bold;
+}
+
 td {
 	padding: 2px 5px;
 	font-size: 100%;
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl
index 7fbd5ff..3078b92 100755
--- a/gitweb/gitweb.perl
+++ b/gitweb/gitweb.perl
@@ -4826,7 +4826,7 @@ HTML
 		while ($data = <$fd>) {
 			chomp $data;
 			last if ($data =~ s/^\t//); # contents of line
-			if ($data =~ /^(\S+) (.*)$/) {
+			if ($data =~ /^(\S+)(?: (.*))?$/) {
 				$meta->{$1} = $2;
 			}
 		}
@@ -4838,7 +4838,9 @@ HTML
 		if ($group_size) {
 			$current_color = ($current_color + 1) % $num_colors;
 		}
-		print "<tr id=\"l$lineno\" class=\"$rev_color[$current_color]\">\n";
+		my $tr_class = $rev_color[$current_color];
+		$tr_class .= ' boundary' if (exists $meta->{'boundary'});
+		print "<tr id=\"l$lineno\" class=\"$tr_class\">\n";
 		if ($group_size) {
 			print "<td class=\"sha1\"";
 			print " title=\"". esc_html($author) . ", $date\"";
-- 
1.6.3.3
Previous: Jakub NarebskiNext: Junio C Hamano
Message 3 of 21 in “[PATCHv2 00/10] gitweb: 'blame' view improvements”
  1. Jakub NarebskiJul 24, 2009
  2. 01/10 gitweb: Make .error style genericJakub Narebski, Jul 24, 2009
  3. 02/10 gitweb: Mark boundary commits in 'blame' viewJakub Narebski, Jul 24, 2009
  4. Junio C HamanoJul 25, 2009
  5. Jakub NarebskiJul 25, 2009
  6. Junio C HamanoJul 25, 2009
  7. 03/10 gitweb: Use "previous" header of git-blame -p in 'blame' viewJakub Narebski, Jul 24, 2009
  8. 04/10 gitweb: Mark commits with no "previous" in 'blame' viewJakub Narebski, Jul 24, 2009
  9. 05/10 gitweb: Add author initials in 'blame' view, a la "git gui blame"Jakub Narebski, Jul 24, 2009
  10. 06/10 gitweb: Use light/dark for class names also in 'blame' viewJakub Narebski, Jul 24, 2009
  11. 07/10 gitweb: Add -partial_query option to href() subroutineJakub Narebski, Jul 24, 2009
  12. 08/10 gitweb: Add optional "time to generate page" info in footerJakub Narebski, Jul 24, 2009
  13. 09/10 gitweb: Incremental blame (proof of concept)Jakub Narebski, Jul 24, 2009
  14. Jakub NarebskiJul 25, 2009
  15. 10/10 gitweb: Create links leading to 'blame_incremental' using JavaScriptJakub Narebski, Jul 24, 2009
  16. Martin KoeglerJul 25, 2009
  17. Jakub NarebskiJul 26, 2009
  18. Martin KoeglerJul 27, 2009
  19. Jakub NarebskiJul 27, 2009
  20. Junio C HamanoJul 24, 2009
  21. Jakub NarebskiJul 25, 2009

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.