[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] navidoc/navidoc __init__.py parser.py directive...
From: |
Asko Soukka |
Subject: |
[Gzz-commits] navidoc/navidoc __init__.py parser.py directive... |
Date: |
Tue, 01 Apr 2003 04:30:28 -0500 |
CVSROOT: /cvsroot/navidoc
Module name: navidoc
Changes by: Asko Soukka <address@hidden> 03/04/01 04:30:28
Modified files:
navidoc : __init__.py parser.py
navidoc/directives: pegboard.py
navidoc/link : __init__.py
navidoc/mp : __init__.py uml.py
navidoc/utils : debug.py
Added files:
navidoc/link : javadoc.py
Log message:
lunch-time
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/__init__.py.diff?tr1=1.10&tr2=1.11&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/parser.py.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/directives/pegboard.py.diff?tr1=1.11&tr2=1.12&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/link/javadoc.py?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/link/__init__.py.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/mp/__init__.py.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/mp/uml.py.diff?tr1=1.4&tr2=1.5&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/utils/debug.py.diff?tr1=1.8&tr2=1.9&r1=text&r2=text
Patches:
Index: navidoc/navidoc/__init__.py
diff -u navidoc/navidoc/__init__.py:1.10 navidoc/navidoc/__init__.py:1.11
--- navidoc/navidoc/__init__.py:1.10 Mon Mar 31 10:24:19 2003
+++ navidoc/navidoc/__init__.py Tue Apr 1 04:30:28 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-#$Id: __init__.py,v 1.10 2003/03/31 15:24:19 humppake Exp $
+#$Id: __init__.py,v 1.11 2003/04/01 09:30:28 humppake Exp $
#
# Written by Asko Soukka
@@ -37,62 +37,52 @@
docutils.utils.relative_path = utils.path.relative_path
def docutils_system_message(self, level, message, *children, **kwargs):
- """
- See docutils.utils.Reporter.system_message()
- This modified copy redirects docuils system messages
- to navidoc debug.
- """
- attributes = kwargs.copy()
- category = kwargs.get('category', '')
- if kwargs.has_key('category'):
- del attributes['category']
- if kwargs.has_key('base_node'):
- source, line = docutils.utils.get_source_line(kwargs['base_node'])
- del attributes['base_node']
- if source is not None:
- attributes.setdefault('source', source)
- if line is not None:
- attributes.setdefault('line', line)
- attributes.setdefault('source', self.source)
- msg = docutils.nodes.system_message(message, level=level,
- type=self.levels[level],
- *children, **attributes)
- debug, report_level, halt_level, stream = self[category].astuple()
- if level >= report_level or debug and level == 0:
- if category:
- config.dbg.out("docutils", msg.astext(), '[%s]' % category)
- else:
- config.dbg.out("docutils", msg.astext())
- if level >= halt_level:
- raise docutils.utils.SystemMessage(msg)
- if level > 0 or debug:
- self.notify_observers(msg)
- return msg
+ """
+ See docutils.utils.Reporter.system_message()
+ This modified copy redirects docuils system messages
+ to navidoc debug.
+ """
+ attributes = kwargs.copy()
+ category = kwargs.get('category', '')
+ if kwargs.has_key('category'):
+ del attributes['category']
+ if kwargs.has_key('base_node'):
+ source, line = docutils.utils.get_source_line(kwargs['base_node'])
+ del attributes['base_node']
+ if source is not None:
+ attributes.setdefault('source', source)
+ if line is not None:
+ attributes.setdefault('line', line)
+ attributes.setdefault('source', self.source)
+ msg = docutils.nodes.system_message(message, level=level,
+ type=self.levels[level],
+ *children, **attributes)
+ debug, report_level, halt_level, stream = self[category].astuple()
+ if level >= report_level or debug and level == 0:
+ if category:
+ config.dbg.out("docutils", msg.astext(), '[%s]' % category)
+ else:
+ config.dbg.out("docutils", msg.astext())
+ if level >= halt_level:
+ raise docutils.utils.SystemMessage(msg)
+ if level > 0 or debug:
+ self.notify_observers(msg)
+ return msg
docutils.utils.Reporter.system_message = docutils_system_message
class Element:
"""
The general element for all subelements.
"""
- list = None
- linkpackage = None
-class NamedElement (Element):
+class NamedElement(Element):
"""
Element with name and linking features.
"""
def do_contents(self, list):
- dbg_parser = config.dbg.shorthand('parser')
+ self.link = None
+ for element in list:
+ self.handle_contained(element)
- for el in list:
- self.handle_contained(el)
- dbg_parser("Link: "+self.link)
- def handle_contained(self, el):
- if self.list.link_factor.is_type(el[0]):
- link = el[1:]
- if len(link):
- self.link = self.list.link_factor.create_new(el[0], link[0][0])
- else:
- self.link = self.list.link_factor.create_new('link',
link[0][0])
- else:
- self.list.add_sub_element(self.name, el)
+ def handle_contained(self, element):
+ config.element_list.add_contained_element(self.name, element)
Index: navidoc/navidoc/directives/pegboard.py
diff -u navidoc/navidoc/directives/pegboard.py:1.11
navidoc/navidoc/directives/pegboard.py:1.12
--- navidoc/navidoc/directives/pegboard.py:1.11 Mon Mar 31 10:24:19 2003
+++ navidoc/navidoc/directives/pegboard.py Tue Apr 1 04:30:28 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-# $Id: pegboard.py,v 1.11 2003/03/31 15:24:19 humppake Exp $
+# $Id: pegboard.py,v 1.12 2003/04/01 09:30:28 humppake Exp $
#
# Written by Benja Fallensten, Vesa Kaihlavirta, Asko Soukka
@@ -135,6 +135,7 @@
rstfiles = [f for f in peg['files'] if f.endswith('.rst')]
+ config.dbg.mute('docutils')
for rstfile in rstfiles:
config.input_filename = rstfile
config.output_filename = ''
@@ -176,6 +177,7 @@
except:
dbg_fail('PEG %s: Docutil raised an exception while converting
%s. ' % (pegdir, rstfile))
dbg_fail('Conversion failed and HTML not created.\n')
+ config.dbg.enable('docutils')
if not peg['html']:
for file in peg['files']:
Index: navidoc/navidoc/link/__init__.py
diff -u navidoc/navidoc/link/__init__.py:1.3
navidoc/navidoc/link/__init__.py:1.4
--- navidoc/navidoc/link/__init__.py:1.3 Fri Mar 28 08:08:57 2003
+++ navidoc/navidoc/link/__init__.py Tue Apr 1 04:30:28 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-#$Id: __init__.py,v 1.3 2003/03/28 13:08:57 humppake Exp $
+#$Id: __init__.py,v 1.4 2003/04/01 09:30:28 humppake Exp $
#
# Written by Tuomas Lukka, Asko Soukka
@@ -29,23 +29,40 @@
import config
+import navidoc
+
from navidoc.utils.path import *
dbg = config.dbg.shorthand('link')
-class Link:
+class Link (navidoc.Element):
+# target, title, bbox, focus=0, rough_edge=1, error=0
key = 'link'
- def __init__(self, target):
- self.target = target
- self.title = target
+ def __init__(self, var, s, list):
+ dbg(self.key+" VAR: %s, S: %s, LIST: %s" % (var, s, list))
+
+# def __init__(self, var, s, list):
+# self.seqobjs = []
+# self.seqobjsdeletes = {}
+# toks = s.split(" ");
+# s = toks[0]
+# self.var = var or s
+# self.name = s
+# self.list = self.parse_contents(None, list)
+# self.ycode = ""
+
+# def __init__(self, target):
+# self.target = target
+# self.title = target
+
+ def setup_code(self): return ''
- def draw_code(self, target, title, bbox):
+ def draw_code(self):
"""
This should be overwritten elsewhere.
"""
- dbg("Link.draw_code has no implementation.")
- pass
+ return ''
# if jlink != None:
# #trimming jlink to comparable
Index: navidoc/navidoc/mp/__init__.py
diff -u navidoc/navidoc/mp/__init__.py:1.7 navidoc/navidoc/mp/__init__.py:1.8
--- navidoc/navidoc/mp/__init__.py:1.7 Mon Mar 31 10:24:19 2003
+++ navidoc/navidoc/mp/__init__.py Tue Apr 1 04:30:28 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-# $Id: __init__.py,v 1.7 2003/03/31 15:24:19 humppake Exp $
+# $Id: __init__.py,v 1.8 2003/04/01 09:30:28 humppake Exp $
#
# Written by Tuomas Lukka, Asko Soukka
@@ -29,7 +29,7 @@
import config
-import os, os.path
+import os, os.path, re
import navidoc.link, navidoc.parser
from navidoc.utils.path import *
@@ -37,12 +37,14 @@
dbg = config.dbg.shorthand('mp')
dbg_fail = config.dbg.shorthand('mp.fail')
-def link_draw_code(self, target, title, bbox, focus=0, rough_edge=1, error=0):
- if error: return 'showlinkerror("'+target+'", '+title+', ('+box+'));'
- if not focus: return 'showlink("'+target+'", '+title+', ('+box+'));'
+def link_draw_code(self):
+ if self.error: return 'showlinkerror("'+self.target+'", '+self.title+',
('+self.bbox+'));'
+ if not self.focus: return 'showlink("'+self.target+'", '+self.title+',
('+self.bbox+'));'
else:
- if rough_edge: return 'showfocus("'+target+'", '+title+',
('+box+'));'+"\n"+'drawRoughEdge(('+box+'));'
- else: return 'showfocus("'+target+'", '+title+', ('+box+'));'
+ if self.rough_edge:
+ return 'showfocus("'+self.target+'", '+self.title+',
('+self.bbox+'));' \
+ +"\n"+'drawRoughEdge(('+bbox+'));'
+ else: return 'showfocus("'+self.target+'", '+self.title+',
('+self.box+'));'
navidoc.link.Link.draw_code = link_draw_code
class MetapostElement(navidoc.NamedElement):
@@ -74,8 +76,8 @@
raise
MetapostException(slashify(config.mp_directory)+diagram+'.gen.mp'+' not found')
s = open(slashify(config.mp_directory)+diagram+'.gen.uml').read()
- l = parseIndented(s)
- m = mplist(l)
+ l = navidoc.utils.parser.parse_indented(s)
+ m = navidoc.parser.ElementList(l)
if len(extension) > 0: extension = '_'+extension
Index: navidoc/navidoc/mp/uml.py
diff -u navidoc/navidoc/mp/uml.py:1.4 navidoc/navidoc/mp/uml.py:1.5
--- navidoc/navidoc/mp/uml.py:1.4 Mon Mar 31 10:24:19 2003
+++ navidoc/navidoc/mp/uml.py Tue Apr 1 04:30:28 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-# $Id: uml.py,v 1.4 2003/03/31 15:24:19 humppake Exp $
+# $Id: uml.py,v 1.5 2003/04/01 09:30:28 humppake Exp $
#
# Written by Tuomas Lukka, Asko Soukka
@@ -135,6 +135,7 @@
self.name = s
self.list = self.parse_contents(None, list)
self.ycode = ""
+
def parse_contents(self, source_name, list):
l = []
for el in list:
Index: navidoc/navidoc/parser.py
diff -u navidoc/navidoc/parser.py:1.7 navidoc/navidoc/parser.py:1.8
--- navidoc/navidoc/parser.py:1.7 Mon Mar 31 10:24:19 2003
+++ navidoc/navidoc/parser.py Tue Apr 1 04:30:28 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-# $Id: parser.py,v 1.7 2003/03/31 15:24:19 humppake Exp $
+# $Id: parser.py,v 1.8 2003/04/01 09:30:28 humppake Exp $
#
# Written by Tuomas Lukka, Asko Soukka
@@ -34,24 +34,24 @@
dbg = config.dbg.shorthand('parser')
-class Factor:
+class ElementFactor:
"""
Gather available linktypes from modules.
"""
- types = {}
+ top_class = navidoc.Element
- def __init__(self, element_list, module_paths, top_class):
- self.types.clear()
- self.element_list = element_list
+ def __init__(self, module_paths):
+ self.types = {}
for module_path in module_paths:
- dbg ("Checking module: "+str(module_path))
- self.types.update(keys_for_classes(module_path, top_class))
+ dbg ("Checking module: "+str(module_path))
+ self.types.update(keys_for_classes(module_path, self.top_class))
for module in dir(module_path):
module = getattr(module_path, module)
if type(module) == type(navidoc):
- dbg ("Checking module: "+str(module))
- self.types.update(keys_for_classes(module, top_class))
+ dbg ("Checking module: "+str(module))
+ # XXX Needs check and exception for conflicting element
types
+ self.types.update(keys_for_classes(module, self.top_class))
dbg("Collected: "+str(self.types))
def is_type(self, key): return self.types.has_key(key)
@@ -61,25 +61,13 @@
Return an element type class reference for key.
"""
if self.types.has_key(key):
- dbg("Internal: "+self.types[key])
return self.types[key]
else: raise ParserException("Unknown element key: "+key)
-class LinkFactor(Factor):
- """
- """
- def create_new(self, key, target):
- type = self.get_type(key)
- new = type(target)
- return new
-
-class ElementFactor(Factor):
- """
- """
def create_new(self, key, var, s, list):
type = self.get_type(key)
+ dbg("Found element: "+str(type))
new = type(var, s, list)
- new.list = self.element_list
return new
class ElementList:
@@ -91,22 +79,22 @@
"""
Initializes ElementList by parsing all elements in list.
"""
- self.element_factor = ElementFactor(self, [mp], navidoc.Element)
- self.link_factor = LinkFactor(self, [link], link.Link)
- self.linkpackage = None
+ dbg("List: "+str(list))
+ config.element_list = self # XXX
+ self.factor = ElementFactor([mp, link])
self.extras = []
self.list = [self.parse_element(element) for element in list]
self.list.extend(self.extras)
- def add_sub_element(self, super_name, element):
+ def add_contained_element(self, super_name, element):
"""
Add a subelement.
"""
s = element[0]
- (w,s) = match_remove("^\s*(\w+)\s*", s)
- key = w.group(1)
- element = self.element_factor.create_new(key, None, super_name + " " +
s, element[1:])
- self.extras.append(element)
+ (w,s) = match_remove("^\s*(\w+)\s*", s)
+ key = w.group(1)
+ element = self.factor.create_new(key, None, super_name + " " + s,
element[1:])
+ self.extras.append(element)
def parse_element(self, element):
"""
@@ -118,11 +106,8 @@
if m: name = m.group(1)
(w,s) = match_remove("^\s*(\w+)\s*", s)
key = w.group(1)
- if key == "linkpackage":
- self.linkpackage = s
- return None
dbg('Creating %s %s %s %s.' % (key, name, s, element[1:]))
- element = self.element_factor.create_new(key, name, s, element[1:])
+ element = self.factor.create_new(key, name, s, element[1:])
return element
def setup_code(self):
Index: navidoc/navidoc/utils/debug.py
diff -u navidoc/navidoc/utils/debug.py:1.8 navidoc/navidoc/utils/debug.py:1.9
--- navidoc/navidoc/utils/debug.py:1.8 Thu Mar 27 06:56:21 2003
+++ navidoc/navidoc/utils/debug.py Tue Apr 1 04:30:28 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-#$Id: debug.py,v 1.8 2003/03/27 11:56:21 humppake Exp $
+#$Id: debug.py,v 1.9 2003/04/01 09:30:28 humppake Exp $
#
# Written by Asko Soukka
@@ -43,8 +43,12 @@
def enable(self, dbg_name):
self.output_enabled[dbg_name] = 1
+ def mute(self, dbg_name):
+ self.output_enabled[dbg_name] = 0
+
def out(self, dbg_name, dbg_str):
- if self.output_enabled.has_key(dbg_name):
+ if self.output_enabled.has_key(dbg_name) \
+ and self.output_enabled[dbg_name]:
print "[", dbg_name, "]", dbg_str
else:
if not self.buffer.has_key(dbg_name):
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gzz-commits] navidoc/navidoc __init__.py parser.py directive...,
Asko Soukka <=