[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gzz-commits] navidoc ./Makefile ./TODO-navidoc ./config.py ....
From: |
Asko Soukka |
Subject: |
[Gzz-commits] navidoc ./Makefile ./TODO-navidoc ./config.py .... |
Date: |
Thu, 24 Apr 2003 03:48:04 -0400 |
CVSROOT: /cvsroot/navidoc
Module name: navidoc
Changes by: Asko Soukka <address@hidden> 03/04/24 03:48:04
Modified files:
. : Makefile TODO-navidoc config.py rst2any.py
navidoc : parser.py
navidoc/directives: mp.py pegboard.py
navidoc/link : __init__.py javadoc.py
navidoc/mp : __init__.py
Added files:
navidoc/modules: imagemap.py
Log message:
imagemap update
CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/Makefile.diff?tr1=1.11&tr2=1.12&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/TODO-navidoc.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/config.py.diff?tr1=1.16&tr2=1.17&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/rst2any.py.diff?tr1=1.21&tr2=1.22&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/parser.py.diff?tr1=1.10&tr2=1.11&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/directives/mp.py.diff?tr1=1.5&tr2=1.6&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/directives/pegboard.py.diff?tr1=1.15&tr2=1.16&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/link/__init__.py.diff?tr1=1.7&tr2=1.8&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/link/javadoc.py.diff?tr1=1.3&tr2=1.4&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/modules/imagemap.py?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/navidoc/navidoc/navidoc/mp/__init__.py.diff?tr1=1.12&tr2=1.13&r1=text&r2=text
Patches:
Index: navidoc/Makefile
diff -u navidoc/Makefile:1.11 navidoc/Makefile:1.12
--- navidoc/Makefile:1.11 Sun Apr 20 04:17:44 2003
+++ navidoc/Makefile Thu Apr 24 03:48:04 2003
@@ -1,4 +1,4 @@
-#$Id: Makefile,v 1.11 2003/04/20 08:17:44 tjl Exp $
+#$Id: Makefile,v 1.12 2003/04/24 07:48:04 humppake Exp $
all: java doc pegs
@@ -47,10 +47,10 @@
find . -name "*.class" | xargs rm -f
html:
- $(JYTHON) rst2any.py --html -d navidoc -d docutils -d pegboard -d
pegboard.fail -d mp.fail $(DBG) $(RST)
+ $(JYTHON) rst2any.py --html --imagemap -d navidoc -d docutils -d
pegboard -d pegboard.fail -d mp.fail $(DBG) $(RST)
html-loop:
- $(JYTHON) rst2any.py --loop --html -d navidoc -d docutils -d pegboard
-d pegboard.fail -d mp.fail $(DBG) $(RST)
+ $(JYTHON) rst2any.py --loop --html --imagemap -d navidoc -d docutils -d
pegboard -d pegboard.fail -d mp.fail $(DBG) $(RST)
latex:
$(JYTHON) rst2any.py --latex -d navidoc -d docutils $(DBG) $(RST)
Index: navidoc/TODO-navidoc
diff -u navidoc/TODO-navidoc:1.5 navidoc/TODO-navidoc:1.6
--- navidoc/TODO-navidoc:1.5 Thu Apr 10 12:01:56 2003
+++ navidoc/TODO-navidoc Thu Apr 24 03:48:04 2003
@@ -11,6 +11,9 @@
- creates a proper .cvsignore
- make pegboard run with cpython, could be tested
with i.e. "./rst2any --html doc/"
+ - ".gen." midfix to be optional:
+ + replacing ".gen" with global attribute
+ + replacing some foo[a:b] with foo[a:len(midfix)+c]
0.2alpha1: Rewriting
anybody:
Index: navidoc/config.py
diff -u navidoc/config.py:1.16 navidoc/config.py:1.17
--- navidoc/config.py:1.16 Thu Apr 17 03:38:01 2003
+++ navidoc/config.py Thu Apr 24 03:48:04 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-# $Id: config.py,v 1.16 2003/04/17 07:38:01 humppake Exp $
+# $Id: config.py,v 1.17 2003/04/24 07:48:04 humppake Exp $
__docformat__ = 'reStructuredText'
@@ -37,7 +37,7 @@
mp_eps_only = 0
# settings for linking javadoc
-javadoc_directory = []
+javadoc_directories = ['../libvob/doc/javadoc']
linkpackage = '' # dynamic
# initializing dynamic settings
Index: navidoc/navidoc/directives/mp.py
diff -u navidoc/navidoc/directives/mp.py:1.5
navidoc/navidoc/directives/mp.py:1.6
--- navidoc/navidoc/directives/mp.py:1.5 Thu Apr 10 05:20:43 2003
+++ navidoc/navidoc/directives/mp.py Thu Apr 24 03:48:04 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-# $Id: mp.py,v 1.5 2003/04/10 09:20:43 humppake Exp $
+# $Id: mp.py,v 1.6 2003/04/24 07:48:04 humppake Exp $
#
# Written by Asko Soukka, Benja Fallenstein
@@ -179,20 +179,21 @@
"""
Add reference information for a spesific diagram.
"""
+ refer = slashify(config.working_directory)+config.output_filename
refers_filepath = slashify(config.mp_directory)+diagram+".gen.refers"
if (os.path.isfile(refers_filepath)):
old_refers = open(refers_filepath, "r").read()
if old_refers.find(config.output_filename) == -1:
if to_top:
refers = open(refers_filepath, "w")
- refers.write(config.output_filename+"\n"+old_refers)
+ refers.write(refer+"\n"+old_refers)
refers.close()
else:
refers = open(refers_filepath, "a")
- refers.write(config.output_filename+"\n")
+ refers.write(refer+"\n")
refers.close()
else:
refers = open(refers_filepath, "a")
- refers.write(config.output_filename+"\n")
+ refers.write(refer+"\n")
refers.close()
Index: navidoc/navidoc/directives/pegboard.py
diff -u navidoc/navidoc/directives/pegboard.py:1.15
navidoc/navidoc/directives/pegboard.py:1.16
--- navidoc/navidoc/directives/pegboard.py:1.15 Thu Apr 10 05:20:43 2003
+++ navidoc/navidoc/directives/pegboard.py Thu Apr 24 03:48:04 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-# $Id: pegboard.py,v 1.15 2003/04/10 09:20:43 humppake Exp $
+# $Id: pegboard.py,v 1.16 2003/04/24 07:48:04 humppake Exp $
#
# Written by Benja Fallensten, Vesa Kaihlavirta, Asko Soukka
@@ -139,7 +139,7 @@
config.mp_generate = 0
for rstfile in rstfiles:
config.input_filename = rstfile
- config.output_filename = ''
+ config.output_filename = rstfile[0:len(rstfile)-4]+'.gen.html'
pub = Publisher()
pub.set_reader('standalone', None, 'restructuredtext')
filename = slashify(config.working_directory)+rstfile
@@ -149,10 +149,8 @@
try:
pub.set_io()
document = pub.reader.read(pub.source, pub.parser,
pub.settings)
- config.output_filename = rstfile[0:len(rstfile)-4]+'.gen.html'
pub.apply_transforms(document)
peg['ignore'].append(config.output_filename)
- config.output_filename = ''
#conversion have succeeded so far, parsing peg's metadata
#from its document tree
@@ -178,6 +176,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')
config.mp_generate = 1
Index: navidoc/navidoc/link/__init__.py
diff -u navidoc/navidoc/link/__init__.py:1.7
navidoc/navidoc/link/__init__.py:1.8
--- navidoc/navidoc/link/__init__.py:1.7 Thu Apr 17 03:38:01 2003
+++ navidoc/navidoc/link/__init__.py Thu Apr 24 03:48:04 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-#$Id: __init__.py,v 1.7 2003/04/17 07:38:01 humppake Exp $
+#$Id: __init__.py,v 1.8 2003/04/24 07:48:04 humppake Exp $
#
# Written by Tuomas Lukka, Asko Soukka
@@ -30,6 +30,7 @@
import config
import navidoc
+import os.path, re
from navidoc.util.path import *
@@ -38,29 +39,48 @@
class Link (navidoc.Element):
key = 'link'
+ title = None
+ bbox = None
+ focus = 0
+ rough_edge = 1
+ error = 0
+ target = None
+
def __init__(self, var, s, list):
dbg(self.key+" VAR: %s, S: %s, LIST: %s" % (var, s, list))
self.title = s.strip()
- self.bbox = ''
- self.focus = 0
- self.rough_edge = 1
- self.error = 0
- self.target = s.strip()
-
-# def __init__(self, var, s, list):
-# self.seqobjs = []d
-# 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
+ if len(list) > 0:
+ self.target = slashify(config.working_directory) \
+ + slashify(config.linkpackage) + list[0]
+ self.set_status(set_title=1)
+
+ dbg(self.key+" title: %s, target: %s, error: %s" % (self.title,
self.target, self.error))
+
+ def set_status(self, set_title=0):
+ """
+ Checks if the link target exists. Checks if the target
+ file is the current file. Could also parse
+ <title> from the file and set it to title.
+ """
+ path = self.target
+
+ tmp = path.rfind("#")
+ if tmp != -1: path = path[0:tmp]
+
+ if not os.path.isfile(path): self.error = 1
+
+ if not self.error and set_title:
+ file = open(path)
+ title = re.compile('<title>([^<]*)</title>')
+ title = title.findall(file.read())
+ file.close()
+ if len(title) > 0: self.title = title[0]
+
+ if not self.error and os.path.abspath(path) \
+ ==
os.path.abspath(slashify(config.working_directory)+config.output_filename):
+ self.focus = 1
+
def setup_code(self): return ''
def draw_code(self):
Index: navidoc/navidoc/link/javadoc.py
diff -u navidoc/navidoc/link/javadoc.py:1.3 navidoc/navidoc/link/javadoc.py:1.4
--- navidoc/navidoc/link/javadoc.py:1.3 Mon Apr 7 11:58:00 2003
+++ navidoc/navidoc/link/javadoc.py Thu Apr 24 03:48:04 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-#$Id: javadoc.py,v 1.3 2003/04/07 15:58:00 humppake Exp $
+#$Id: javadoc.py,v 1.4 2003/04/24 07:48:04 humppake Exp $
#
# Written by Asko Soukka
@@ -30,6 +30,7 @@
import config
import navidoc
+import os.path, re
from navidoc.util.path import *
@@ -48,4 +49,30 @@
class JLink(navidoc.link.Link):
key = "jlink"
-
+
+ def __init__(self, var, s, list):
+ navidoc.link.Link.__init__(self, var, s, list)
+
+ if not self.target or self.error:
+ self.target = s.strip()
+ self.set_target()
+ self.set_status()
+ dbg(self.key+" Javadoc target: %s, error: %s" % (self.target,
self.error))
+
+ def set_target(self):
+ """
+ Set the Javadoc -target.
+ """
+ parts = (config.linkpackage+'.'+self.target).split('.')
+ self.target = '/'.join(parts);
+ if re.match('^[a-z]', parts[-1]):
+ self.target = self.target + 'package-summary.html'
+ else:
+ self.target = self.target + '.html'
+
+ for dir in config.javadoc_directories:
+ if os.path.isfile(slashify(dir)+self.target):
+ self.target = slashify(dir)+self.target
+
+ if self.target.endswith('/package-summary.html'):
+ self.target = self.target+'#package_description'
Index: navidoc/navidoc/mp/__init__.py
diff -u navidoc/navidoc/mp/__init__.py:1.12 navidoc/navidoc/mp/__init__.py:1.13
--- navidoc/navidoc/mp/__init__.py:1.12 Thu Apr 17 03:38:01 2003
+++ navidoc/navidoc/mp/__init__.py Thu Apr 24 03:48:04 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-# $Id: __init__.py,v 1.12 2003/04/17 07:38:01 humppake Exp $
+# $Id: __init__.py,v 1.13 2003/04/24 07:48:04 humppake Exp $
#
# Written by Tuomas Lukka, Asko Soukka
@@ -38,6 +38,7 @@
dbg_fail = config.dbg.shorthand('mp.fail')
def link_draw_code(self):
+ if config.mp_eps_only: return ''
if self.error: return 'showlinkerror("'+self.target+'", "'+self.title+'",
('+self.bbox+'));'
if not self.focus: return 'showlink("'+self.target+'", "'+self.title+'",
('+self.bbox+'));'
else:
@@ -69,7 +70,7 @@
if self.link != None:
self.link.bbox = ('bboxmeasuredpic(%s)' % (self.var))
-def create_uml(diagram, extension='', scale=1.0):
+def create_uml(diagram, context='', scale=1.0):
"""
"""
if not os.path.isfile(slashify(config.mp_directory)+diagram+'.gen.uml'):
@@ -81,32 +82,83 @@
l = navidoc.util.parser.parse_indented(s)
m = navidoc.parser.ElementList(l)
- if len(extension) > 0: extension = '_'+extension
+ if len(context) > 0:
+ context = '_'+context
+
+ draw_extra = ''
+
+# """ Creates the "menu" above the diagram. """
+# """ Some variables are needed :/ """
+# if menu and settings.has_key('name') and settings.has_key('path'):
+# """Refers must exist"""
+# if (os.path.isfile(path+settings['name']+".gen.refers")):
+# refer_file = open(path+settings['name']\
+# +".gen.refers", "r")
+# refers = refer_file.readlines()
+# refer_file.close()
+# """List through in descending order."""
+# refer_names = {}
+# for id_inv in range(len(refers)):
+# id = len(refers)-(id_inv+1)
+# refer_file = open(refers[id].replace(".rst",
".gen.html").replace("\n",""))
+# refer_title = re.compile('<title>([^<]*)</title>')
+# refer_title = refer_title.findall(refer_file.read())
+# refer_file.close()
+# if len(refer_title) > 0: refer_title = refer_title[0]
+# else: refer_title = refers[id].split("/")[-1].split(".")[0]
+#
+# slash = settings['path'].rfind("/")
+# if slash != -1:
+# refer_path = settings['path'][0:slash+1].replace("//",
"/")
+# refer_jlink = mputils.transition_path(refer_path,
+# refers[id].replace(".rst",
".gen.html").replace("\n",""))
+# else: refer_jlink = refers[id].replace(".rst",
".gen.html").replace("\n","")
+## print "refer:", refers[id], "jlink:",refer_jlink, "path:",
settings['path']
+## refer_name = refers[id].split("/")[-1].split(".")[0]
+# refer_name = randomVar()
+# refer_names[id] = refer_name
+# refer_obj = mptitle(refer_name, refer_title)
+# refer_obj.jlink = refer_jlink+"#"+settings['name']
+# titles[refer_obj.jlink] = refer_title
+# if id == len(refers)-1:
+# refer_draw += "\tdraw
ulcorner(bbox(currentpicture))+(0,10) -- urcorner(bbox(currentpicture))+(0,10)
withpen pencircle scaled 1.5pt;\n"
+# refer_draw += refer_obj.setupCode()
+# refer_draw += "\t"+refer_name+".sw =
ulcorner(bbox(currentpicture))+(35,0);\n"
+# refer_draw += refer_obj.drawCode()
+# else:
+# refer_draw += refer_obj.setupCode()
+# refer_draw += "\t"+refer_name+".sw = "\
+# +refer_names[id+1]\
+# +".nw;\n"
+# refer_draw += refer_obj.drawCode()
+# if id == 0:
+# refer_draw += "\tdraw (infontBB(\"from:\", \"Helvetica\")
scaled 1.3) shifted (ulcorner(bbox(currentpicture))+(2,-13));\n"
dir = slashify(config.mp_directory)
- gen1 = open(dir+diagram+extension+'.gen.mp.1', 'w')
+ gen1 = open(dir+diagram+context+'.gen.mp.1', 'w')
gen1.write(m.setup_code()+'\n')
gen1.close()
- gen2 = open(dir+diagram+extension+'.gen.mp.2', 'w')
+ gen2 = open(dir+diagram+context+'.gen.mp.2', 'w')
gen2.write(m.draw_code()+"\n")
+ gen2.write(draw_extra+"\n")
gen2.write('showlinksize("bbox", "'+diagram+'", (bbox
currentpicture));'+"\n")
gen2.close()
- gen3 = open(dir+diagram+extension+".gen.mp.3", "w")
+ gen3 = open(dir+diagram+context+".gen.mp.3", "w")
gen3.write("""
prologues := 1;
input uml.mp
beginfig(1)
- input %(diagram)s%(extension)s.gen.mp.1
+ input %(diagram)s%(context)s.gen.mp.1
input %(diagram)s.gen.mp
- input %(diagram)s%(extension)s.gen.mp.2
+ input %(diagram)s%(context)s.gen.mp.2
endfig
end
""" % locals())
gen3.close()
- mp2png(diagram+extension, scale)
+ mp2png(diagram+context, scale)
def mp2png(diagram, scale=1.0):
"""
@@ -200,15 +252,15 @@
Map exact coordinates from corner elements using
provided mapper.
"""
- dbg("Unmapped corners: "+self.corners)
+ dbg("Unmapped corners: "+str(self.corners))
self.corners = [int(element) for element in (
mapper(self.corners[0], self.corners[1]) +
mapper(self.corners[2], self.corners[3])
)]
- dbg("Mapped corners: "+self.corners)
+ dbg("Mapped corners: "+str(self.corners))
def imgmapanchor(self, scale=1.0):
- return """<area href="%s" shape="rect" coords="%s" target="_top"
title="%s" alt="%s" />\n""" \
+ return """<area href="%s" shape="rect" coords="%s" target="_top"
title="%s" alt="%s" />""" \
% (self.target,
",".join(["%s"%(int(c*scale)) for c in self.corners]),
self.title,
Index: navidoc/navidoc/parser.py
diff -u navidoc/navidoc/parser.py:1.10 navidoc/navidoc/parser.py:1.11
--- navidoc/navidoc/parser.py:1.10 Thu Apr 17 03:38:01 2003
+++ navidoc/navidoc/parser.py Thu Apr 24 03:48:04 2003
@@ -19,7 +19,7 @@
# MA 02111-1307 USA
#
-# $Id: parser.py,v 1.10 2003/04/17 07:38:01 humppake Exp $
+# $Id: parser.py,v 1.11 2003/04/24 07:48:04 humppake Exp $
#
# Written by Tuomas Lukka, Asko Soukka
@@ -82,9 +82,16 @@
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)
+ self.list = []
+ self.extras = []
+ for element in list:
+ element = self.parse_element(element)
+ # Borders of linked elements should be drawn before element itself.
+ if len(self.extras) > 0 and \
+ isinstance(self.extras[0], navidoc.link.Link):
+ self.list.append(self.extras.pop(0))
+ self.list.append(element)
+ self.list.extend(self.extras)
def add_contained_element(self, super, element):
"""
@@ -97,9 +104,9 @@
if isinstance(element, navidoc.link.Link):
super.link = element
-
- self.extras.append(element)
-
+ self.extras.insert(0, element)
+ else: self.extras.append(element)
+
def parse_element(self, element):
"""
Parse a single element.
Index: navidoc/rst2any.py
diff -u navidoc/rst2any.py:1.21 navidoc/rst2any.py:1.22
--- navidoc/rst2any.py:1.21 Thu Apr 10 07:28:00 2003
+++ navidoc/rst2any.py Thu Apr 24 03:48:04 2003
@@ -21,7 +21,7 @@
# MA 02111-1307 USA
#
-#$Id: rst2any.py,v 1.21 2003/04/10 11:28:00 humppake Exp $
+#$Id: rst2any.py,v 1.22 2003/04/24 07:48:04 humppake Exp $
#
# Written by Asko Soukka
@@ -60,6 +60,10 @@
pass
# catching writer parameters from the command line
+try: sys.argv.remove('--imagemap'); imagemap = 1
+except ValueError: imagemap = 0
+
+# catching writer parameters from the command line
try: sys.argv.remove('--latex'); latex = 1
except ValueError: latex = 0
@@ -87,7 +91,7 @@
dbg_config('Input file: '+config.input_filename)
if html:
- dbg('Compiling: '+input)
+ dbg('Compiling ReST '+input)
if not output.endswith('index'):
output = output+'.gen.html'
else:
@@ -102,7 +106,7 @@
docutils.core.publish_cmdline(writer_name='html', argv=args.split())
if latex:
- dbg('Compiling: '+input)
+ dbg('Compiling ReST '+input)
output = output+'.gen.latex'
config.output_filename = os.path.basename(output)
dbg_config('Output file: '+config.output_filename)
@@ -125,7 +129,16 @@
import navidoc.modules.navbar
config.working_directory = path
navidoc.modules.navbar.postprocess(path)
-
+
+ if imagemap:
+ if os.path.isfile(path):
+ last_dot = path.replace("../", "__/").rfind('.')
+ if last_dot != -1: path = path[:last_dot]+'.gen.html'
+
+ import navidoc.modules.imagemap
+ config.working_directory = os.path.normpath(os.path.dirname(path))
+ navidoc.modules.imagemap.postprocess(path)
+
def run_docutils(path):
"""
Selects all ReST files under ``path`` directory (or the single file
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gzz-commits] navidoc ./Makefile ./TODO-navidoc ./config.py ....,
Asko Soukka <=