comparison hgwebdir.cgi @ 3868:6033d9f28052

hgweb.cgi and hgwebdir.cgi fixes/cleanups for user configurable parts: - "import os" was missing in hgwebdir.cgi, added to comments for both script. - HGENCODING has to be set before importing hgweb, otherwise you'll get mixed encoding in changelog vs. file content/diffs. - "import sys" is only needed when changing sys.path - document purpose of cgitb.
author Thomas Arendsen Hein <thomas@intevation.de>
date Mon, 11 Dec 2006 14:30:50 +0100
parents 713e35dcc321
children 55860a45bbf2
comparison
equal deleted inserted replaced
3867:d210a1b05cf6 3868:6033d9f28052
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # 2 #
3 # An example CGI script to export multiple hgweb repos, edit as necessary 3 # An example CGI script to export multiple hgweb repos, edit as necessary
4 4
5 import cgitb, sys 5 # send python tracebacks to the browser if an error occurs:
6 import cgitb
6 cgitb.enable() 7 cgitb.enable()
7 8
8 # sys.path.insert(0, "/path/to/python/lib") # if not a system-wide install 9 # adjust python path if not a system-wide install:
10 #import sys
11 #sys.path.insert(0, "/path/to/python/lib")
12
13 # If you'd like to serve pages with UTF-8 instead of your default
14 # locale charset, you can do so by uncommenting the following lines.
15 # Note that this will cause your .hgrc files to be interpreted in
16 # UTF-8 and all your repo files to be displayed using UTF-8.
17 #
18 #import os
19 #os.environ["HGENCODING"] = "UTF-8"
20
9 from mercurial.hgweb.hgwebdir_mod import hgwebdir 21 from mercurial.hgweb.hgwebdir_mod import hgwebdir
10 from mercurial.hgweb.request import wsgiapplication 22 from mercurial.hgweb.request import wsgiapplication
11 import mercurial.hgweb.wsgicgi as wsgicgi 23 import mercurial.hgweb.wsgicgi as wsgicgi
12 24
13 # The config file looks like this. You can have paths to individual 25 # The config file looks like this. You can have paths to individual
23 # collections example: say directory tree /foo contains repos /foo/bar, 35 # collections example: say directory tree /foo contains repos /foo/bar,
24 # /foo/quux/baz. Give this config section: 36 # /foo/quux/baz. Give this config section:
25 # [collections] 37 # [collections]
26 # /foo = /foo 38 # /foo = /foo
27 # Then repos will list as bar and quux/baz. 39 # Then repos will list as bar and quux/baz.
28 40 #
29 # Alternatively you can pass a list of ('virtual/path', '/real/path') tuples 41 # Alternatively you can pass a list of ('virtual/path', '/real/path') tuples
30 # or use a dictionary with entries like 'virtual/path': '/real/path' 42 # or use a dictionary with entries like 'virtual/path': '/real/path'
31
32 # If you'd like to serve pages with UTF-8 instead of your default
33 # locale charset, you can do so by uncommenting the following lines.
34 # Note that this will cause your .hgrc files to be interpreted in
35 # UTF-8 and all your repo files to be displayed using UTF-8.
36 #
37 # os.environ["HGENCODING"] = "UTF-8"
38 43
39 def make_web_app(): 44 def make_web_app():
40 return hgwebdir("hgweb.config") 45 return hgwebdir("hgweb.config")
41 46
42 wsgicgi.launch(wsgiapplication(make_web_app)) 47 wsgicgi.launch(wsgiapplication(make_web_app))