Revision: 5379
          http://matplotlib.svn.sourceforge.net/matplotlib/?rev=5379&view=rev
Author:   jdh2358
Date:     2008-06-03 13:57:02 -0700 (Tue, 03 Jun 2008)

Log Message:
-----------
added sphinx template for doc unit

Added Paths:
-----------
    trunk/py4science/examples/sphinx_template/
    trunk/py4science/examples/sphinx_template/README.txt
    trunk/py4science/examples/sphinx_template/_static/
    trunk/py4science/examples/sphinx_template/_templates/
    trunk/py4science/examples/sphinx_template/build/
    trunk/py4science/examples/sphinx_template/conf.py
    trunk/py4science/examples/sphinx_template/index.rst
    trunk/py4science/examples/sphinx_template/make.py
    trunk/py4science/examples/sphinx_template/model/
    trunk/py4science/examples/sphinx_template/model/index.rst
    trunk/py4science/examples/sphinx_template/model/introduction.rst
    trunk/py4science/examples/sphinx_template/model/next_steps.rst
    trunk/py4science/examples/sphinx_template/model/sphinx_helpers.rst
    trunk/py4science/examples/sphinx_template/simulations/
    trunk/py4science/examples/sphinx_template/simulations/code/
    trunk/py4science/examples/sphinx_template/simulations/code/elegant.py
    trunk/py4science/examples/sphinx_template/simulations/code/hairy.py
    trunk/py4science/examples/sphinx_template/simulations/code/make.py
    trunk/py4science/examples/sphinx_template/simulations/finale.rst
    trunk/py4science/examples/sphinx_template/simulations/index.rst
    trunk/py4science/examples/sphinx_template/simulations/introduction.rst
    trunk/py4science/examples/sphinx_template/simulations/preliminary.rst

Added: trunk/py4science/examples/sphinx_template/README.txt
===================================================================
--- trunk/py4science/examples/sphinx_template/README.txt                        
        (rev 0)
+++ trunk/py4science/examples/sphinx_template/README.txt        2008-06-03 
20:57:02 UTC (rev 5379)
@@ -0,0 +1,26 @@
+sphinx template sampledoc
+=========================
+
+This is the top level build directory for the sphinx sampledoc
+documentation.  All of the documentation is written using sphinx, a
+python documentation system built on top of ReST.  This directory
+contains
+
+
+* model - A document describing a model
+
+* simulations - A document describing the simulations -- contains a
+  code subdir with python scripts and a make.py file to build them
+  into PNGs
+
+* make.py - the build script to build the html or PDF docs.  Do
+  `python make.py html` or `python make.py latex` for PDF
+
+* index.rst - the top level include document for sampledocs document
+
+* conf.py - the sphinx configuration
+
+* _static - used by the sphinx build system
+
+* _templates - used by the sphinx build system
+

Added: trunk/py4science/examples/sphinx_template/conf.py
===================================================================
--- trunk/py4science/examples/sphinx_template/conf.py                           
(rev 0)
+++ trunk/py4science/examples/sphinx_template/conf.py   2008-06-03 20:57:02 UTC 
(rev 5379)
@@ -0,0 +1,161 @@
+# -*- coding: utf-8 -*-
+#
+# sampledoc documentation build configuration file, created by
+# sphinx-quickstart on Tue Jun  3 12:40:24 2008.
+#
+# This file is execfile()d with the current directory set to its containing 
dir.
+#
+# The contents of this file are pickled, so don't put values in the namespace
+# that aren't pickleable (module imports are okay, they're removed 
automatically).
+#
+# All configuration values have a default value; values that are commented out
+# serve to show the default value.
+
+import sys, os
+
+# If your extensions are in another directory, add it here. If the directory
+# is relative to the documentation root, use os.path.abspath to make it
+# absolute, like shown here.
+#sys.path.append(os.path.abspath('some/directory'))
+
+# General configuration
+# ---------------------
+
+# Add any Sphinx extension module names here, as strings. They can be 
extensions
+# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
+#extensions = []
+
+# Add any paths that contain templates here, relative to this directory.
+templates_path = ['_templates']
+
+# The suffix of source filenames.
+source_suffix = '.rst'
+
+# The master toctree document.
+master_doc = 'index'
+
+# General substitutions.
+project = 'sampledoc'
+copyright = '2008, John D. Hunter, Cast of Thousands'
+
+# The default replacements for |version| and |release|, also used in various
+# other places throughout the built documents.
+#
+# The short X.Y version.
+version = '0.1'
+# The full version, including alpha/beta/rc tags.
+release = '0.1'
+
+# There are two options for replacing |today|: either, you set today to some
+# non-false value, then it is used:
+#today = ''
+# Else, today_fmt is used as the format for a strftime call.
+today_fmt = '%B %d, %Y'
+
+# List of documents that shouldn't be included in the build.
+#unused_docs = []
+
+# List of directories, relative to source directories, that shouldn't be 
searched
+# for source files.
+#exclude_dirs = []
+
+# If true, '()' will be appended to :func: etc. cross-reference text.
+#add_function_parentheses = True
+
+# If true, the current module name will be prepended to all description
+# unit titles (such as .. function::).
+#add_module_names = True
+
+# If true, sectionauthor and moduleauthor directives will be shown in the
+# output. They are ignored by default.
+#show_authors = False
+
+# The name of the Pygments (syntax highlighting) style to use.
+pygments_style = 'sphinx'
+
+
+# Options for HTML output
+# -----------------------
+
+# The style sheet to use for HTML and HTML Help pages. A file of that name
+# must exist either in Sphinx' static/ path, or in one of the custom paths
+# given in html_static_path.
+html_style = 'default.css'
+
+# The name for this set of Sphinx documents.  If None, it defaults to
+# "<project> v<release> documentation".
+#html_title = None
+
+# The name of an image file (within the static path) to place at the top of
+# the sidebar.
+#html_logo = None
+
+# Add any paths that contain custom static files (such as style sheets) here,
+# relative to this directory. They are copied after the builtin static files,
+# so a file named "default.css" will overwrite the builtin "default.css".
+html_static_path = ['_static']
+
+# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
+# using the given strftime format.
+html_last_updated_fmt = '%b %d, %Y'
+
+# If true, SmartyPants will be used to convert quotes and dashes to
+# typographically correct entities.
+#html_use_smartypants = True
+
+# Custom sidebar templates, maps document names to template names.
+#html_sidebars = {}
+
+# Additional templates that should be rendered to pages, maps page names to
+# template names.
+#html_additional_pages = {}
+
+# If false, no module index is generated.
+#html_use_modindex = True
+
+# If true, the reST sources are included in the HTML build as _sources/<name>.
+#html_copy_source = True
+
+# If true, an OpenSearch description file will be output, and all pages will
+# contain a <link> tag referring to it.  The value of this option must be the
+# base URL from which the finished HTML is served.
+#html_use_opensearch = ''
+
+# If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml").
+#html_file_suffix = ''
+
+# Output file base name for HTML help builder.
+htmlhelp_basename = 'sampledoc'
+
+
+# Options for LaTeX output
+# ------------------------
+
+# The paper size ('letter' or 'a4').
+#latex_paper_size = 'letter'
+
+# The font size ('10pt', '11pt' or '12pt').
+#latex_font_size = '10pt'
+
+# Grouping the document tree into LaTeX files. List of tuples
+# (source start file, target name, title, author, document class 
[howto/manual]).
+latex_documents = [
+  ('index', 'sampledoc.tex', 'sampledoc Documentation', 'John D. Hunter, Cast 
of Thousands', 'manual'),
+]
+
+# The name of an image file (relative to this directory) to place at the top of
+# the title page.
+#latex_logo = None
+
+# For "manual" documents, if this is true, then toplevel headings are parts,
+# not chapters.
+#latex_use_parts = False
+
+# Additional stuff for the LaTeX preamble.
+#latex_preamble = ''
+
+# Documents to append as an appendix to all manuals.
+#latex_appendices = []
+
+# If false, no module index is generated.
+#latex_use_modindex = True

Added: trunk/py4science/examples/sphinx_template/index.rst
===================================================================
--- trunk/py4science/examples/sphinx_template/index.rst                         
(rev 0)
+++ trunk/py4science/examples/sphinx_template/index.rst 2008-06-03 20:57:02 UTC 
(rev 5379)
@@ -0,0 +1,23 @@
+.. sampledoc documentation master file, created by sphinx-quickstart on Tue 
Jun  3 12:40:24 2008.
+   You can adapt this file completely to your liking, but it should at least
+   contain the root `toctree` directive.
+
+Welcome to sampledoc's documentation!
+=====================================
+
+Contents:
+
+.. toctree::
+   :maxdepth: 2
+
+   model/index.rst
+   simulations/index.rst
+
+
+Indices and tables
+==================
+
+* :ref:`genindex`
+* :ref:`modindex`
+* :ref:`search`
+

Added: trunk/py4science/examples/sphinx_template/make.py
===================================================================
--- trunk/py4science/examples/sphinx_template/make.py                           
(rev 0)
+++ trunk/py4science/examples/sphinx_template/make.py   2008-06-03 20:57:02 UTC 
(rev 5379)
@@ -0,0 +1,71 @@
+#!/usr/bin/env python
+import fileinput
+import glob
+import os
+import shutil
+import sys
+
+def check_build():
+    build_dirs = ['build', 'build/doctrees', 'build/html', 'build/latex',
+                  '_static', '_templates']
+    for d in build_dirs:
+        try:
+            os.mkdir(d)
+        except OSError:
+            pass
+
+def figs():
+    os.system('cd simulations/code/ && python make.py')
+
+def html():
+    check_build()
+    figs()
+    os.system('sphinx-build -b html -d build/doctrees . build/html')
+
+def latex():
+    check_build()
+    figs()
+    if sys.platform != 'win32':
+        # LaTeX format.
+        os.system('sphinx-build -b latex -d build/doctrees . build/latex')
+
+        # Produce pdf.
+        os.chdir('build/latex')
+
+        # Copying the makefile produced by sphinx...
+        os.system('pdflatex sampledoc.tex')
+        os.system('pdflatex sampledoc.tex')
+        os.system('makeindex -s python.ist sampledoc.idx')
+        os.system('makeindex -s python.ist modsampledoc.idx')
+        os.system('pdflatex sampledoc.tex')
+
+        os.chdir('../..')
+    else:
+        print 'latex build has not been tested on windows'
+
+def clean():
+    shutil.rmtree('build')
+
+def all():
+    figs()
+    html()
+    latex()
+
+
+funcd = {'figs':figs,
+         'html':html,
+         'latex':latex,
+         'clean':clean,
+         'all':all,
+         }
+
+
+if len(sys.argv)>1:
+    for arg in sys.argv[1:]:
+        func = funcd.get(arg)
+        if func is None:
+            raise SystemExit('Do not know how to handle %s; valid args are'%(
+                    arg, funcd.keys()))
+        func()
+else:
+    all()

Added: trunk/py4science/examples/sphinx_template/model/index.rst
===================================================================
--- trunk/py4science/examples/sphinx_template/model/index.rst                   
        (rev 0)
+++ trunk/py4science/examples/sphinx_template/model/index.rst   2008-06-03 
20:57:02 UTC (rev 5379)
@@ -0,0 +1,14 @@
+.. _model-index:
+
+##############
+My Fancy Model
+##############
+
+:Release: |version|
+:Date: |today|
+
+.. toctree::
+
+   introduction.rst
+   next_steps.rst
+   sphinx_helpers.rst

Added: trunk/py4science/examples/sphinx_template/model/introduction.rst
===================================================================
--- trunk/py4science/examples/sphinx_template/model/introduction.rst            
                (rev 0)
+++ trunk/py4science/examples/sphinx_template/model/introduction.rst    
2008-06-03 20:57:02 UTC (rev 5379)
@@ -0,0 +1,23 @@
+.. _model-introduction:
+
+******************
+Model Introduction
+******************
+
+Wherein I describe my fancy model
+
+.. _other-models:
+
+Other Models
+============
+
+Where in I describe
+
+* model A
+
+* model B
+
+* model C
+
+and why they all suck
+

Added: trunk/py4science/examples/sphinx_template/model/next_steps.rst
===================================================================
--- trunk/py4science/examples/sphinx_template/model/next_steps.rst              
                (rev 0)
+++ trunk/py4science/examples/sphinx_template/model/next_steps.rst      
2008-06-03 20:57:02 UTC (rev 5379)
@@ -0,0 +1,8 @@
+.. _next-steps:
+
+**********
+Next steps
+**********
+
+Wherein I describe my next steps
+

Added: trunk/py4science/examples/sphinx_template/model/sphinx_helpers.rst
===================================================================
--- trunk/py4science/examples/sphinx_template/model/sphinx_helpers.rst          
                (rev 0)
+++ trunk/py4science/examples/sphinx_template/model/sphinx_helpers.rst  
2008-06-03 20:57:02 UTC (rev 5379)
@@ -0,0 +1,127 @@
+.. _sphinx_helpers:
+
+******************
+Sphinx Cheat Sheet
+******************
+
+Wherein I show by example how to do some things in Sphinx (you can see
+a literal version of this file below in :ref:`sphinx-literal`)
+
+
+.. _making-a-list:
+
+Making a list
+=============
+
+It is easy to make lists in rest
+
+Bullet points
+-------------
+
+This is a subsection making bullet points
+
+* point A
+
+* point B
+
+* point C
+
+
+Enumerated points
+------------------
+
+This is a subsection making numbered points
+
+#. point A
+
+#. point B
+
+#. point C
+
+
+.. _making-a-table:
+
+Making a table
+==============
+
+This shows you how to make a table -- if you only want to make a list see 
:ref:`making-a-list`.
+
+==================   ============
+Name                 Age
+==================   ============
+John D Hunter        40
+Cast of Thousands    41
+And Still More       42
+==================   ============
+
+.. _making-links:
+
+Making links
+============
+
+It is easy to make a link to `yahoo <http://yahoo.com>`_ or to some
+section inside this document (see :ref:`making-a-table`) or another
+document (see :ref:`final-results`).
+
+.. _formatting-text:
+
+Formatting text
+===============
+
+You use inline markup to make text *italics*, **bold**, or ``monotype``.
+
+You can represent code blocks fairly easily::
+
+   import numpy as np
+   x = np.random.rand(12)
+
+Or literally include code:
+
+.. literalinclude:: ../simulations/code/elegant.py
+
+
+.. _emacs-helpers:
+
+Emacs helpers
+=============
+
+There is an emacs mode `rst.el
+<http://docutils.sourceforge.net/tools/editors/emacs/rst.el>`_ which
+automates many important ReST tasks like building and updateing
+table-of-contents, and promoting or demoting section headings.  Here
+is the basic ``.emacs`` configuration::
+
+    (require 'rst)
+    (setq auto-mode-alist
+          (append '(("\\.txt$" . rst-mode)
+                    ("\\.rst$" . rst-mode)
+                    ("\\.rest$" . rst-mode)) auto-mode-alist))
+
+
+Some helpful functions::
+
+    C-c TAB - rst-toc-insert
+
+      Insert table of contents at point
+
+    C-c C-u - rst-toc-update
+
+        Update the table of contents at point
+
+    C-c C-l rst-shift-region-left
+
+        Shift region to the left
+
+    C-c C-r rst-shift-region-right
+
+        Shift region to the right
+
+
+.. _sphinx-literal:
+
+This file
+=========
+
+.. literalinclude:: sphinx_helpers.rst
+
+

Added: trunk/py4science/examples/sphinx_template/simulations/code/elegant.py
===================================================================
--- trunk/py4science/examples/sphinx_template/simulations/code/elegant.py       
                        (rev 0)
+++ trunk/py4science/examples/sphinx_template/simulations/code/elegant.py       
2008-06-03 20:57:02 UTC (rev 5379)
@@ -0,0 +1,4 @@
+import matplotlib.pyplot as plt
+plt.plot([1,2,3], [4,5,6])
+plt.ylabel('some more numbers')
+

Added: trunk/py4science/examples/sphinx_template/simulations/code/hairy.py
===================================================================
--- trunk/py4science/examples/sphinx_template/simulations/code/hairy.py         
                (rev 0)
+++ trunk/py4science/examples/sphinx_template/simulations/code/hairy.py 
2008-06-03 20:57:02 UTC (rev 5379)
@@ -0,0 +1,4 @@
+import matplotlib.pyplot as plt
+plt.plot([1,2,3])
+plt.ylabel('some numbers')
+

Added: trunk/py4science/examples/sphinx_template/simulations/code/make.py
===================================================================
--- trunk/py4science/examples/sphinx_template/simulations/code/make.py          
                (rev 0)
+++ trunk/py4science/examples/sphinx_template/simulations/code/make.py  
2008-06-03 20:57:02 UTC (rev 5379)
@@ -0,0 +1,58 @@
+#!/usr/bin/env python
+import sys, os, glob
+import matplotlib
+import IPython.Shell
+matplotlib.rcdefaults()
+matplotlib.use('Agg')
+
+mplshell = IPython.Shell.MatplotlibShell('mpl')
+
+def figs():
+    print 'making figs'
+    import matplotlib.pyplot as plt
+    for fname in glob.glob('*.py'):
+        if fname==__file__: continue
+        basename, ext = os.path.splitext(fname)
+        outfile = '%s.png'%basename
+
+        if os.path.exists(outfile):
+            print '    already have %s'%outfile
+            continue
+        else:
+            print '    building %s'%fname
+        plt.close('all')    # we need to clear between runs
+        mplshell.magic_run(basename)
+        plt.savefig('%s.png'%basename)
+    print 'all figures made'
+
+
+def clean():
+    patterns = ['#*', '*~', '*.png', '*pyc']
+    for pattern in patterns:
+        for fname in glob.glob(pattern):
+            os.remove(fname)
+    print 'all clean'
+
+
+
+def all():
+    figs()
+
+funcd = {'figs':figs,
+         'clean':clean,
+         'all':all,
+         }
+
+if len(sys.argv)>1:
+    for arg in sys.argv[1:]:
+        func = funcd.get(arg)
+        if func is None:
+            raise SystemExit('Do not know how to handle %s; valid args are'%(
+                    arg, funcd.keys()))
+        func()
+else:
+    all()
+
+
+
+

Added: trunk/py4science/examples/sphinx_template/simulations/finale.rst
===================================================================
--- trunk/py4science/examples/sphinx_template/simulations/finale.rst            
                (rev 0)
+++ trunk/py4science/examples/sphinx_template/simulations/finale.rst    
2008-06-03 20:57:02 UTC (rev 5379)
@@ -0,0 +1,17 @@
+.. _final-results:
+
+*************
+Final Results
+*************
+
+
+After much head scratching, I wrote this big elegant piece of code
+
+.. literalinclude:: code/elegant.py
+
+which produced this elegant figure
+
+.. image:: code/elegant.png
+   :scale: 50
+
+

Added: trunk/py4science/examples/sphinx_template/simulations/index.rst
===================================================================
--- trunk/py4science/examples/sphinx_template/simulations/index.rst             
                (rev 0)
+++ trunk/py4science/examples/sphinx_template/simulations/index.rst     
2008-06-03 20:57:02 UTC (rev 5379)
@@ -0,0 +1,15 @@
+.. _simulations-index:
+
+#########################
+My Stupendous Simulations
+#########################
+
+:Release: |version|
+:Date: |today|
+
+.. toctree::
+
+   introduction.rst
+   preliminary.rst
+   finale.rst
+

Added: trunk/py4science/examples/sphinx_template/simulations/introduction.rst
===================================================================
--- trunk/py4science/examples/sphinx_template/simulations/introduction.rst      
                        (rev 0)
+++ trunk/py4science/examples/sphinx_template/simulations/introduction.rst      
2008-06-03 20:57:02 UTC (rev 5379)
@@ -0,0 +1,24 @@
+.. _simulations-introduction:
+
+********************
+Simulations overview
+********************
+
+Wherein I describe my fancy code and libraries to implement my fancy model 
(:ref:`model-introduction`)
+
+.. _python-libraries:
+
+The python libraries
+====================
+
+Why `matplotlib <http://matplotlib.sf.net>`_ rules
+
+.. _data-sources:
+
+The data sources
+====================
+
+Now how much would you pay?
+
+
+

Added: trunk/py4science/examples/sphinx_template/simulations/preliminary.rst
===================================================================
--- trunk/py4science/examples/sphinx_template/simulations/preliminary.rst       
                        (rev 0)
+++ trunk/py4science/examples/sphinx_template/simulations/preliminary.rst       
2008-06-03 20:57:02 UTC (rev 5379)
@@ -0,0 +1,17 @@
+.. _preliminary-tests:
+
+*****************
+Preliminary tests
+*****************
+
+I wrote this big hairy piece of code
+
+.. literalinclude:: code/hairy.py
+
+
+which produced this lovely figure
+
+.. image:: code/hairy.png
+   :scale: 50
+
+


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Matplotlib-checkins mailing list
Matplotlib-checkins@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins

Reply via email to