gitweb: Optional grouping of projects by category
commitd940c9015d1a770b4f8ed8e9b38cf3d16f47a6cd
authorSebastien Cevey <seb@cine7.net>
Fri, 29 Apr 2011 17:52:01 +0000 (29 19:52 +0200)
committerJunio C Hamano <gitster@pobox.com>
Fri, 29 Apr 2011 21:21:48 +0000 (29 14:21 -0700)
tree14b80514a14b138755130ff70a43da3010c5175d
parente4e3b32bd2317ab73f03d692ab3f7231e2e6787d
gitweb: Optional grouping of projects by category

This adds the $projects_list_group_categories option which, if enabled,
will result in grouping projects by category on the project list page.
The category is specified for each project by the $GIT_DIR/category file
or the 'gitweb.category' variable in its configuration file. By default,
projects are put in the $project_list_default_category category.

Note:
- Categories are always sorted alphabetically, with projects in
  each category sorted according to the globally selected $order.
- When displaying a subset of all the projects (page limiting), the
  category headers are only displayed for projects present on the page.

The feature is inspired from Sham Chukoury's patch for the XMMS2
gitweb, but has been rewritten for the current gitweb code. The CSS
for categories is inspired from Gustavo Sverzut Barbieri's patch to
group projects by path.

Thanks to Florian Ragwitz for Perl tips.

[jn: Updated to post restructuring projects list generation, fixed bugs,
 added very basic test in t9500 that there are no warnings from Perl.]

Signed-off-by: Sebastien Cevey <seb@cine7.net>
Signed-off-by: Jakub Narebski <jnareb@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
gitweb/README
gitweb/gitweb.perl
gitweb/static/gitweb.css
t/t9500-gitweb-standalone-no-errors.sh