[Moin-devel] CVS: MoinMoin/parser wiki.py,1.66,1.67
J?rgen Hermann
jhermann at users.sourceforge.net
Thu Jan 24 13:11:02 EST 2002
Update of /cvsroot/moin/MoinMoin/parser
In directory usw-pr-cvs1:/tmp/cvs-serv24548/MoinMoin/parser
Modified Files:
wiki.py
Log Message:
Support for subpages in about 20 new lines. Boy, do I rule! ;))
Index: wiki.py
===================================================================
RCS file: /cvsroot/moin/MoinMoin/parser/wiki.py,v
retrieving revision 1.66
retrieving revision 1.67
diff -C2 -r1.66 -r1.67
*** wiki.py 2002/01/22 22:20:57 1.66
--- wiki.py 2002/01/24 21:10:13 1.67
***************
*** 32,35 ****
--- 32,41 ----
dl_rule = r"^\s+.*?::\s"
+ word_rule = r'(?:%(subpages)s[%(u)s][%(l)s]+){2,}' % {
+ 'u': config.upperletters,
+ 'l': config.lowerletters,
+ 'subpages': config.allow_subpages and '/?' or '',
+ }
+
formatting_rules = r"""(?:(?P<emph_ibb>'''''(?=[^']+'''))
(?P<emph_ibi>'''''(?=[^']+''))
***************
*** 48,52 ****
(?P<heading>^\s*(?P<hmarker>=+)\s.*\s(?P=hmarker) $)
(?P<interwiki>[A-Z][a-zA-Z]+\:[^\s'\"\:\<]([^\s%(punct)s]|([%(punct)s][^\s%(punct)s]))+)
! (?P<word>(?:[%(u)s][%(l)s]+){2,})
(?P<url_bracket>\[(%(url)s)\:[^\s\]]+(\s[^\]]+)?\])
(?P<url>%(url_guard)s(%(url)s)\:([^\s\<%(punct)s]|([%(punct)s][^\s\<%(punct)s]))+)
--- 54,58 ----
(?P<heading>^\s*(?P<hmarker>=+)\s.*\s(?P=hmarker) $)
(?P<interwiki>[A-Z][a-zA-Z]+\:[^\s'\"\:\<]([^\s%(punct)s]|([%(punct)s][^\s%(punct)s]))+)
! (?P<word>%(word_rule)s)
(?P<url_bracket>\[(%(url)s)\:[^\s\]]+(\s[^\]]+)?\])
(?P<url>%(url_guard)s(%(url)s)\:([^\s\<%(punct)s]|([%(punct)s][^\s\<%(punct)s]))+)
***************
*** 63,68 ****
'ol_rule': ol_rule,
'dl_rule': dl_rule,
! 'u': config.upperletters,
! 'l': config.lowerletters,
'smiley': string.join(map(re.escape, wikiutil.smileys.keys()), '|')}
--- 69,73 ----
'ol_rule': ol_rule,
'dl_rule': dl_rule,
! 'word_rule': word_rule,
'smiley': string.join(map(re.escape, wikiutil.smileys.keys()), '|')}
***************
*** 117,120 ****
--- 122,127 ----
text = url
url = ""
+ elif config.allow_subpages and url[0] == '/':
+ return self._word_repl(url, text)
import urllib
***************
*** 233,244 ****
! def _word_repl(self, word):
"""Handle WikiNames."""
self._check_p()
! hilite = self.highlight_text(word)
! if hilite == word:
return self.formatter.pagelink(word)
else:
! return self.formatter.pagelink(word, hilite)
def _notword_repl(self, word):
--- 240,254 ----
! def _word_repl(self, word, text=None):
"""Handle WikiNames."""
self._check_p()
! if not text: text = word
! if config.allow_subpages and word[0] == '/':
! word = self.formatter.page.page_name + word
! text = self.highlight_text(text)
! if word == text:
return self.formatter.pagelink(word)
else:
! return self.formatter.pagelink(word, text)
def _notword_repl(self, word):
***************
*** 658,664 ****
rules = rules + r'|(?P<wikiname_bracket>\[".*?"\])'
if config.bang_meta:
! rules = r'(?P<notword>!(?:[%(u)s][%(l)s]+){2,})|%(rules)s' % {
! 'u': config.upperletters,
! 'l': config.lowerletters,
'rules': rules,
}
--- 668,673 ----
rules = rules + r'|(?P<wikiname_bracket>\[".*?"\])'
if config.bang_meta:
! rules = r'(?P<notword>!%(word_rule)s)|%(rules)s' % {
! 'word_rule': word_rule,
'rules': rules,
}
More information about the Moin-devel
mailing list