v 0.8.3 -- add an option to suppress URL processing inside <PRE>,

by Scott <scott@chronis.icgroup.com>
This commit is contained in:
Guido van Rossum 1997-12-09 16:04:46 +00:00
parent fc5d8b198a
commit b1823ad83f
3 changed files with 15 additions and 9 deletions

View File

@ -2,8 +2,8 @@ FAQ Wizard
----------
Author: Guido van Rossum <guido@python.org>
Version: 0.8
Date: 27 August 1997
Version: 0.8.3
Date: 8 December 1997
This is a CGI program that maintains a user-editable FAQ. It uses RCS
@ -18,7 +18,7 @@ importable module. The actual script in cgi-bin is minimal.
Files:
faqw.py executable script to be edited and installed in cgi-bin
faqwin.py main module, lives in same directory as FAQ entry files
faqwiz.py main module, lives in same directory as FAQ entry files
faqconf.py main configuration module
faqcust.py additional local customization module (optional)

View File

@ -29,6 +29,9 @@ RCSBINDIR = "/depot/gnu/plat/bin/" # Directory containing RCS commands
MAXHITS = 10 # Max #hits to be shown directly
COOKIE_LIFETIME = 28*24*3600 # Cookie expiration in seconds
# (28*24*3600 = 28 days = 4 weeks)
PROCESS_PREFORMAT = 1 # toggle whether preformatted text
# will replace urls and emails with
# HTML links
# Markers appended to title to indicate recently change
# (may contain HTML, e.g. <IMG>); and corresponding
@ -46,7 +49,7 @@ entries marked with * were changed within the last 7 days.)
# Version -- don't change unless you edit faqwiz.py
WIZVERSION = "0.8.2" # FAQ Wizard version
WIZVERSION = "0.8.3" # FAQ Wizard version
# This parameter is normally overwritten with a dynamic value

View File

@ -70,7 +70,7 @@ def emit(format, *args, **kw):
translate_prog = None
def translate(text):
def translate(text, pre=0):
global translate_prog
if not translate_prog:
url = '\(http\|ftp\|https\)://[^ \t\r\n]*'
@ -90,10 +90,13 @@ def translate(text):
while url[-1] in ');:,.?\'"':
url = url[:-1]
url = escape(url)
if ':' in url:
repl = '<A HREF="%s">%s</A>' % (url, url)
if not pre or (pre and PROCESS_PREFORMAT):
if ':' in url:
repl = '<A HREF="%s">%s</A>' % (url, url)
else:
repl = '<A HREF="mailto:%s">&lt;%s&gt;</A>' % (url, url)
else:
repl = '<A HREF="mailto:%s">&lt;%s&gt;</A>' % (url, url)
repl = url
list.append(repl)
i = i + len(url)
j = len(text)
@ -292,7 +295,7 @@ class FaqEntry:
print '<PRE>'
pre = 1
if '/' in line or '@' in line:
line = translate(line)
line = translate(line, pre)
elif '<' in line or '&' in line:
line = escape(line)
if not pre and '*' in line: