]> Lady’s Gitweb - Gitweb/commitdiff
gitweb: Highlight matched part of project description when searching projects
authorJakub Narebski <redacted>
Mon, 27 Feb 2012 01:55:21 +0000 (02:55 +0100)
committerLady <redacted>
Mon, 6 Apr 2026 04:51:32 +0000 (00:51 -0400)
Use esc_html_match_hl() from earlier commit to mark match in the
_whole_ description when searching projects.

Currently, with this commit, when searching projects there is always
shown full description of a project, and not a shortened one (like for
ordinary projects list view), even if the match is on project name and
not project description.  Because we always show full description of a
project, and not possibly shortened name, there is no need for having
full description on mouseover via title attribute.

Showing full description when there is match on it is useful to avoid
situation where match is in shortened, invisible part.  On the other
hand that makes project search different than projects list view; also
there can be problems with overly-long project descriptions.

Signed-off-by: Jakub Narebski <redacted>
Signed-off-by: Junio C Hamano <redacted>
gitweb.perl

index d82d6fb9e9900e667af89811e438258e60f1c275f581da826f617cbdb8418b97..56588a722bdf597fbebdde88abd538ef8efb41b61d02f4c545a983832c9f14a7 100755 (executable)
@@ -5405,8 +5405,12 @@ sub git_project_list_rows {
                                       esc_html_match_hl($pr->{'path'}, $search_regexp)) .
                      "</td>\n" .
                      "<td>" . $cgi->a({-href => href(project=>$pr->{'path'}, action=>"summary"),
-                                       -class => "list", -title => $pr->{'descr_long'}},
-                                       esc_html($pr->{'descr'})) . "</td>\n" .
+                                       -class => "list",
+                                       $search_regexp ? () : -title => $pr->{'descr_long'}},
+                                       $search_regexp
+                                       ? esc_html_match_hl($pr->{'descr_long'}, $search_regexp)
+                                       : esc_html($pr->{'descr'})) .
+                     "</td>\n" .
                      "<td><i>" . chop_and_escape_str($pr->{'owner'}, 15) . "</i></td>\n";
                print "<td class=\"". age_class($pr->{'age'}) . "\">" .
                      (defined $pr->{'age_string'} ? $pr->{'age_string'} : "No commits") . "</td>\n" .
This page took 0.368759 seconds and 4 git commands to generate.