[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [26059] trunk/blender: fixed sphinx doc generator
Campbell Barton
ideasman42 at gmail.com
Sun Jan 17 21:59:35 CET 2010
Revision: 26059
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=26059
Author: campbellbarton
Date: 2010-01-17 21:59:35 +0100 (Sun, 17 Jan 2010)
Log Message:
-----------
fixed sphinx doc generator
- arguments, return values indentation means they get correctly interpreted by sphinx
- functions with no return values were displaying return as ()
- return values were getting the '(optional)' added in some cases.
Example:
http://www.blender.org/documentation/250PythonDoc/bpy.ops.object.html
Modified Paths:
--------------
trunk/blender/release/scripts/modules/rna_info.py
trunk/blender/source/blender/python/sphinx_doc_gen.py
Modified: trunk/blender/release/scripts/modules/rna_info.py
===================================================================
--- trunk/blender/release/scripts/modules/rna_info.py 2010-01-17 20:26:51 UTC (rev 26058)
+++ trunk/blender/release/scripts/modules/rna_info.py 2010-01-17 20:59:35 UTC (rev 26059)
@@ -201,7 +201,7 @@
return "%s=%s" % (self.identifier, default)
return self.identifier
- def get_type_description(self, as_arg=False, class_fmt="%s"):
+ def get_type_description(self, as_ret=False, as_arg=False, class_fmt="%s"):
type_str = ""
if self.fixed_type is None:
type_str += self.type
@@ -223,7 +223,9 @@
type_str += collection_str + (class_fmt % self.fixed_type.identifier)
- if as_arg:
+ if as_ret:
+ pass
+ elif as_arg:
if not self.is_required:
type_str += ", (optional)"
else: # readonly is only useful for selfs, not args
Modified: trunk/blender/source/blender/python/sphinx_doc_gen.py
===================================================================
--- trunk/blender/source/blender/python/sphinx_doc_gen.py 2010-01-17 20:26:51 UTC (rev 26058)
+++ trunk/blender/source/blender/python/sphinx_doc_gen.py 2010-01-17 20:59:35 UTC (rev 26059)
@@ -29,10 +29,6 @@
sphinx-build source/blender/python/doc/sphinx-in source/blender/python/doc/sphinx-out
'''
-# if you dont have graphvis installed ommit the --graph arg.
-
-# GLOBALS['BASEDIR'] = './source/blender/python/doc'
-
import os
import inspect
import bpy
@@ -108,8 +104,8 @@
type_descr = prop.get_type_description(as_arg=True, class_fmt=":class:`%s`")
if prop.name or prop.description:
- fw(ident + " :%s %s: %s\n" % (id_name, prop.identifier, ", ".join([val for val in (prop.name, prop.description) if val])))
- fw(ident + " :%s %s: %s\n" % (id_type, prop.identifier, type_descr))
+ fw(ident + ":%s %s: %s\n" % (id_name, prop.identifier, ", ".join([val for val in (prop.name, prop.description) if val])))
+ fw(ident + ":%s %s: %s\n" % (id_type, prop.identifier, type_descr))
def write_struct(struct):
#if not struct.identifier.startswith("Sc") and not struct.identifier.startswith("I"):
@@ -160,7 +156,7 @@
fw(" .. attribute:: %s\n\n" % prop.identifier)
if prop.description:
fw(" %s\n\n" % prop.description)
- type_descr = prop.get_type_description(as_arg=False, class_fmt=":class:`%s`")
+ type_descr = prop.get_type_description(class_fmt=":class:`%s`")
fw(" *type* %s\n\n" % type_descr)
# python attributes
@@ -184,14 +180,14 @@
if len(func.return_values) == 1:
write_param(" ", fw, func.return_values[0], is_return=True)
- else: # multiple return values
- fw(" :return (%s):\n" % ", ".join([prop.identifier for prop in func.return_values]))
+ elif func.return_values: # multiple return values
+ fw(" :return (%s):\n" % ", ".join([prop.identifier for prop in func.return_values]))
for prop in func.return_values:
- type_descr = prop.get_type_description(as_arg=True, class_fmt=":class:`%s`")
+ type_descr = prop.get_type_description(as_ret=True, class_fmt=":class:`%s`")
descr = prop.description
if not descr:
descr = prop.name
- fw(" `%s`, %s, %s\n\n" % (prop.identifier, descr, type_descr))
+ fw(" `%s`, %s, %s\n\n" % (prop.identifier, descr, type_descr))
fw("\n")
@@ -257,7 +253,7 @@
if op.description:
fw(" %s\n\n" % op.description)
for prop in op.args:
- write_param(" ", fw, prop)
+ write_param(" ", fw, prop)
if op.args:
fw("\n")
More information about the Bf-blender-cvs
mailing list