viewvc-4intranet/viewcvs.conf.dist

572 lines
18 KiB
Plaintext
Raw Normal View History

#---------------------------------------------------------------------------
#
# Configuration file for ViewCVS
#
# Information on ViewCVS is located at the following web site:
# http://viewcvs.sourceforge.net/
#
#---------------------------------------------------------------------------
#
# BASIC CONFIGURATION
#
# For correct operation, you will probably need to change the following
# configuration variables:
#
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
# cvs_roots (for CVS)
# svn_roots (for Subversion)
# root_parents (for CVS or Subversion)
# default_root
# rcs_path or cvsnt_exe_path
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
# mime_types_file
#
# It is usually desirable to change the following variables:
#
# address
# forbidden
#
# use_enscript
# use_cvsgraph
#
# For Python source colorization:
#
# py2html_path
#
# To optimize delivery of ViewCVS static files:
#
# docroot
#
In short, facilitate the creation, testing, installation, and sharing of "template sets." I'm introducing a new configuration variable ('template_dir') which is the parent directory of all ViewCVS templates. Those templates have names which match the views they describe (directory.ezt, revision.ezt, graph.ezt, etc.). The 'docroot' variable will now default to "<template_dir>/docroot". Finally, the [templates] section will continue to work as before, save that all configuration therein (and templates not configured will fallback to "<template_dir>/<view_name>.ezt"). The beauty of this is that folks can start whipping up (and maintaining themselves) ViewCVS template sets which can be traded and shared, like themes for Mozilla or Windows XP. EZT is super-powerful, and there are some really fun things you can do with it to serve up interesting and unique ViewCVS views. But while we want to encourage creativity and innovation, we don't want the ViewCVS project itself having to maintain everyone's fun little themes. Anyway, so now installing a new template set is just a matter of dropping that set directory somewhere (anywhere, really) on your system and pointing 'template_dir' to that directory tree. No (very annoying) template modification conflicts to deal with every time you update ViewCVS on your system. And the best part is that existing ViewCVS configurations should all continue to work compatibly. * viewcvs/viewcvs.conf.dist Add a new option, "template_dir". Tweak documentation on the "docroot" option. And make the whole [templates] section work a little differently. * viewcvs/lib/config.py (Config.set_defaults): Use 'None' as the default value for the self.templates.directory, self.templates.log, self.templates.query, self.templates.diff, self.templates.graph, self.templates.annotate, self.templates.markup, self.templates.error, self.templates.query_form, self.templates.query_results, and self.templates.roots options. Add a new default value for self.options.template_dir. * viewcvs/lib/viewcvs.py (get_view_template): New. (generate_page): Instead of taking a template name, take a view name. Also, call get_view_template() to generate the full template path. (view_markup, view_roots, view_directory, view_log, view_annotate, view_cvsgraph, view_diff, view_revision_svn, view_queryform, view_queryform, view_error): Update calls to generate_page(). * viewcvs/lib/query.py (main): Use viewcvs.get_view_template(). git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1029 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-02-08 05:46:20 +03:00
# To customize the display of ViewCVS for your site:
#
# template_dir
# the [templates] override section
#
#
# FORMAT INFORMATION
#
# This file is delineated by sections, specified in [brackets]. Within each
# section, are a number of configuration settings. These settings take the
# form of: name = value. Values may be continued on the following line by
# indenting the continued line.
#
# WARNING: indentation *always* means continuation. name=value lines should
# always start in column zero.
#
# Comments should always start in column zero, and are identified with "#".
#
# Certain configuration settings may have multiple values. These should be
# separated by a comma. The settings where this is allowed are noted below.
#
# Any other setting that requires special syntax is noted at that setting.
#
#---------------------------------------------------------------------------
[general]
#
# This setting specifies each of the CVS roots on your system and assigns
# names to them. Each root should be given by a "name: path" value. Multiple
# roots should be separated by commas and can be placed on separate lines.
#
cvs_roots = cvs: /home/cvsroot
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
#
# This setting specifies each of the Subversion roots (repositories)
# on your system and assigns names to them. Each root should be given
# by a "name: path" value. Multiple roots should be separated by
# commas and can be placed on separate lines.
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
#
#svn_roots = svn: /home/svnrepos
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
# The 'root_parents' setting specifies a list of directories in which
# any number of repositories may reside. Rather than force you to add
# a new entry to 'cvs_roots' or 'svn_roots' each time you create a new
# repository, ViewCVS rewards you for organising all your repositories
# under a few parent directories by allowing you to simply specifiy
# just those parent directories. ViewCVS will then notice each
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
# repository in that directory as a new root whose name is the
# subdirectory of the parent path in which that repository lives.
#
# You can specify multiple parent paths separated by commas or new lines.
#
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
# Caution: these names can, of course, clash with names you have
# defined in your cvs_roots or svn_roots configuration items. If this
# occurs, you can either rename the offending repository on disk, or
# grant new names to the clashing item in cvs_roots or svn_roots.
# Each parent path is processed sequentially, so repositories under
# later parent paths may override earlier ones.
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
#
#root_parents = /home/svn-repositories : svn,
# /home/cvs-repositories : cvs
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
# this is the name of the default root
# (ignored when root_as_url_component is turned on)
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
default_root = cvs
# uncomment if the RCS binaries are not on the standard path
#rcs_path = /usr/bin/
# ViewCVS can use CVSNT (www.cvsnt.org) instead of the RCS
# utilities to retrieve information from CVS repositories.
# To enable use of CVSNT, set the "cvsnt_exe_path" value
# to the path of the CVSNT executable. (If CVSNT is on the
# standard path, you can also set it to the name of the
# CVSNT executable). By default "cvsnt_exe_path" is set to
# "cvs" on Windows and is not set on other platforms.
#
#cvsnt_exe_path =
#cvsnt_exe_path = cvs
#cvsnt_exe_path = K:\Program Files\cvsnt\cvs.exe
#cvsnt_exe_path = /usr/bin/cvs
Get ccvs module in working state, and add "use_rcsparse" option to use it instead of bincvs. It works for log pages, directory pages, markup pages, checkouts, and tarball downloads, but not for diffs because vclib doesn't currently have an interface for diffing. * viewcvs.conf.dist (use_rcsparse): new option * lib/config.py (Config.set_defaults): make use_rcsparse off by default * lib/viewcvs.py (Request.run_viewcvs) import ccvs module instead of bincvs if use_rcsparse is enabled (markup_stream_enscript): check for eof() method on file objects before calling * lib/vclib/bincvs/__init__.py (CVSRepository, BinCVSRepository): separate new base class CVSRepository out of BinCVSRepository. The new base class is shared with the ccvs module (BinCVSRepository.filelog, _file_log): move calls to rcs utilities out of _file_log() function and into the filelog() method. This way _file_log() can be shared with the ccvs module (Revision.__init__): add default argument values to simplify some calls in the ccvs module (_get_logs, _log_path): move some functionality out of _get_logs() into new _log_path() function, which is shared with ccvs * lib/vclib/ccvs/__init__.py Lots of kludges added to this module to get it running again and taking advantage of functionality already implemented in bincvs. It's not pretty, but at least it works and is no longer out of date. (CCVSRepository, CVSRepository): delete old CVSRepository class, create new CCVSRepository class implementing the current vclib api (MatchingSink): new sink superclass (InfoSink): updated to work with tags and default branches instead of always finding latest trunk revisions. Also changed to work with DirEntry objects (TreeSink): updated to work with Revision objects (StreamText.next_revision, StreamText): remove "next_revision" debugging method and all references to it (COSink): reimplement with a simpler algorithm * lib/vclib/ccvs/rcsparse/common.py (Sink.admin_completed): new callback (_Parser.parse): call new callback git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@798 8cb11bc2-c004-0410-86c3-e597b4017df7
2004-01-25 22:25:30 +03:00
# use rcsparse python module to retrieve cvs repository information instead
# of invoking rcs utilities. this feature is experimental
use_rcsparse = 0
#
# This is a pathname to a MIME types file to help viewcvs to guess the
# correct MIME type on checkout.
#
# If you are having problems with the default guess on the MIME type, then
# uncomment this option and point it at a MIME type file.
#
# For example, you can use the mime.types from apache here:
#mime_types_file = /usr/local/apache/conf/mime.types
# This address is shown in the footer of the generated pages.
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
# It must be replaced with the address of the local repository maintainer.
address = <a href="mailto:cvs-admin@insert.your.domain.here">No admin address has been configured</a>
#
# This should contain a list of modules in the repository that should not be
# displayed (by default or by explicit path specification).
#
# This configuration can be a simple list of modules, or it can get quite
# complex:
#
# *) The "!" can be used before a module to explicitly state that it
# is NOT forbidden. Whenever this form is seen, then all modules will
# be forbidden unless one of the "!" modules match.
#
# *) Shell-style "glob" expressions may be used. "*" will match any
# sequence of zero or more characters, "?" will match any single
# character, "[seq]" will match any character in seq, and "[!seq]"
# will match any character not in seq.
#
# *) Tests are performed in sequence. The first match will terminate the
# testing. This allows for more complex allow/deny patterns.
#
# Tests are case-sensitive.
#
forbidden =
# Some examples:
#
# Disallow "example" but allow all others:
# forbidden = example
#
# Disallow "example1" and "example2" but allow all others:
# forbidden = example1, example2
#
# Allow *only* "example1" and "example2":
# forbidden = !example1, !example2
#
# Forbid modules starting with "x":
# forbidden = x*
#
# Allow modules starting with "x" but no others:
# forbidden = !x*
#
# Allow "xml", forbid other modules starting with "x", and allow the rest:
# forbidden = !xml, x*, !*
#
#
# This option provides a mechanism for custom key/value pairs to be
# available to templates. These are stored in key/value files (KV files).
#
# Pathnames to the KV files are listed here, specified as absolute paths
# or relative to this configuration file. The kV files follow the same
# format as this configuration file. It may have multiple, user-defined
# sections, and user-defined options in those sections. These are all
# placed into a structure available to the templates as:
#
# kv.SECTION.OPTION
#
# Note that an option name can be dotted. For example:
#
# [my_images]
# logos.small = /images/small-logo.png
# logos.big = /images/big-logo.png
#
# Templates can use these with a directive like: [kv.my_images.logos.small]
#
# Note that sections across multiple files will be merged. If two files
# have a [my_images] section, then the options will be merged together.
# If two files have the same option name in a section, then one will
# overwrite the other (it is unspecified regarding which "wins").
#
# To further categorize the KV files, and how the values are provided to
# the templates, a KV file name may be annotated with an additional level
# of dotted naming. For example:
#
# kv_files = [asf]kv/images.conf
#
# Assuming the same section as above, the template would refer to an image
# using [kv.asf.my_images.logos.small]
#
# Lastly, it is possible to use %lang% in the filenames to specify a
# substitution of the selected language-tag.
#
kv_files =
# example:
# kv_files = kv/file1.conf, kv/file2.conf, [i18n]kv/%lang%_data.conf
#
#
# The languages available to ViewCVS. There are several i18n mechanisms
# available:
#
# 1) using key/value extension system and reading KV files based on
# the selected language
# 2) GNU gettext to substitute text in the templates
# 3) using different templates, based on the selected language
#
# ### NOTE: at the moment, the GNU gettext style is not implemented
#
# This option is a comma-separated list of language-tag values. The first
# language-tag listed is the default language, and will be used if an
# Accept-Language header is not present in the request, or none of the
# user's requested languages are available. If there are ties on the
# selection of a language, then the first to appear in the list is chosen.
#
languages = en-us
# other examples:
#
# languages = en-us, de
# languages = en-us, en-gb, de
# languages = de, fr, en-us
#
#---------------------------------------------------------------------------
[options]
### DOC
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
# root_as_url_component: Interpret the first path component in the URL
# after the script location as the root to use. This is an
# alternative to using the 'root=' query key.
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
root_as_url_component = 0
# http_expiration_time: Expiration time (in seconds) for cacheable
# pages served by ViewCVS. Note that in most cases, a cache aware
# client will only revalidate the page after it expires (using the
# If-Modified-Since and/or If-None-Match headers) and that browsers
# will also revalidate the page when the reload button is pressed.
# Set to 0 to disable the transmission of these caching headers.
http_expiration_time = 600
# generate_etags: Generate Etag headers for relevant pages to assist
# in browser caching.
# 1 Generate Etags
# 0 Don't generate Etags
generate_etags = 1
# sort_by: File sort order
# file Sort by filename
# rev Sort by revision number
# date Sort by commit date
# author Sort by author
# log Sort by log message
sort_by = file
# hide_attic: Hide or show the contents of the Attic subdirectory
# 1 Hide dead files inside Attic subdir
# 0 Show the files which are inside the Attic subdir
hide_attic = 1
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
# log_sort: Sort order for log messages
# date Sort revisions by date
# rev Sort revision by revision number
# cvs Don't sort them. Same order as CVS/RCS shows them.
log_sort = date
# diff_format: Default diff format
# h Human readable
# u Unified diff
# c Context diff
# s Side by side
# l Long human readable (more context)
diff_format = h
# hide_cvsroot: Don't show the CVSROOT directory
# 1 Hide CVSROOT directory
# 0 Show CVSROOT directory
hide_cvsroot = 1
# set to 1 to make lines break at spaces,
# set to 0 to make no-break lines,
# set to a positive integer to make the lines cut at that length
hr_breakable = 1
# give out function names in human readable diffs
# this just makes sense if we have C-files, otherwise
# diff's heuristic doesn't work well ..
# ( '-p' option to diff)
hr_funout = 0
# ignore whitespaces for human readable diffs
# (indendation and stuff ..)
# ( '-w' option to diff)
hr_ignore_white = 1
# ignore diffs which are caused by
# keyword-substitution like $Id - Stuff
# ( '-kk' option to rcsdiff)
hr_ignore_keyword_subst = 1
# allow annotation of files.
allow_annotate = 1
# allow pretty-printed version of files
allow_markup = 1
# allow compression with gzip of output if the Browser accepts it
# (HTTP_ACCEPT_ENCODING=gzip)
# [make sure to have gzip in the path]
allow_compress = 1
# If you have files which automatically refers to other files
# (such as HTML) then this allows you to browse the checked
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
# out files as if outside the repository.
checkout_magic = 1
In short, facilitate the creation, testing, installation, and sharing of "template sets." I'm introducing a new configuration variable ('template_dir') which is the parent directory of all ViewCVS templates. Those templates have names which match the views they describe (directory.ezt, revision.ezt, graph.ezt, etc.). The 'docroot' variable will now default to "<template_dir>/docroot". Finally, the [templates] section will continue to work as before, save that all configuration therein (and templates not configured will fallback to "<template_dir>/<view_name>.ezt"). The beauty of this is that folks can start whipping up (and maintaining themselves) ViewCVS template sets which can be traded and shared, like themes for Mozilla or Windows XP. EZT is super-powerful, and there are some really fun things you can do with it to serve up interesting and unique ViewCVS views. But while we want to encourage creativity and innovation, we don't want the ViewCVS project itself having to maintain everyone's fun little themes. Anyway, so now installing a new template set is just a matter of dropping that set directory somewhere (anywhere, really) on your system and pointing 'template_dir' to that directory tree. No (very annoying) template modification conflicts to deal with every time you update ViewCVS on your system. And the best part is that existing ViewCVS configurations should all continue to work compatibly. * viewcvs/viewcvs.conf.dist Add a new option, "template_dir". Tweak documentation on the "docroot" option. And make the whole [templates] section work a little differently. * viewcvs/lib/config.py (Config.set_defaults): Use 'None' as the default value for the self.templates.directory, self.templates.log, self.templates.query, self.templates.diff, self.templates.graph, self.templates.annotate, self.templates.markup, self.templates.error, self.templates.query_form, self.templates.query_results, and self.templates.roots options. Add a new default value for self.options.template_dir. * viewcvs/lib/viewcvs.py (get_view_template): New. (generate_page): Instead of taking a template name, take a view name. Also, call get_view_template() to generate the full template path. (view_markup, view_roots, view_directory, view_log, view_annotate, view_cvsgraph, view_diff, view_revision_svn, view_queryform, view_queryform, view_error): Update calls to generate_page(). * viewcvs/lib/query.py (main): Use viewcvs.get_view_template(). git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@1029 8cb11bc2-c004-0410-86c3-e597b4017df7
2005-02-08 05:46:20 +03:00
# The directory which contains the EZT templates used by ViewCVS to
# customize the display of the various output views. ViewCVS looks in
# this directory for files with names that match the name of the view
# ("log", "directory", etc.) plus the ".ezt" extension. If specified
# as a relative path, it is relative to the ViewCVS installation
# directory (<VIEWCVS_INSTALL_DIRECTORY>); absolute paths may be used
# as well.
#
# If %lang% occurs in the pathname, then the selected language will be
# substituted.
#
template_dir = templates
# Web path to a directory that contains ViewCVS static files
# (stylesheets, images, etc.) If set, static files will get
# downloaded directory from this location. If unset, static files
# will be served by the ViewCVS script (at a likely performance
# penalty, and from the "docroot" subdirectory of the directory
# specified by the "template_dir" option).
#docroot = /docroot
# Show last changelog message for sub directories
# The current implementation makes many assumptions and may show the
# incorrect file at some times. The main assumption is that the last
# modified file has the newest filedate. But some CVS operations
# touches the file without even when a new version is't checked in,
# and TAG based browsing essientially puts this out of order, unless
# the last checkin was on the same tag as you are viewing.
# Enable this if you like the feature, but don't rely on correct results.
show_subdir_lastmod = 0
# show a portion of the most recent log entry in directory listings
show_logs = 1
Implement alternative URL scheme, and make Subversion a little more public. Miscellaneous Subversion bug fixes, too. * viewcvs/lib/config.py (Config.set_defaults): Add default state for 'root_as_url_component' option. Remove "CVS" from the 'general/address' and 'general/main_title' default values. * viewcvs/cgi/viewcvs.conf.dist Lots of documentation changes in here. (root_as_url_component, svn_roots, svn_parent_path): New options. (address, main_title): Lose the "CVS" in the value. * viewcvs/lib/viewcvs.py (Request.__init__): Handle the new 'root_as_url_component' option. (list_roots): New. (clickable_path, download_url): Take any embedded roots into account during href generation. (view_diff): Fix the revision parsing here. I dunno why I ever made this code CVS-specific in the first place... (view_log_svn): Populate 'roottype' data member. (view_log_cvs): Was view_log(). Populate 'roottype' data member. (view_directory_cvs, view_directory_svn): Use new list_roots() helper. Also, calculate 'nav_path' unconditionally (it may be None, but it will at least be defined so templates can use it). (main): Update call to view_log_cvs(). * templates/directory.ezt * templates/dir_alternate.ezt Take 'embedded_root' into account for href generation. * templates/log.ezt Do some "CVS" vs. "Subversion" string changing. Disable "annotate" link for Subversion. * templates/log_table.ezt Disable "annotate" link for Subversion. git-svn-id: http://viewvc.tigris.org/svn/viewvc/trunk@575 8cb11bc2-c004-0410-86c3-e597b4017df7
2002-12-12 05:02:52 +03:00
# Show log when viewing file contents
show_log_in_markup = 1
# Cross filesystem copies when traversing Subversion file revision histories.
cross_copies = 1
# Display dates as UTC or in local time zone
use_localtime = 0
#use_localtime = 1
# == Configuration defaults ==
# Defaults for configuration variables that shouldn't need
# to be configured..
#
# If you want to use Marc-Andrew Lemburg's py2html (and Just van Rossum's
# PyFontify) to colorize Python files, then you may need to change this
# variable to point to their directory location.
#
# This directory AND the standard Python path will be searched.
#
py2html_path = .
#py2html_path = /usr/local/lib/python1.5/site-python
# the length to which the most recent log entry should be truncated when
# shown in the directory view
short_log_len = 80
# should we use 'enscript' for syntax coloring?
use_enscript = 0
#
# if the enscript program is not on the path, set this value
#
enscript_path =
# enscript_path = /usr/bin/
# use php to colorize .php and .inc files?
use_php = 0
# path to php executable
php_exe_path = php
# php_exe_path = /usr/local/bin/php
# php_exe_path = C:\Program Files\php\cli\php.exe
#
# ViewCVS has its own set of mappings from filename extensions and filenames
# to languages. If the language is not supported by enscript, then it can
# be listed here to disable the use of enscript.
#
disable_enscript_lang =
# disable_enscript_lang = perl, cpp
#
# ViewCVS can generate tarball from a repository on the fly.
#
allow_tar = 0
# allow_tar = 1
#
# Use CvsGraph. See http://www.akhphd.au.dk/~bertho/cvsgraph/ for
# documentation and download.
#
use_cvsgraph = 0
# use_cvsgraph = 1
#
# if the cvsgraph program is not on the path, set this value
#
cvsgraph_path =
# cvsgraph_path = /usr/local/bin/
#
# Location of the customized cvsgraph configuration file.
# You will need an absolute pathname here:
#
cvsgraph_conf = <VIEWCVS_INSTALL_DIRECTORY>/cvsgraph.conf
#
# Set to enable regular expression search of all files in a directory
#
# WARNING:
#
# Enabling this option can consume HUGE amounts of server time. A
# "checkout" must be performed on *each* file in a directory, and
# the result needs to be searched for a match against the regular
# expression.
#
#
# SECURITY WARNING: Denial Of Service
#
# Since a user can enter the regular expression, it is possible for
# them to enter an expression with many alternatives and a lot of
# backtracking. Executing that search over thousands of lines over
# dozens of files can easily tie up a server for a long period of
# time.
#
# This option should only be used on sites with trusted users. It is
# highly inadvisable to use this on a public site.
#
use_re_search = 0
# use_re_search = 1
#
# Split directories and logs into pages.
# Allows ViewCVS to present discrete pages to the users instead of the
# entire log or directory.
# Set use_pagesize to the number of entries you want displayed on a page.
#
use_pagesize = 0
# use_pagesize = 20
#---------------------------------------------------------------------------
[templates]
# You can override the templates used by various ViewCVS views in this
# section. By default, ViewCVS will look for templates in the
# directory specified by the "template_dir" configuration option (see
# the documentation for that option for details). But if you want to
# use a different template for a particular view, simply uncomment the
# appropriate option below and specify the currect location of the EZT
# template file you wish to use for that view.
#
# Templates are specified relative to the installation directory
# (<VIEWCVS_INSTALL_DIRECTORY>), but absolute paths may also be used.
#
# If %lang% occurs in the pathname, then the selected language will be
# substituted.
#
# Note: the selected language is defined by the "languages" item in the
# [general] section, and based on the request's Accept-Language
# header.
#
#directory = templates/directory.ezt
#directory = templates/dir_alternate.ezt ### an alternative directory view
#log = templates/log.ezt
#log = templates/log_table.ezt ### a table-based alternative log view
#query = templates/query.ezt
#diff = templates/diff.ezt
#graph = templates/graph.ezt
#annotate = templates/annotate.ezt
#markup = templates/markup.ezt
#revision = templates/revision.ezt
#query_form = templates/query_form.ezt
#query_results = templates/query_results.ezt
#error = templates/error.ezt
#roots = templates/roots.ezt
#---------------------------------------------------------------------------
[cvsdb]
enabled = 0
#host = localhost
#database_name = ViewCVS
#user =
#passwd =
#readonly_user =
#readonly_passwd =
#row_limit = 1000
#---------------------------------------------------------------------------
[vhosts]
### DOC
# vhost1 = glob1, glob2
# vhost2 = glob3, glob4
# [vhost1-section]
# option = value
# [vhost1-othersection]
# option = value
# [vhost2-section]
# option = value
#
# Here is an example:
#
# [vhosts]
# lyra = *lyra.org
#
# [lyra-general]
# forbidden = hideme
#
# [lyra-options]
# show_logs = 0
#
# Note that "lyra" is the "canonical" name for all hosts in the lyra.org
# domain. This canonical name is then used within the additional, vhost-
# specific sections to override specific values in the common sections.
#
#---------------------------------------------------------------------------