[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [31740] trunk/blender: sphinx doc gen
Campbell Barton
ideasman42 at gmail.com
Fri Sep 3 11:21:41 CEST 2010
Revision: 31740
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=31740
Author: campbellbarton
Date: 2010-09-03 11:21:40 +0200 (Fri, 03 Sep 2010)
Log Message:
-----------
sphinx doc gen
- use 3 column lists for inherited props, funcs and for references to save on vertical space.
- use the blender version string for the upload path and PDF name.
Modified Paths:
--------------
trunk/blender/release/scripts/op/wm.py
trunk/blender/release/scripts/ui/space_info.py
trunk/blender/source/blender/python/doc/sphinx_doc_gen.py
trunk/blender/source/blender/python/doc/sphinx_doc_gen.sh
trunk/blender/source/creator/creator.c
Modified: trunk/blender/release/scripts/op/wm.py
===================================================================
--- trunk/blender/release/scripts/op/wm.py 2010-09-03 07:50:22 UTC (rev 31739)
+++ trunk/blender/release/scripts/op/wm.py 2010-09-03 09:21:40 UTC (rev 31740)
@@ -505,7 +505,7 @@
bl_label = "View Documentation"
doc_id = doc_id
- _prefix = 'http://www.blender.org/documentation/250PythonDoc'
+ _prefix = "http://www.blender.org/documentation/blender_python_api_%s" % "_".join(str(v) for v in bpy.app.version)
def _nested_class_string(self, class_string):
ls = []
Modified: trunk/blender/release/scripts/ui/space_info.py
===================================================================
--- trunk/blender/release/scripts/ui/space_info.py 2010-09-03 07:50:22 UTC (rev 31739)
+++ trunk/blender/release/scripts/ui/space_info.py 2010-09-03 09:21:40 UTC (rev 31740)
@@ -316,7 +316,7 @@
layout.separator()
layout.operator("wm.url_open", text="Report a Bug", icon='URL').url = 'http://projects.blender.org/tracker/?atid=498&group_id=9&func=browse'
layout.separator()
- layout.operator("wm.url_open", text="Python API Reference", icon='URL').url = 'http://www.blender.org/documentation/250PythonDoc/contents.html'
+ layout.operator("wm.url_open", text="Python API Reference", icon='URL').url = "http://www.blender.org/documentation/blender_python_api_%s/contents.html" % "_".join(str(v) for v in bpy.app.version)
layout.operator("help.operator_cheat_sheet", icon='TEXT')
layout.separator()
layout.operator("anim.update_data_paths", text="FCurve/Driver 2.54 fix", icon='HELP')
Modified: trunk/blender/source/blender/python/doc/sphinx_doc_gen.py
===================================================================
--- trunk/blender/source/blender/python/doc/sphinx_doc_gen.py 2010-09-03 07:50:22 UTC (rev 31739)
+++ trunk/blender/source/blender/python/doc/sphinx_doc_gen.py 2010-09-03 09:21:40 UTC (rev 31740)
@@ -307,6 +307,9 @@
if bpy.app.build_revision != "Unknown":
version_string = version_string + " r" + bpy.app.build_revision
+ # for use with files
+ version_string_fp = "_".join(str(v) for v in bpy.app.version)
+
fw("project = 'Blender'\n")
# fw("master_doc = 'index'\n")
fw("copyright = u'Blender Foundation'\n")
@@ -336,7 +339,7 @@
fw("\n")
fw("An introduction to Blender and Python can be found at <http://wiki.blender.org/index.php/Dev:2.5/Py/API/Intro>\n")
fw("\n")
- fw("`A PDF version of this document is also available <blender_python_reference_250.pdf>`__\n")
+ fw("`A PDF version of this document is also available <blender_python_reference_%s.pdf>`__\n" % version_string_fp)
fw("\n")
fw(".. warning:: The Python API in Blender is **UNSTABLE**, It should only be used for testing, any script written now may break in future releases.\n")
fw(" \n")
@@ -636,20 +639,24 @@
if _BPY_STRUCT_FAKE:
for key, descr in descr_items:
if type(descr) == GetSetDescriptorType:
- lines.append("* :class:`%s.%s`\n" % (_BPY_STRUCT_FAKE, key))
+ lines.append(" * :class:`%s.%s`\n" % (_BPY_STRUCT_FAKE, key))
for base in bases:
for prop in base.properties:
- lines.append("* :class:`%s.%s`\n" % (base.identifier, prop.identifier))
+ lines.append(" * :class:`%s.%s`\n" % (base.identifier, prop.identifier))
for identifier, py_prop in base.get_py_properties():
- lines.append("* :class:`%s.%s`\n" % (base.identifier, identifier))
+ lines.append(" * :class:`%s.%s`\n" % (base.identifier, identifier))
for identifier, py_prop in base.get_py_properties():
- lines.append("* :class:`%s.%s`\n" % (base.identifier, identifier))
+ lines.append(" * :class:`%s.%s`\n" % (base.identifier, identifier))
if lines:
fw(".. rubric:: Inherited Properties\n\n")
+
+ fw(".. hlist::\n")
+ fw(" :columns: 3\n\n")
+
for line in lines:
fw(line)
fw("\n")
@@ -661,16 +668,20 @@
if _BPY_STRUCT_FAKE:
for key, descr in descr_items:
if type(descr) == MethodDescriptorType:
- lines.append("* :class:`%s.%s`\n" % (_BPY_STRUCT_FAKE, key))
+ lines.append(" * :class:`%s.%s`\n" % (_BPY_STRUCT_FAKE, key))
for base in bases:
for func in base.functions:
- lines.append("* :class:`%s.%s`\n" % (base.identifier, func.identifier))
+ lines.append(" * :class:`%s.%s`\n" % (base.identifier, func.identifier))
for identifier, py_func in base.get_py_functions():
- lines.append("* :class:`%s.%s`\n" % (base.identifier, identifier))
+ lines.append(" * :class:`%s.%s`\n" % (base.identifier, identifier))
if lines:
fw(".. rubric:: Inherited Functions\n\n")
+
+ fw(".. hlist::\n")
+ fw(" :columns: 3\n\n")
+
for line in lines:
fw(line)
fw("\n")
@@ -682,11 +693,14 @@
# use this otherwise it gets in the index for a normal heading.
fw(".. rubric:: References\n\n")
+ fw(".. hlist::\n")
+ fw(" :columns: 3\n\n")
+
for ref in struct.references:
ref_split = ref.split(".")
if len(ref_split) > 2:
ref = ref_split[-2] + "." + ref_split[-1]
- fw("* :class:`%s`\n" % ref)
+ fw(" * :class:`%s`\n" % ref)
fw("\n")
Modified: trunk/blender/source/blender/python/doc/sphinx_doc_gen.sh
===================================================================
--- trunk/blender/source/blender/python/doc/sphinx_doc_gen.sh 2010-09-03 07:50:22 UTC (rev 31739)
+++ trunk/blender/source/blender/python/doc/sphinx_doc_gen.sh 2010-09-03 09:21:40 UTC (rev 31740)
@@ -5,20 +5,25 @@
BLENDER="./blender.bin"
SSH_HOST="ideasman42 at emo.blender.org"
-SSH_UPLOAD="/data/www/vhosts/www.blender.org/documentation/250PythonDoc"
+SSH_UPLOAD="/data/www/vhosts/www.blender.org/documentation" # blender_python_api_VERSION, added after
+# sed string from hell, 'Blender 2.53 (sub 1) Build' --> '2_53_1'
+# "_".join(str(v) for v in bpy.app.version)
+BLENDER_VERSION=`$BLENDER --version | cut -f2-4 -d" " | sed 's/(//g' | sed 's/)//g' | sed 's/ sub /./g' | sed 's/\./_/g'`
+SSH_UPLOAD_FULL=$SSH_UPLOAD/"blender_python_api_"$BLENDER_VERSION
+
# dont delete existing docs, now partial updates are used for quick builds.
$BLENDER --background --python ./source/blender/python/doc/sphinx_doc_gen.py
# html
sphinx-build source/blender/python/doc/sphinx-in source/blender/python/doc/sphinx-out
cp source/blender/python/doc/sphinx-out/contents.html source/blender/python/doc/sphinx-out/index.html
-ssh ideasman42 at emo.blender.org 'rm -rf '$SSH_UPLOAD'/*'
-rsync --progress -avze "ssh -p 22" /b/source/blender/python/doc/sphinx-out/* $SSH_HOST:$SSH_UPLOAD/
+ssh ideasman42 at emo.blender.org 'rm -rf '$SSH_UPLOAD_FULL'/*'
+rsync --progress -avze "ssh -p 22" /b/source/blender/python/doc/sphinx-out/* $SSH_HOST:$SSH_UPLOAD_FULL/
# pdf
sphinx-build -b latex source/blender/python/doc/sphinx-in source/blender/python/doc/sphinx-out
cd source/blender/python/doc/sphinx-out
make
cd ../../../../../
-rsync --progress -avze "ssh -p 22" source/blender/python/doc/sphinx-out/contents.pdf $SSH_HOST:$SSH_UPLOAD/blender_python_reference_250.pdf
+rsync --progress -avze "ssh -p 22" source/blender/python/doc/sphinx-out/contents.pdf $SSH_HOST:$SSH_UPLOAD_FULL/blender_python_reference_$BLENDER_VERSION.pdf
Modified: trunk/blender/source/creator/creator.c
===================================================================
--- trunk/blender/source/creator/creator.c 2010-09-03 07:50:22 UTC (rev 31739)
+++ trunk/blender/source/creator/creator.c 2010-09-03 09:21:40 UTC (rev 31740)
@@ -131,6 +131,8 @@
char bprogname[FILE_MAXDIR+FILE_MAXFILE]; /* from blenpluginapi:pluginapi.c */
char btempdir[FILE_MAXDIR+FILE_MAXFILE];
+#define BLEND_VERSION_STRING_FMT "Blender %d.%02d (sub %d) Build\n", BLENDER_VERSION/100, BLENDER_VERSION%100, BLENDER_SUBVERSION
+
/* Initialise callbacks for the modules that need them */
static void setCallbacks(void);
@@ -175,17 +177,14 @@
static int print_version(int argc, char **argv, void *data)
{
+ printf (BLEND_VERSION_STRING_FMT);
#ifdef BUILD_DATE
- printf ("Blender %d.%02d (sub %d) Build\n", BLENDER_VERSION/100, BLENDER_VERSION%100, BLENDER_SUBVERSION);
printf ("\tbuild date: %s\n", build_date);
printf ("\tbuild time: %s\n", build_time);
printf ("\tbuild revision: %s\n", build_rev);
printf ("\tbuild platform: %s\n", build_platform);
printf ("\tbuild type: %s\n", build_type);
-#else
- printf ("Blender %d.%02d (sub %d) Build\n", BLENDER_VERSION/100, BLENDER_VERSION%100, BLENDER_SUBVERSION);
#endif
-
exit(0);
return 0;
@@ -195,7 +194,7 @@
{
bArgs *ba = (bArgs*)data;
- printf ("Blender %d.%02d (sub %d) Build\n", BLENDER_VERSION/100, BLENDER_VERSION%100, BLENDER_SUBVERSION);
+ printf (BLEND_VERSION_STRING_FMT);
printf ("Usage: blender [args ...] [file] [args ...]\n\n");
printf ("Render Options:\n");
@@ -344,7 +343,7 @@
static int debug_mode(int argc, char **argv, void *data)
{
G.f |= G_DEBUG; /* std output printf's */
- printf ("Blender %d.%02d (sub %d) Build\n", BLENDER_VERSION/100, BLENDER_VERSION%100, BLENDER_SUBVERSION);
+ printf(BLEND_VERSION_STRING_FMT);
MEM_set_memory_debug();
#ifdef NAN_BUILDINFO
More information about the Bf-blender-cvs
mailing list