Merge lp:~openerp-dev/openerp-doc/trunk-rewrite-build-with-generated-index-xmo into lp:~openerp/openerp-doc/trunk

Proposed by Xavier (Open ERP)
Status: Merged
Merged at revision: 32
Proposed branch: lp:~openerp-dev/openerp-doc/trunk-rewrite-build-with-generated-index-xmo
Merge into: lp:~openerp/openerp-doc/trunk
Diff against target: 4919 lines (+1553/-3022)
61 files modified
.bzrignore (+15/-0)
Makefile (+6/-16)
defaults/Makefile (+153/-0)
defaults/_templates/sidebarintro.html (+27/-0)
defaults/_templates/sidebarlogo.html (+3/-0)
defaults/_themes/.gitignore (+3/-0)
defaults/_themes/LICENSE (+37/-0)
defaults/_themes/README (+31/-0)
defaults/_themes/flask/layout.html (+25/-0)
defaults/_themes/flask/relations.html (+19/-0)
defaults/_themes/flask/static/flasky.css_t (+395/-0)
defaults/_themes/flask/static/small_flask.css (+70/-0)
defaults/_themes/flask/theme.conf (+9/-0)
defaults/_themes/flask_small/layout.html (+22/-0)
defaults/_themes/flask_small/static/flasky.css_t (+287/-0)
defaults/_themes/flask_small/theme.conf (+10/-0)
defaults/_themes/flask_theme_support.py (+86/-0)
defaults/conf.py (+177/-0)
developers/Makefile (+0/-153)
developers/_templates/sidebarintro.html (+0/-27)
developers/_templates/sidebarlogo.html (+0/-3)
developers/_themes/.gitignore (+0/-3)
developers/_themes/LICENSE (+0/-37)
developers/_themes/README (+0/-31)
developers/_themes/flask/layout.html (+0/-25)
developers/_themes/flask/relations.html (+0/-19)
developers/_themes/flask/static/flasky.css_t (+0/-395)
developers/_themes/flask/static/small_flask.css (+0/-70)
developers/_themes/flask/theme.conf (+0/-9)
developers/_themes/flask_small/layout.html (+0/-22)
developers/_themes/flask_small/static/flasky.css_t (+0/-287)
developers/_themes/flask_small/theme.conf (+0/-10)
developers/_themes/flask_theme_support.py (+0/-86)
developers/conf.py (+0/-258)
developers/developers.rst.inc (+0/-43)
developers/generate.py (+0/-74)
developers/index.rst (+0/-7)
developers/installation.rst (+0/-2)
developers/overview.rst (+0/-2)
docbuilder (+178/-0)
users/Makefile (+0/-154)
users/_templates/sidebarintro.html (+0/-21)
users/_templates/sidebarlogo.html (+0/-3)
users/_themes/.gitignore (+0/-3)
users/_themes/LICENSE (+0/-37)
users/_themes/README (+0/-31)
users/_themes/flask/layout.html (+0/-25)
users/_themes/flask/relations.html (+0/-19)
users/_themes/flask/static/flasky.css_t (+0/-395)
users/_themes/flask/static/small_flask.css (+0/-70)
users/_themes/flask/theme.conf (+0/-9)
users/_themes/flask_small/layout.html (+0/-22)
users/_themes/flask_small/static/flasky.css_t (+0/-287)
users/_themes/flask_small/theme.conf (+0/-10)
users/_themes/flask_theme_support.py (+0/-86)
users/accounting.rst (+0/-2)
users/conf.py (+0/-255)
users/index.rst (+0/-7)
users/sale.rst (+0/-2)
users/tutorial.rst (+0/-4)
users/users.rst.inc (+0/-1)
To merge this branch: bzr merge lp:~openerp-dev/openerp-doc/trunk-rewrite-build-with-generated-index-xmo
Reviewer Review Type Date Requested Status
Olivier Dony (Odoo) Approve
Review via email: mp+144084@code.launchpad.net

Description of the change

Rewrite of the documentation builder for trunk:
* Added an init target to checkout the various repos
* Removed unused developers/ and users/ directories
* Moved building logic to a python script
* Build addons docsets
  - iterate on addons, try to find those with a doc/conf.py or doc/index.rst
  - Default sphinx conf used if only index.rst is there (from defaults/ directory), some values are extracted from __openerp__.py
  - currently only builds mail but should pick up new addons if doc is added to them
* Removed building of command doc (command merged into trunk)
* Dynamically builds root index (developer/) with links to all found/generated docs

Warning: on first update, will need to manually checkout addons (or remove all checkouts and init)

To post a comment you must log in.
Revision history for this message
Vo Minh Thu (thu) wrote :

- Intersphinx target "openerpcommand" must be removed.
- The os.chdir(PATH_ROOT) is unnecessary (or almost) in docbuilder.
- There is still a "TODO: cp developers.html publish('developers', 'index.html')" but it seems to be implemented.

44. By Xavier (Open ERP)

[FIX] remove leftover todo

45. By Xavier (Open ERP)

[FIX] leftover unneeded chdir call

46. By Xavier (Open ERP)

[REM] openerpcommand intersphinx domain from default sphinx template (merged into trunk)

Revision history for this message
Xavier (Open ERP) (xmo-deactivatedaccount) wrote :

> - There is still a "TODO: cp developers.html publish('developers', 'index.html')" but it seems to be implemented.

Was done locally, forgot to push it.

> - The os.chdir(PATH_ROOT) is unnecessary (or almost) in docbuilder.

Done.

> - Intersphinx target "openerpcommand" must be removed.

Removed from the "defaults" project.

Revision history for this message
Olivier Dony (Odoo) (odo-openerp) wrote :

Looks good to me after a quick scan, but I get a traceback when I try to run `make html`. Haven't had time to investigate yet, might only be just me:

Traceback (most recent call last):
  File "./docbuilder", line 178, in <module>
    main()
  File "./docbuilder", line 175, in main
    args.func(args)
  File "./docbuilder", line 74, in html
    cwd=subpath(PATH_ROOT, project.directory))
  File "/usr/lib/python2.7/subprocess.py", line 506, in check_call
    retcode = call(*popenargs, **kwargs)
  File "/usr/lib/python2.7/subprocess.py", line 493, in call
    return Popen(*popenargs, **kwargs).wait()
  File "/usr/lib/python2.7/subprocess.py", line 679, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1249, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory: '/home/odo/repositories/doc/trunk/tools'
make: *** [html] Error 1

Apart from that, I would love to have an option to run bzr and sphinx-build in non-quiet mode when needed :-)

Revision history for this message
Olivier Dony (Odoo) (odo-openerp) wrote :

Please disregard the traceback in my previous comment, I had tried to init the branches manually (using faster local lightweight checkouts) and had not noticed the new `tools` one, which was thus missing.

I actually tried to run ``make init`` afterwards to see whether it would fix it, but it does not work on a partially initialized set of branches. Maybe we could have `init` as a real make target that has `addons`,`web`,`server` and `tools` as prerequisites, each having the corresponding `bzr branch` command. The `init` target could then be a prerequisite for `html`/`dirhtml`, auto-magically fixing your branches when needed.
Of course the same could be done in ./docbuilder, it's just that a Makefile works well for that sort of thing.

Anyhow, this is all just nice-to-have, the current patch is fine by me.

review: Approve
Revision history for this message
Xavier (Open ERP) (xmo-deactivatedaccount) wrote :

> Maybe we could have `init` as a real make target that has `addons`,`web`,`server` and `tools` as prerequisites, each having the corresponding `bzr branch` command.

They'd probably need to check whether the branch already exists as well, maybe each branch target (branch rules?) would do something like "if {branch is checked out & correct} pull else branch"

Revision history for this message
Xavier (Open ERP) (xmo-deactivatedaccount) wrote :

> Of course the same could be done in ./docbuilder, it's just that a Makefile works well for that sort of thing.

Aye, and the subcommands stuff could be removed from docbuilder, it'd simply build assuming branches are correctly setup (maybe just an assert of some sort that the path exists with a non-python-exception error & exit if not)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== added file '.bzrignore'
--- .bzrignore 1970-01-01 00:00:00 +0000
+++ .bzrignore 2013-01-21 13:47:22 +0000
@@ -0,0 +1,15 @@
1# checked out by script
2addons
3command
4server
5tools
6web
7
8# generated
9build
10
11# virtualenv
12.Python
13bin
14include
15lib
0\ No newline at end of file16\ No newline at end of file
117
=== modified file 'Makefile'
--- Makefile 2013-01-18 13:39:37 +0000
+++ Makefile 2013-01-21 13:47:22 +0000
@@ -1,25 +1,15 @@
1SHELL = /bin/bash1SHELL = /bin/bash
2PUBLISH_DIR=./build/html2PUBLISH_DIR=./build/html
3BUILDSCRIPT=./docbuilder
4
5.PHONY: init html dirhtml
36
4clean:7clean:
5 rm -rf ${PUBLISH_DIR}8 rm -rf ${PUBLISH_DIR}
6 mkdir -p ${PUBLISH_DIR}9 mkdir -p ${PUBLISH_DIR}
710
11init:
12 $(BUILDSCRIPT) init
8dirhtml: html13dirhtml: html
9html:14html:
10 find . -name '*.pyc' -exec rm {} \;15 $(BUILDSCRIPT) html
11 pushd server ; bzr pull -q ; popd
12 pushd web ; bzr pull -q ; popd
13 pushd command ; bzr pull -q ; popd
14 pushd tools ; bzr pull -q ; popd
15
16 mkdir -p ${PUBLISH_DIR}/developers/{server,web,command,runbot}
17 cp developers.html ${PUBLISH_DIR}/developers/index.html
18
19 pushd server/doc ; make clean dirhtml ; cp -r _build/dirhtml/* ../../${PUBLISH_DIR}/developers/server/ ; popd
20 pushd web/addons/web/doc ; make clean dirhtml ; rm -rf ../../../../_web_html ; cp -r _build/dirhtml/* ../../../../${PUBLISH_DIR}/developers/web/ ; popd
21 pushd command/doc ; make clean dirhtml ; rm -rf ../../_command_html ; cp -r _build/dirhtml/* ../../${PUBLISH_DIR}/developers/command/ ; popd
22 pushd tools/openerp-runbot/doc ; make clean dirhtml ; rm -rf ../../_runbot_html ; cp -r _build/dirhtml/* ../../../${PUBLISH_DIR}/developers/runbot/ ; popd
23
24 # Create global users tree
25 pushd users ; make clean ; make dirhtml ; cp -r _build/dirhtml ../${PUBLISH_DIR}/users ; popd
2616
=== added directory 'defaults'
=== added file 'defaults/Makefile'
--- defaults/Makefile 1970-01-01 00:00:00 +0000
+++ defaults/Makefile 2013-01-21 13:47:22 +0000
@@ -0,0 +1,153 @@
1# Makefile for Sphinx documentation
2#
3
4# You can set these variables from the command line.
5SPHINXOPTS =
6SPHINXBUILD = sphinx-build
7PAPER =
8BUILDDIR = _build
9
10# Internal variables.
11PAPEROPT_a4 = -D latex_paper_size=a4
12PAPEROPT_letter = -D latex_paper_size=letter
13ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
14# the i18n builder cannot share the environment and doctrees with the others
15I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
16
17.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
18
19help:
20 @echo "Please use \`make <target>' where <target> is one of"
21 @echo " html to make standalone HTML files"
22 @echo " dirhtml to make HTML files named index.html in directories"
23 @echo " singlehtml to make a single large HTML file"
24 @echo " pickle to make pickle files"
25 @echo " json to make JSON files"
26 @echo " htmlhelp to make HTML files and a HTML help project"
27 @echo " qthelp to make HTML files and a qthelp project"
28 @echo " devhelp to make HTML files and a Devhelp project"
29 @echo " epub to make an epub"
30 @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
31 @echo " latexpdf to make LaTeX files and run them through pdflatex"
32 @echo " text to make text files"
33 @echo " man to make manual pages"
34 @echo " texinfo to make Texinfo files"
35 @echo " info to make Texinfo files and run them through makeinfo"
36 @echo " gettext to make PO message catalogs"
37 @echo " changes to make an overview of all changed/added/deprecated items"
38 @echo " linkcheck to check all external links for integrity"
39 @echo " doctest to run all doctests embedded in the documentation (if enabled)"
40
41clean:
42 -rm -rf $(BUILDDIR)/*
43
44html:
45 $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
46 @echo
47 @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
48
49dirhtml:
50 $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
51 @echo
52 @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
53
54singlehtml:
55 $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
56 @echo
57 @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
58
59pickle:
60 $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
61 @echo
62 @echo "Build finished; now you can process the pickle files."
63
64json:
65 $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
66 @echo
67 @echo "Build finished; now you can process the JSON files."
68
69htmlhelp:
70 $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
71 @echo
72 @echo "Build finished; now you can run HTML Help Workshop with the" \
73 ".hhp project file in $(BUILDDIR)/htmlhelp."
74
75qthelp:
76 $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
77 @echo
78 @echo "Build finished; now you can run "qcollectiongenerator" with the" \
79 ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
80 @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/DocumentationTemplate.qhcp"
81 @echo "To view the help file:"
82 @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/DocumentationTemplate.qhc"
83
84devhelp:
85 $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
86 @echo
87 @echo "Build finished."
88 @echo "To view the help file:"
89 @echo "# mkdir -p $$HOME/.local/share/devhelp/DocumentationTemplate"
90 @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/DocumentationTemplate"
91 @echo "# devhelp"
92
93epub:
94 $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
95 @echo
96 @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
97
98latex:
99 $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
100 @echo
101 @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
102 @echo "Run \`make' in that directory to run these through (pdf)latex" \
103 "(use \`make latexpdf' here to do that automatically)."
104
105latexpdf:
106 $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
107 @echo "Running LaTeX files through pdflatex..."
108 $(MAKE) -C $(BUILDDIR)/latex all-pdf
109 @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
110
111text:
112 $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
113 @echo
114 @echo "Build finished. The text files are in $(BUILDDIR)/text."
115
116man:
117 $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
118 @echo
119 @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
120
121texinfo:
122 $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
123 @echo
124 @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
125 @echo "Run \`make' in that directory to run these through makeinfo" \
126 "(use \`make info' here to do that automatically)."
127
128info:
129 $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
130 @echo "Running Texinfo files through makeinfo..."
131 make -C $(BUILDDIR)/texinfo info
132 @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
133
134gettext:
135 $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
136 @echo
137 @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
138
139changes:
140 $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
141 @echo
142 @echo "The overview file is in $(BUILDDIR)/changes."
143
144linkcheck:
145 $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
146 @echo
147 @echo "Link check complete; look for any errors in the above output " \
148 "or in $(BUILDDIR)/linkcheck/output.txt."
149
150doctest:
151 $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
152 @echo "Testing of doctests in the sources finished, look at the " \
153 "results in $(BUILDDIR)/doctest/output.txt."
0154
=== added directory 'defaults/_static'
=== added file 'defaults/_static/openerp.png'
1Binary files defaults/_static/openerp.png 1970-01-01 00:00:00 +0000 and defaults/_static/openerp.png 2013-01-21 13:47:22 +0000 differ155Binary files defaults/_static/openerp.png 1970-01-01 00:00:00 +0000 and defaults/_static/openerp.png 2013-01-21 13:47:22 +0000 differ
=== added directory 'defaults/_templates'
=== added file 'defaults/_templates/sidebarintro.html'
--- defaults/_templates/sidebarintro.html 1970-01-01 00:00:00 +0000
+++ defaults/_templates/sidebarintro.html 2013-01-21 13:47:22 +0000
@@ -0,0 +1,27 @@
1<h3>About</h3>
2
3<p>
4
5OpenERP is an extensive open source suite of business applications. It is built
6on a flexible development framework written in Python. The framework uses a
7three-tier architecture. It provides an ORM on top of PostgreSQL, a modular
8application server, and a feature-packed web client.
9
10</p>
11
12<h3>Other Docs</h3>
13<ul>
14 <li><a href="http://doc.openerp.com/trunk/users">Users doc</a></li>
15 <li>
16 <a href="http://doc.openerp.com/v5.0">5.0</a>
17 <a href="http://doc.openerp.com/v6.0">6.0</a>
18 <a href="http://doc.openerp.com/v6.1">6.1</a>
19 (old versions)
20 </li>
21</ul>
22
23<h3>Useful Links</h3>
24<ul>
25 <li><a href="http://www.openerp.com/">OpenERP.com</a></li>
26 <li><a href="http://python.org/">Python.org</a></li>
27</ul>
028
=== added file 'defaults/_templates/sidebarlogo.html'
--- defaults/_templates/sidebarlogo.html 1970-01-01 00:00:00 +0000
+++ defaults/_templates/sidebarlogo.html 2013-01-21 13:47:22 +0000
@@ -0,0 +1,3 @@
1<p class="logo"><a href="{{ pathto(master_doc) }}">
2 <img class="logo" src="{{ pathto('_static/openerp.png', 1) }}" alt="Logo"/>
3</a></p>
04
=== added directory 'defaults/_themes'
=== added file 'defaults/_themes/.gitignore'
--- defaults/_themes/.gitignore 1970-01-01 00:00:00 +0000
+++ defaults/_themes/.gitignore 2013-01-21 13:47:22 +0000
@@ -0,0 +1,3 @@
1*.pyc
2*.pyo
3.DS_Store
04
=== added file 'defaults/_themes/LICENSE'
--- defaults/_themes/LICENSE 1970-01-01 00:00:00 +0000
+++ defaults/_themes/LICENSE 2013-01-21 13:47:22 +0000
@@ -0,0 +1,37 @@
1Copyright (c) 2010 by Armin Ronacher.
2
3Some rights reserved.
4
5Redistribution and use in source and binary forms of the theme, with or
6without modification, are permitted provided that the following conditions
7are met:
8
9* Redistributions of source code must retain the above copyright
10 notice, this list of conditions and the following disclaimer.
11
12* Redistributions in binary form must reproduce the above
13 copyright notice, this list of conditions and the following
14 disclaimer in the documentation and/or other materials provided
15 with the distribution.
16
17* The names of the contributors may not be used to endorse or
18 promote products derived from this software without specific
19 prior written permission.
20
21We kindly ask you to only use these themes in an unmodified manner just
22for Flask and Flask-related products, not for unrelated projects. If you
23like the visual style and want to use it for your own projects, please
24consider making some larger changes to the themes (such as changing
25font faces, sizes, colors or margins).
26
27THIS THEME IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
28AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
29IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
31LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
32CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
33SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
34INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
35CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
36ARISING IN ANY WAY OUT OF THE USE OF THIS THEME, EVEN IF ADVISED OF THE
37POSSIBILITY OF SUCH DAMAGE.
038
=== added file 'defaults/_themes/README'
--- defaults/_themes/README 1970-01-01 00:00:00 +0000
+++ defaults/_themes/README 2013-01-21 13:47:22 +0000
@@ -0,0 +1,31 @@
1Flask Sphinx Styles
2===================
3
4This repository contains sphinx styles for Flask and Flask related
5projects. To use this style in your Sphinx documentation, follow
6this guide:
7
81. put this folder as _themes into your docs folder. Alternatively
9 you can also use git submodules to check out the contents there.
102. add this to your conf.py:
11
12 sys.path.append(os.path.abspath('_themes'))
13 html_theme_path = ['_themes']
14 html_theme = 'flask'
15
16The following themes exist:
17
18- 'flask' - the standard flask documentation theme for large
19 projects
20- 'flask_small' - small one-page theme. Intended to be used by
21 very small addon libraries for flask.
22
23The following options exist for the flask_small theme:
24
25 [options]
26 index_logo = '' filename of a picture in _static
27 to be used as replacement for the
28 h1 in the index.rst file.
29 index_logo_height = 120px height of the index logo
30 github_fork = '' repository name on github for the
31 "fork me" badge
032
=== added directory 'defaults/_themes/flask'
=== added file 'defaults/_themes/flask/layout.html'
--- defaults/_themes/flask/layout.html 1970-01-01 00:00:00 +0000
+++ defaults/_themes/flask/layout.html 2013-01-21 13:47:22 +0000
@@ -0,0 +1,25 @@
1{%- extends "basic/layout.html" %}
2{%- block extrahead %}
3 {{ super() }}
4 {% if theme_touch_icon %}
5 <link rel="apple-touch-icon" href="{{ pathto('_static/' ~ theme_touch_icon, 1) }}" />
6 {% endif %}
7 <link media="only screen and (max-device-width: 480px)" href="{{
8 pathto('_static/small_flask.css', 1) }}" type= "text/css" rel="stylesheet" />
9{% endblock %}
10{%- block relbar2 %}{% endblock %}
11{% block header %}
12 {{ super() }}
13 {% if pagename == 'index' %}
14 <div class=indexwrapper>
15 {% endif %}
16{% endblock %}
17{%- block footer %}
18 <div class="footer">
19 &copy; Copyright {{ copyright }}
20 Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> and the <a href="https://github.com/mitsuhiko/flask-sphinx-themes">Flask theme</a>.
21 </div>
22 {% if pagename == 'index' %}
23 </div>
24 {% endif %}
25{%- endblock %}
026
=== added file 'defaults/_themes/flask/relations.html'
--- defaults/_themes/flask/relations.html 1970-01-01 00:00:00 +0000
+++ defaults/_themes/flask/relations.html 2013-01-21 13:47:22 +0000
@@ -0,0 +1,19 @@
1<h3>Related Topics</h3>
2<ul>
3 <li><a href="{{ pathto(master_doc) }}">Documentation overview</a><ul>
4 {%- for parent in parents %}
5 <li><a href="{{ parent.link|e }}">{{ parent.title }}</a><ul>
6 {%- endfor %}
7 {%- if prev %}
8 <li>Previous: <a href="{{ prev.link|e }}" title="{{ _('previous chapter')
9 }}">{{ prev.title }}</a></li>
10 {%- endif %}
11 {%- if next %}
12 <li>Next: <a href="{{ next.link|e }}" title="{{ _('next chapter')
13 }}">{{ next.title }}</a></li>
14 {%- endif %}
15 {%- for parent in parents %}
16 </ul></li>
17 {%- endfor %}
18 </ul></li>
19</ul>
020
=== added directory 'defaults/_themes/flask/static'
=== added file 'defaults/_themes/flask/static/flasky.css_t'
--- defaults/_themes/flask/static/flasky.css_t 1970-01-01 00:00:00 +0000
+++ defaults/_themes/flask/static/flasky.css_t 2013-01-21 13:47:22 +0000
@@ -0,0 +1,395 @@
1/*
2 * flasky.css_t
3 * ~~~~~~~~~~~~
4 *
5 * :copyright: Copyright 2010 by Armin Ronacher.
6 * :license: Flask Design License, see LICENSE for details.
7 */
8
9{% set page_width = '1000px' %}
10{% set sidebar_width = '200px' %}
11
12@import url("basic.css");
13
14/* -- page layout ----------------------------------------------------------- */
15
16body {
17 font-family: 'Georgia', serif;
18 font-size: 17px;
19 background-color: white;
20 color: #000;
21 margin: 0;
22 padding: 0;
23}
24
25div.document {
26 width: {{ page_width }};
27 margin: 30px auto 0 auto;
28}
29
30div.documentwrapper {
31 float: left;
32 width: 100%;
33}
34
35div.bodywrapper {
36 margin: 0 0 0 {{ sidebar_width }};
37}
38
39div.sphinxsidebar {
40 width: {{ sidebar_width }};
41}
42
43hr {
44 border: 1px solid #B1B4B6;
45}
46
47div.body {
48 background-color: #ffffff;
49 color: #3E4349;
50 padding: 0 30px 0 30px;
51}
52
53img.floatingflask {
54 padding: 0 0 10px 10px;
55 float: right;
56}
57
58div.footer {
59 width: {{ page_width }};
60 margin: 20px auto 30px auto;
61 font-size: 14px;
62 color: #888;
63 text-align: right;
64}
65
66div.footer a {
67 color: #888;
68}
69
70div.related {
71 display: none;
72}
73
74div.sphinxsidebar a {
75 color: #444;
76 text-decoration: none;
77 border-bottom: 1px dotted #999;
78}
79
80div.sphinxsidebar a:hover {
81 border-bottom: 1px solid #999;
82}
83
84div.sphinxsidebar {
85 font-size: 14px;
86 line-height: 1.5;
87}
88
89div.sphinxsidebarwrapper {
90 padding: 18px 10px;
91}
92
93div.sphinxsidebarwrapper p.logo {
94 padding: 0 0 20px 0;
95 margin: 0;
96 text-align: center;
97}
98
99div.sphinxsidebar h3,
100div.sphinxsidebar h4 {
101 font-family: 'Garamond', 'Georgia', serif;
102 color: #444;
103 font-size: 24px;
104 font-weight: normal;
105 margin: 0 0 5px 0;
106 padding: 0;
107}
108
109div.sphinxsidebar h4 {
110 font-size: 20px;
111}
112
113div.sphinxsidebar h3 a {
114 color: #444;
115}
116
117div.sphinxsidebar p.logo a,
118div.sphinxsidebar h3 a,
119div.sphinxsidebar p.logo a:hover,
120div.sphinxsidebar h3 a:hover {
121 border: none;
122}
123
124div.sphinxsidebar p {
125 color: #555;
126 margin: 10px 0;
127}
128
129div.sphinxsidebar ul {
130 margin: 10px 0;
131 padding: 0;
132 color: #000;
133}
134
135div.sphinxsidebar input {
136 border: 1px solid #ccc;
137 font-family: 'Georgia', serif;
138 font-size: 1em;
139}
140
141/* -- body styles ----------------------------------------------------------- */
142
143a {
144 color: #004B6B;
145 text-decoration: underline;
146}
147
148a:hover {
149 color: #6D4100;
150 text-decoration: underline;
151}
152
153div.body h1,
154div.body h2,
155div.body h3,
156div.body h4,
157div.body h5,
158div.body h6 {
159 font-family: 'Garamond', 'Georgia', serif;
160 font-weight: normal;
161 margin: 30px 0px 10px 0px;
162 padding: 0;
163}
164
165{% if theme_index_logo %}
166div.indexwrapper h1 {
167 text-indent: -999999px;
168 background: url({{ theme_index_logo }}) no-repeat center center;
169 height: {{ theme_index_logo_height }};
170}
171{% endif %}
172
173div.body h1 { margin-top: 0; padding-top: 0; font-size: 240%; }
174div.body h2 { font-size: 180%; }
175div.body h3 { font-size: 150%; }
176div.body h4 { font-size: 130%; }
177div.body h5 { font-size: 100%; }
178div.body h6 { font-size: 100%; }
179
180a.headerlink {
181 color: #ddd;
182 padding: 0 4px;
183 text-decoration: none;
184}
185
186a.headerlink:hover {
187 color: #444;
188 background: #eaeaea;
189}
190
191div.body p, div.body dd, div.body li {
192 line-height: 1.4em;
193}
194
195div.admonition {
196 background: #fafafa;
197 margin: 20px -30px;
198 padding: 10px 30px;
199 border-top: 1px solid #ccc;
200 border-bottom: 1px solid #ccc;
201}
202
203div.admonition tt.xref, div.admonition a tt {
204 border-bottom: 1px solid #fafafa;
205}
206
207dd div.admonition {
208 margin-left: -60px;
209 padding-left: 60px;
210}
211
212div.admonition p.admonition-title {
213 font-family: 'Garamond', 'Georgia', serif;
214 font-weight: normal;
215 font-size: 24px;
216 margin: 0 0 10px 0;
217 padding: 0;
218 line-height: 1;
219}
220
221div.admonition p.last {
222 margin-bottom: 0;
223}
224
225div.highlight {
226 background-color: white;
227}
228
229dt:target, .highlight {
230 background: #FAF3E8;
231}
232
233div.note {
234 background-color: #eee;
235 border: 1px solid #ccc;
236}
237
238div.seealso {
239 background-color: #ffc;
240 border: 1px solid #ff6;
241}
242
243div.topic {
244 background-color: #eee;
245}
246
247p.admonition-title {
248 display: inline;
249}
250
251p.admonition-title:after {
252 content: ":";
253}
254
255pre, tt {
256 font-family: 'Consolas', 'Menlo', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
257 font-size: 0.9em;
258}
259
260img.screenshot {
261}
262
263tt.descname, tt.descclassname {
264 font-size: 0.95em;
265}
266
267tt.descname {
268 padding-right: 0.08em;
269}
270
271img.screenshot {
272 -moz-box-shadow: 2px 2px 4px #eee;
273 -webkit-box-shadow: 2px 2px 4px #eee;
274 box-shadow: 2px 2px 4px #eee;
275}
276
277table.docutils {
278 border: 1px solid #888;
279 -moz-box-shadow: 2px 2px 4px #eee;
280 -webkit-box-shadow: 2px 2px 4px #eee;
281 box-shadow: 2px 2px 4px #eee;
282}
283
284table.docutils td, table.docutils th {
285 border: 1px solid #888;
286 padding: 0.25em 0.7em;
287}
288
289table.field-list, table.footnote {
290 border: none;
291 -moz-box-shadow: none;
292 -webkit-box-shadow: none;
293 box-shadow: none;
294}
295
296table.footnote {
297 margin: 15px 0;
298 width: 100%;
299 border: 1px solid #eee;
300 background: #fdfdfd;
301 font-size: 0.9em;
302}
303
304table.footnote + table.footnote {
305 margin-top: -15px;
306 border-top: none;
307}
308
309table.field-list th {
310 padding: 0 0.8em 0 0;
311}
312
313table.field-list td {
314 padding: 0;
315}
316
317table.footnote td.label {
318 width: 0px;
319 padding: 0.3em 0 0.3em 0.5em;
320}
321
322table.footnote td {
323 padding: 0.3em 0.5em;
324}
325
326dl {
327 margin: 0;
328 padding: 0;
329}
330
331dl dd {
332 margin-left: 30px;
333}
334
335blockquote {
336 margin: 0 0 0 30px;
337 padding: 0;
338}
339
340ul, ol {
341 margin: 10px 0 10px 30px;
342 padding: 0;
343}
344
345pre {
346 background: #eee;
347 padding: 7px 30px;
348 margin: 15px -30px;
349 line-height: 1.3em;
350}
351
352dl pre, blockquote pre, li pre {
353 margin-left: -60px;
354 padding-left: 60px;
355}
356
357dl dl pre {
358 margin-left: -90px;
359 padding-left: 90px;
360}
361
362tt {
363 background-color: #ecf0f3;
364 color: #222;
365 /* padding: 1px 2px; */
366}
367
368tt.xref, a tt {
369 background-color: #FBFBFB;
370 border-bottom: 1px solid white;
371}
372
373a.reference {
374 text-decoration: none;
375 border-bottom: 1px dotted #004B6B;
376}
377
378a.reference:hover {
379 border-bottom: 1px solid #6D4100;
380}
381
382a.footnote-reference {
383 text-decoration: none;
384 font-size: 0.7em;
385 vertical-align: top;
386 border-bottom: 1px dotted #004B6B;
387}
388
389a.footnote-reference:hover {
390 border-bottom: 1px solid #6D4100;
391}
392
393a:hover tt {
394 background: #EEE;
395}
0396
=== added file 'defaults/_themes/flask/static/small_flask.css'
--- defaults/_themes/flask/static/small_flask.css 1970-01-01 00:00:00 +0000
+++ defaults/_themes/flask/static/small_flask.css 2013-01-21 13:47:22 +0000
@@ -0,0 +1,70 @@
1/*
2 * small_flask.css_t
3 * ~~~~~~~~~~~~~~~~~
4 *
5 * :copyright: Copyright 2010 by Armin Ronacher.
6 * :license: Flask Design License, see LICENSE for details.
7 */
8
9body {
10 margin: 0;
11 padding: 20px 30px;
12}
13
14div.documentwrapper {
15 float: none;
16 background: white;
17}
18
19div.sphinxsidebar {
20 display: block;
21 float: none;
22 width: 102.5%;
23 margin: 50px -30px -20px -30px;
24 padding: 10px 20px;
25 background: #333;
26 color: white;
27}
28
29div.sphinxsidebar h3, div.sphinxsidebar h4, div.sphinxsidebar p,
30div.sphinxsidebar h3 a {
31 color: white;
32}
33
34div.sphinxsidebar a {
35 color: #aaa;
36}
37
38div.sphinxsidebar p.logo {
39 display: none;
40}
41
42div.document {
43 width: 100%;
44 margin: 0;
45}
46
47div.related {
48 display: block;
49 margin: 0;
50 padding: 10px 0 20px 0;
51}
52
53div.related ul,
54div.related ul li {
55 margin: 0;
56 padding: 0;
57}
58
59div.footer {
60 display: none;
61}
62
63div.bodywrapper {
64 margin: 0;
65}
66
67div.body {
68 min-height: 0;
69 padding: 0;
70}
071
=== added file 'defaults/_themes/flask/theme.conf'
--- defaults/_themes/flask/theme.conf 1970-01-01 00:00:00 +0000
+++ defaults/_themes/flask/theme.conf 2013-01-21 13:47:22 +0000
@@ -0,0 +1,9 @@
1[theme]
2inherit = basic
3stylesheet = flasky.css
4pygments_style = flask_theme_support.FlaskyStyle
5
6[options]
7index_logo = ''
8index_logo_height = 120px
9touch_icon =
010
=== added directory 'defaults/_themes/flask_small'
=== added file 'defaults/_themes/flask_small/layout.html'
--- defaults/_themes/flask_small/layout.html 1970-01-01 00:00:00 +0000
+++ defaults/_themes/flask_small/layout.html 2013-01-21 13:47:22 +0000
@@ -0,0 +1,22 @@
1{% extends "basic/layout.html" %}
2{% block header %}
3 {{ super() }}
4 {% if pagename == 'index' %}
5 <div class=indexwrapper>
6 {% endif %}
7{% endblock %}
8{% block footer %}
9 {% if pagename == 'index' %}
10 </div>
11 {% endif %}
12{% endblock %}
13{# do not display relbars #}
14{% block relbar1 %}{% endblock %}
15{% block relbar2 %}
16 {% if theme_github_fork %}
17 <a href="http://github.com/{{ theme_github_fork }}"><img style="position: fixed; top: 0; right: 0; border: 0;"
18 src="http://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub" /></a>
19 {% endif %}
20{% endblock %}
21{% block sidebar1 %}{% endblock %}
22{% block sidebar2 %}{% endblock %}
023
=== added directory 'defaults/_themes/flask_small/static'
=== added file 'defaults/_themes/flask_small/static/flasky.css_t'
--- defaults/_themes/flask_small/static/flasky.css_t 1970-01-01 00:00:00 +0000
+++ defaults/_themes/flask_small/static/flasky.css_t 2013-01-21 13:47:22 +0000
@@ -0,0 +1,287 @@
1/*
2 * flasky.css_t
3 * ~~~~~~~~~~~~
4 *
5 * Sphinx stylesheet -- flasky theme based on nature theme.
6 *
7 * :copyright: Copyright 2007-2010 by the Sphinx team, see AUTHORS.
8 * :license: BSD, see LICENSE for details.
9 *
10 */
11
12@import url("basic.css");
13
14/* -- page layout ----------------------------------------------------------- */
15
16body {
17 font-family: 'Georgia', serif;
18 font-size: 17px;
19 color: #000;
20 background: white;
21 margin: 0;
22 padding: 0;
23}
24
25div.documentwrapper {
26 float: left;
27 width: 100%;
28}
29
30div.bodywrapper {
31 margin: 40px auto 0 auto;
32 width: 700px;
33}
34
35hr {
36 border: 1px solid #B1B4B6;
37}
38
39div.body {
40 background-color: #ffffff;
41 color: #3E4349;
42 padding: 0 30px 30px 30px;
43}
44
45img.floatingflask {
46 padding: 0 0 10px 10px;
47 float: right;
48}
49
50div.footer {
51 text-align: right;
52 color: #888;
53 padding: 10px;
54 font-size: 14px;
55 width: 650px;
56 margin: 0 auto 40px auto;
57}
58
59div.footer a {
60 color: #888;
61 text-decoration: underline;
62}
63
64div.related {
65 line-height: 32px;
66 color: #888;
67}
68
69div.related ul {
70 padding: 0 0 0 10px;
71}
72
73div.related a {
74 color: #444;
75}
76
77/* -- body styles ----------------------------------------------------------- */
78
79a {
80 color: #004B6B;
81 text-decoration: underline;
82}
83
84a:hover {
85 color: #6D4100;
86 text-decoration: underline;
87}
88
89div.body {
90 padding-bottom: 40px; /* saved for footer */
91}
92
93div.body h1,
94div.body h2,
95div.body h3,
96div.body h4,
97div.body h5,
98div.body h6 {
99 font-family: 'Garamond', 'Georgia', serif;
100 font-weight: normal;
101 margin: 30px 0px 10px 0px;
102 padding: 0;
103}
104
105{% if theme_index_logo %}
106div.indexwrapper h1 {
107 text-indent: -999999px;
108 background: url({{ theme_index_logo }}) no-repeat center center;
109 height: {{ theme_index_logo_height }};
110}
111{% endif %}
112
113div.body h2 { font-size: 180%; }
114div.body h3 { font-size: 150%; }
115div.body h4 { font-size: 130%; }
116div.body h5 { font-size: 100%; }
117div.body h6 { font-size: 100%; }
118
119a.headerlink {
120 color: white;
121 padding: 0 4px;
122 text-decoration: none;
123}
124
125a.headerlink:hover {
126 color: #444;
127 background: #eaeaea;
128}
129
130div.body p, div.body dd, div.body li {
131 line-height: 1.4em;
132}
133
134div.admonition {
135 background: #fafafa;
136 margin: 20px -30px;
137 padding: 10px 30px;
138 border-top: 1px solid #ccc;
139 border-bottom: 1px solid #ccc;
140}
141
142div.admonition p.admonition-title {
143 font-family: 'Garamond', 'Georgia', serif;
144 font-weight: normal;
145 font-size: 24px;
146 margin: 0 0 10px 0;
147 padding: 0;
148 line-height: 1;
149}
150
151div.admonition p.last {
152 margin-bottom: 0;
153}
154
155div.highlight{
156 background-color: white;
157}
158
159dt:target, .highlight {
160 background: #FAF3E8;
161}
162
163div.note {
164 background-color: #eee;
165 border: 1px solid #ccc;
166}
167
168div.seealso {
169 background-color: #ffc;
170 border: 1px solid #ff6;
171}
172
173div.topic {
174 background-color: #eee;
175}
176
177div.warning {
178 background-color: #ffe4e4;
179 border: 1px solid #f66;
180}
181
182p.admonition-title {
183 display: inline;
184}
185
186p.admonition-title:after {
187 content: ":";
188}
189
190pre, tt {
191 font-family: 'Consolas', 'Menlo', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
192 font-size: 0.85em;
193}
194
195img.screenshot {
196}
197
198tt.descname, tt.descclassname {
199 font-size: 0.95em;
200}
201
202tt.descname {
203 padding-right: 0.08em;
204}
205
206img.screenshot {
207 -moz-box-shadow: 2px 2px 4px #eee;
208 -webkit-box-shadow: 2px 2px 4px #eee;
209 box-shadow: 2px 2px 4px #eee;
210}
211
212table.docutils {
213 border: 1px solid #888;
214 -moz-box-shadow: 2px 2px 4px #eee;
215 -webkit-box-shadow: 2px 2px 4px #eee;
216 box-shadow: 2px 2px 4px #eee;
217}
218
219table.docutils td, table.docutils th {
220 border: 1px solid #888;
221 padding: 0.25em 0.7em;
222}
223
224table.field-list, table.footnote {
225 border: none;
226 -moz-box-shadow: none;
227 -webkit-box-shadow: none;
228 box-shadow: none;
229}
230
231table.footnote {
232 margin: 15px 0;
233 width: 100%;
234 border: 1px solid #eee;
235}
236
237table.field-list th {
238 padding: 0 0.8em 0 0;
239}
240
241table.field-list td {
242 padding: 0;
243}
244
245table.footnote td {
246 padding: 0.5em;
247}
248
249dl {
250 margin: 0;
251 padding: 0;
252}
253
254dl dd {
255 margin-left: 30px;
256}
257
258pre {
259 padding: 0;
260 margin: 15px -30px;
261 padding: 8px;
262 line-height: 1.3em;
263 padding: 7px 30px;
264 background: #eee;
265 border-radius: 2px;
266 -moz-border-radius: 2px;
267 -webkit-border-radius: 2px;
268}
269
270dl pre {
271 margin-left: -60px;
272 padding-left: 60px;
273}
274
275tt {
276 background-color: #ecf0f3;
277 color: #222;
278 /* padding: 1px 2px; */
279}
280
281tt.xref, a tt {
282 background-color: #FBFBFB;
283}
284
285a:hover tt {
286 background: #EEE;
287}
0288
=== added file 'defaults/_themes/flask_small/theme.conf'
--- defaults/_themes/flask_small/theme.conf 1970-01-01 00:00:00 +0000
+++ defaults/_themes/flask_small/theme.conf 2013-01-21 13:47:22 +0000
@@ -0,0 +1,10 @@
1[theme]
2inherit = basic
3stylesheet = flasky.css
4nosidebar = true
5pygments_style = flask_theme_support.FlaskyStyle
6
7[options]
8index_logo = ''
9index_logo_height = 120px
10github_fork = ''
011
=== added file 'defaults/_themes/flask_theme_support.py'
--- defaults/_themes/flask_theme_support.py 1970-01-01 00:00:00 +0000
+++ defaults/_themes/flask_theme_support.py 2013-01-21 13:47:22 +0000
@@ -0,0 +1,86 @@
1# flasky extensions. flasky pygments style based on tango style
2from pygments.style import Style
3from pygments.token import Keyword, Name, Comment, String, Error, \
4 Number, Operator, Generic, Whitespace, Punctuation, Other, Literal
5
6
7class FlaskyStyle(Style):
8 background_color = "#f8f8f8"
9 default_style = ""
10
11 styles = {
12 # No corresponding class for the following:
13 #Text: "", # class: ''
14 Whitespace: "underline #f8f8f8", # class: 'w'
15 Error: "#a40000 border:#ef2929", # class: 'err'
16 Other: "#000000", # class 'x'
17
18 Comment: "italic #8f5902", # class: 'c'
19 Comment.Preproc: "noitalic", # class: 'cp'
20
21 Keyword: "bold #004461", # class: 'k'
22 Keyword.Constant: "bold #004461", # class: 'kc'
23 Keyword.Declaration: "bold #004461", # class: 'kd'
24 Keyword.Namespace: "bold #004461", # class: 'kn'
25 Keyword.Pseudo: "bold #004461", # class: 'kp'
26 Keyword.Reserved: "bold #004461", # class: 'kr'
27 Keyword.Type: "bold #004461", # class: 'kt'
28
29 Operator: "#582800", # class: 'o'
30 Operator.Word: "bold #004461", # class: 'ow' - like keywords
31
32 Punctuation: "bold #000000", # class: 'p'
33
34 # because special names such as Name.Class, Name.Function, etc.
35 # are not recognized as such later in the parsing, we choose them
36 # to look the same as ordinary variables.
37 Name: "#000000", # class: 'n'
38 Name.Attribute: "#c4a000", # class: 'na' - to be revised
39 Name.Builtin: "#004461", # class: 'nb'
40 Name.Builtin.Pseudo: "#3465a4", # class: 'bp'
41 Name.Class: "#000000", # class: 'nc' - to be revised
42 Name.Constant: "#000000", # class: 'no' - to be revised
43 Name.Decorator: "#888", # class: 'nd' - to be revised
44 Name.Entity: "#ce5c00", # class: 'ni'
45 Name.Exception: "bold #cc0000", # class: 'ne'
46 Name.Function: "#000000", # class: 'nf'
47 Name.Property: "#000000", # class: 'py'
48 Name.Label: "#f57900", # class: 'nl'
49 Name.Namespace: "#000000", # class: 'nn' - to be revised
50 Name.Other: "#000000", # class: 'nx'
51 Name.Tag: "bold #004461", # class: 'nt' - like a keyword
52 Name.Variable: "#000000", # class: 'nv' - to be revised
53 Name.Variable.Class: "#000000", # class: 'vc' - to be revised
54 Name.Variable.Global: "#000000", # class: 'vg' - to be revised
55 Name.Variable.Instance: "#000000", # class: 'vi' - to be revised
56
57 Number: "#990000", # class: 'm'
58
59 Literal: "#000000", # class: 'l'
60 Literal.Date: "#000000", # class: 'ld'
61
62 String: "#4e9a06", # class: 's'
63 String.Backtick: "#4e9a06", # class: 'sb'
64 String.Char: "#4e9a06", # class: 'sc'
65 String.Doc: "italic #8f5902", # class: 'sd' - like a comment
66 String.Double: "#4e9a06", # class: 's2'
67 String.Escape: "#4e9a06", # class: 'se'
68 String.Heredoc: "#4e9a06", # class: 'sh'
69 String.Interpol: "#4e9a06", # class: 'si'
70 String.Other: "#4e9a06", # class: 'sx'
71 String.Regex: "#4e9a06", # class: 'sr'
72 String.Single: "#4e9a06", # class: 's1'
73 String.Symbol: "#4e9a06", # class: 'ss'
74
75 Generic: "#000000", # class: 'g'
76 Generic.Deleted: "#a40000", # class: 'gd'
77 Generic.Emph: "italic #000000", # class: 'ge'
78 Generic.Error: "#ef2929", # class: 'gr'
79 Generic.Heading: "bold #000080", # class: 'gh'
80 Generic.Inserted: "#00A000", # class: 'gi'
81 Generic.Output: "#888", # class: 'go'
82 Generic.Prompt: "#745334", # class: 'gp'
83 Generic.Strong: "bold #000000", # class: 'gs'
84 Generic.Subheading: "bold #800080", # class: 'gu'
85 Generic.Traceback: "bold #a40000", # class: 'gt'
86 }
087
=== added file 'defaults/conf.py'
--- defaults/conf.py 1970-01-01 00:00:00 +0000
+++ defaults/conf.py 2013-01-21 13:47:22 +0000
@@ -0,0 +1,177 @@
1# -*- coding: utf-8 -*-
2#
3# Documentation Template documentation build configuration file, created by
4# sphinx-quickstart on Fri Jan 18 15:08:56 2013.
5#
6# This file is execfile()d with the current directory set to its containing dir.
7#
8# Note that not all possible configuration values are present in this
9# autogenerated file.
10#
11# All configuration values have a default; values that are commented out
12# serve to show the default.
13
14import sys, os
15
16# If extensions (or modules to document with autodoc) are in another directory,
17# add these directories to sys.path here. If the directory is relative to the
18# documentation root, use os.path.abspath to make it absolute, like shown here.
19#sys.path.insert(0, os.path.abspath('.'))
20
21# -- General configuration -----------------------------------------------------
22
23# If your documentation needs a minimal Sphinx version, state it here.
24#needs_sphinx = '1.0'
25
26# Add any Sphinx extension module names here, as strings. They can be extensions
27# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
28extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.viewcode']
29
30# Add any paths that contain templates here, relative to this directory.
31templates_path = ['_templates']
32
33# The suffix of source filenames.
34source_suffix = '.rst'
35
36# The encoding of source files.
37#source_encoding = 'utf-8-sig'
38
39# The master toctree document.
40master_doc = 'index'
41
42# General information about the project.
43#project = u'Documentation Template'
44#copyright = u'2013, OpenERP S.A.'
45
46# The version info for the project you're documenting, acts as replacement for
47# |version| and |release|, also used in various other places throughout the
48# built documents.
49#
50# The short X.Y version.
51#version = '0.0'
52# The full version, including alpha/beta/rc tags.
53#release = '0.0'
54
55# The language for content autogenerated by Sphinx. Refer to documentation
56# for a list of supported languages.
57#language = None
58
59# There are two options for replacing |today|: either, you set today to some
60# non-false value, then it is used:
61#today = ''
62# Else, today_fmt is used as the format for a strftime call.
63#today_fmt = '%B %d, %Y'
64
65# List of patterns, relative to source directory, that match files and
66# directories to ignore when looking for source files.
67exclude_patterns = ['_build']
68
69# The reST default role (used for this markup: `text`) to use for all documents.
70#default_role = None
71
72# If true, '()' will be appended to :func: etc. cross-reference text.
73#add_function_parentheses = True
74
75# If true, the current module name will be prepended to all description
76# unit titles (such as .. function::).
77#add_module_names = True
78
79# If true, sectionauthor and moduleauthor directives will be shown in the
80# output. They are ignored by default.
81#show_authors = False
82
83# The name of the Pygments (syntax highlighting) style to use.
84pygments_style = 'sphinx'
85
86# A list of ignored prefixes for module index sorting.
87#modindex_common_prefix = []
88
89
90# -- Options for HTML output ---------------------------------------------------
91
92# The theme to use for HTML and HTML Help pages. See the documentation for
93# a list of builtin themes.
94html_theme = 'flask'
95
96# Theme options are theme-specific and customize the look and feel of a theme
97# further. For a list of options available for each theme, see the
98# documentation.
99html_theme_options = {
100 "nosidebar": False,
101}
102
103# Add any paths that contain custom themes here, relative to this directory.
104html_theme_path = ['_themes']
105
106# The name for this set of Sphinx documents. If None, it defaults to
107# "<project> v<release> documentation".
108#html_title = None
109
110# A shorter title for the navigation bar. Default is the same as html_title.
111#html_short_title = None
112
113# The name of an image file (relative to this directory) to place at the top
114# of the sidebar.
115#html_logo = None
116
117# The name of an image file (within the static path) to use as favicon of the
118# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
119# pixels large.
120#html_favicon = None
121
122# Add any paths that contain custom static files (such as style sheets) here,
123# relative to this directory. They are copied after the builtin static files,
124# so a file named "default.css" will overwrite the builtin "default.css".
125html_static_path = ['_static']
126
127# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
128# using the given strftime format.
129#html_last_updated_fmt = '%b %d, %Y'
130
131# If true, SmartyPants will be used to convert quotes and dashes to
132# typographically correct entities.
133#html_use_smartypants = True
134
135# Custom sidebar templates, maps document names to template names.
136html_sidebars = {
137 'index': ['sidebarintro.html', 'sourcelink.html', 'searchbox.html'],
138 '**': ['sidebarlogo.html', 'localtoc.html', 'relations.html',
139 'sourcelink.html', 'searchbox.html']
140}
141
142# Additional templates that should be rendered to pages, maps page names to
143# template names.
144#html_additional_pages = {}
145
146# If false, no module index is generated.
147#html_domain_indices = True
148
149# If false, no index is generated.
150#html_use_index = True
151
152# If true, the index is split into individual pages for each letter.
153#html_split_index = False
154
155# If true, links to the reST sources are added to the pages.
156#html_show_sourcelink = True
157
158# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
159#html_show_sphinx = True
160
161# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
162#html_show_copyright = True
163
164# If true, an OpenSearch description file will be output, and all pages will
165# contain a <link> tag referring to it. The value of this option must be the
166# base URL from which the finished HTML is served.
167#html_use_opensearch = ''
168
169# This is the file name suffix for HTML files (e.g. ".xhtml").
170#html_file_suffix = None
171
172# Example configuration for intersphinx: refer to the Python standard library.
173intersphinx_mapping = {
174 'http://docs.python.org/': None,
175 'openerpserver': ('http://doc.openerp.com/trunk/developers/server', None),
176 'openerpweb': ('http://doc.openerp.com/trunk/developers/web', None),
177}
0178
=== removed directory 'developers'
=== removed file 'developers/Makefile'
--- developers/Makefile 2012-03-05 11:41:17 +0000
+++ developers/Makefile 1970-01-01 00:00:00 +0000
@@ -1,153 +0,0 @@
1# Makefile for Sphinx documentation
2#
3
4# You can set these variables from the command line.
5SPHINXOPTS = -q
6SPHINXBUILD = sphinx-build
7PAPER =
8BUILDDIR = _build
9
10# Internal variables.
11PAPEROPT_a4 = -D latex_paper_size=a4
12PAPEROPT_letter = -D latex_paper_size=letter
13ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
14# the i18n builder cannot share the environment and doctrees with the others
15I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
16
17.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
18
19help:
20 @echo "Please use \`make <target>' where <target> is one of"
21 @echo " html to make standalone HTML files"
22 @echo " dirhtml to make HTML files named index.html in directories"
23 @echo " singlehtml to make a single large HTML file"
24 @echo " pickle to make pickle files"
25 @echo " json to make JSON files"
26 @echo " htmlhelp to make HTML files and a HTML help project"
27 @echo " qthelp to make HTML files and a qthelp project"
28 @echo " devhelp to make HTML files and a Devhelp project"
29 @echo " epub to make an epub"
30 @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
31 @echo " latexpdf to make LaTeX files and run them through pdflatex"
32 @echo " text to make text files"
33 @echo " man to make manual pages"
34 @echo " texinfo to make Texinfo files"
35 @echo " info to make Texinfo files and run them through makeinfo"
36 @echo " gettext to make PO message catalogs"
37 @echo " changes to make an overview of all changed/added/deprecated items"
38 @echo " linkcheck to check all external links for integrity"
39 @echo " doctest to run all doctests embedded in the documentation (if enabled)"
40
41clean:
42 -rm -rf $(BUILDDIR)/*
43
44html:
45 $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
46 @echo
47 @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
48
49dirhtml:
50 $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
51 @echo
52 @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
53
54singlehtml:
55 $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
56 @echo
57 @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
58
59pickle:
60 $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
61 @echo
62 @echo "Build finished; now you can process the pickle files."
63
64json:
65 $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
66 @echo
67 @echo "Build finished; now you can process the JSON files."
68
69htmlhelp:
70 $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
71 @echo
72 @echo "Build finished; now you can run HTML Help Workshop with the" \
73 ".hhp project file in $(BUILDDIR)/htmlhelp."
74
75qthelp:
76 $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
77 @echo
78 @echo "Build finished; now you can run "qcollectiongenerator" with the" \
79 ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
80 @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/OpenERPTechnicalDocumentation.qhcp"
81 @echo "To view the help file:"
82 @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/OpenERPTechnicalDocumentation.qhc"
83
84devhelp:
85 $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
86 @echo
87 @echo "Build finished."
88 @echo "To view the help file:"
89 @echo "# mkdir -p $$HOME/.local/share/devhelp/OpenERPTechnicalDocumentation"
90 @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/OpenERPTechnicalDocumentation"
91 @echo "# devhelp"
92
93epub:
94 $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
95 @echo
96 @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
97
98latex:
99 $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
100 @echo
101 @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
102 @echo "Run \`make' in that directory to run these through (pdf)latex" \
103 "(use \`make latexpdf' here to do that automatically)."
104
105latexpdf:
106 $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
107 @echo "Running LaTeX files through pdflatex..."
108 $(MAKE) -C $(BUILDDIR)/latex all-pdf
109 @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
110
111text:
112 $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
113 @echo
114 @echo "Build finished. The text files are in $(BUILDDIR)/text."
115
116man:
117 $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
118 @echo
119 @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
120
121texinfo:
122 $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
123 @echo
124 @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
125 @echo "Run \`make' in that directory to run these through makeinfo" \
126 "(use \`make info' here to do that automatically)."
127
128info:
129 $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
130 @echo "Running Texinfo files through makeinfo..."
131 make -C $(BUILDDIR)/texinfo info
132 @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
133
134gettext:
135 $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
136 @echo
137 @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
138
139changes:
140 $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
141 @echo
142 @echo "The overview file is in $(BUILDDIR)/changes."
143
144linkcheck:
145 $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
146 @echo
147 @echo "Link check complete; look for any errors in the above output " \
148 "or in $(BUILDDIR)/linkcheck/output.txt."
149
150doctest:
151 $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
152 @echo "Testing of doctests in the sources finished, look at the " \
153 "results in $(BUILDDIR)/doctest/output.txt."
1540
=== removed directory 'developers/_static'
=== removed file 'developers/_static/openerp.png'
155Binary files developers/_static/openerp.png 2012-02-17 16:55:19 +0000 and developers/_static/openerp.png 1970-01-01 00:00:00 +0000 differ1Binary files developers/_static/openerp.png 2012-02-17 16:55:19 +0000 and developers/_static/openerp.png 1970-01-01 00:00:00 +0000 differ
=== removed directory 'developers/_templates'
=== removed file 'developers/_templates/sidebarintro.html'
--- developers/_templates/sidebarintro.html 2012-10-22 09:38:20 +0000
+++ developers/_templates/sidebarintro.html 1970-01-01 00:00:00 +0000
@@ -1,27 +0,0 @@
1<h3>About</h3>
2
3<p>
4
5OpenERP is an extensive open source suite of business applications. It is built
6on a flexible development framework written in Python. The framework uses a
7three-tier architecture. It provides an ORM on top of PostgreSQL, a modular
8application server, and a feature-packed web client.
9
10</p>
11
12<h3>Other Docs</h3>
13<ul>
14 <li><a href="http://doc.openerp.com/trunk/users">Users doc</a></li>
15 <li>
16 <a href="http://doc.openerp.com/v5.0">5.0</a>
17 <a href="http://doc.openerp.com/v6.0">6.0</a>
18 <a href="http://doc.openerp.com/v6.1">6.1</a>
19 (old versions)
20 </li>
21</ul>
22
23<h3>Useful Links</h3>
24<ul>
25 <li><a href="http://www.openerp.com/">OpenERP.com</a></li>
26 <li><a href="http://python.org/">Python.org</a></li>
27</ul>
280
=== removed file 'developers/_templates/sidebarlogo.html'
--- developers/_templates/sidebarlogo.html 2012-02-17 16:55:19 +0000
+++ developers/_templates/sidebarlogo.html 1970-01-01 00:00:00 +0000
@@ -1,3 +0,0 @@
1<p class="logo"><a href="{{ pathto(master_doc) }}">
2 <img class="logo" src="{{ pathto('_static/openerp.png', 1) }}" alt="Logo"/>
3</a></p>
40
=== removed directory 'developers/_themes'
=== removed file 'developers/_themes/.gitignore'
--- developers/_themes/.gitignore 2012-02-17 16:09:56 +0000
+++ developers/_themes/.gitignore 1970-01-01 00:00:00 +0000
@@ -1,3 +0,0 @@
1*.pyc
2*.pyo
3.DS_Store
40
=== removed file 'developers/_themes/LICENSE'
--- developers/_themes/LICENSE 2012-02-17 16:09:56 +0000
+++ developers/_themes/LICENSE 1970-01-01 00:00:00 +0000
@@ -1,37 +0,0 @@
1Copyright (c) 2010 by Armin Ronacher.
2
3Some rights reserved.
4
5Redistribution and use in source and binary forms of the theme, with or
6without modification, are permitted provided that the following conditions
7are met:
8
9* Redistributions of source code must retain the above copyright
10 notice, this list of conditions and the following disclaimer.
11
12* Redistributions in binary form must reproduce the above
13 copyright notice, this list of conditions and the following
14 disclaimer in the documentation and/or other materials provided
15 with the distribution.
16
17* The names of the contributors may not be used to endorse or
18 promote products derived from this software without specific
19 prior written permission.
20
21We kindly ask you to only use these themes in an unmodified manner just
22for Flask and Flask-related products, not for unrelated projects. If you
23like the visual style and want to use it for your own projects, please
24consider making some larger changes to the themes (such as changing
25font faces, sizes, colors or margins).
26
27THIS THEME IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
28AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
29IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
31LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
32CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
33SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
34INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
35CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
36ARISING IN ANY WAY OUT OF THE USE OF THIS THEME, EVEN IF ADVISED OF THE
37POSSIBILITY OF SUCH DAMAGE.
380
=== removed file 'developers/_themes/README'
--- developers/_themes/README 2012-02-17 16:09:56 +0000
+++ developers/_themes/README 1970-01-01 00:00:00 +0000
@@ -1,31 +0,0 @@
1Flask Sphinx Styles
2===================
3
4This repository contains sphinx styles for Flask and Flask related
5projects. To use this style in your Sphinx documentation, follow
6this guide:
7
81. put this folder as _themes into your docs folder. Alternatively
9 you can also use git submodules to check out the contents there.
102. add this to your conf.py:
11
12 sys.path.append(os.path.abspath('_themes'))
13 html_theme_path = ['_themes']
14 html_theme = 'flask'
15
16The following themes exist:
17
18- 'flask' - the standard flask documentation theme for large
19 projects
20- 'flask_small' - small one-page theme. Intended to be used by
21 very small addon libraries for flask.
22
23The following options exist for the flask_small theme:
24
25 [options]
26 index_logo = '' filename of a picture in _static
27 to be used as replacement for the
28 h1 in the index.rst file.
29 index_logo_height = 120px height of the index logo
30 github_fork = '' repository name on github for the
31 "fork me" badge
320
=== removed directory 'developers/_themes/flask'
=== removed file 'developers/_themes/flask/layout.html'
--- developers/_themes/flask/layout.html 2012-02-17 16:55:19 +0000
+++ developers/_themes/flask/layout.html 1970-01-01 00:00:00 +0000
@@ -1,25 +0,0 @@
1{%- extends "basic/layout.html" %}
2{%- block extrahead %}
3 {{ super() }}
4 {% if theme_touch_icon %}
5 <link rel="apple-touch-icon" href="{{ pathto('_static/' ~ theme_touch_icon, 1) }}" />
6 {% endif %}
7 <link media="only screen and (max-device-width: 480px)" href="{{
8 pathto('_static/small_flask.css', 1) }}" type= "text/css" rel="stylesheet" />
9{% endblock %}
10{%- block relbar2 %}{% endblock %}
11{% block header %}
12 {{ super() }}
13 {% if pagename == 'index' %}
14 <div class=indexwrapper>
15 {% endif %}
16{% endblock %}
17{%- block footer %}
18 <div class="footer">
19 &copy; Copyright {{ copyright }}
20 Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> and the <a href="https://github.com/mitsuhiko/flask-sphinx-themes">Flask theme</a>.
21 </div>
22 {% if pagename == 'index' %}
23 </div>
24 {% endif %}
25{%- endblock %}
260
=== removed file 'developers/_themes/flask/relations.html'
--- developers/_themes/flask/relations.html 2012-02-17 16:09:56 +0000
+++ developers/_themes/flask/relations.html 1970-01-01 00:00:00 +0000
@@ -1,19 +0,0 @@
1<h3>Related Topics</h3>
2<ul>
3 <li><a href="{{ pathto(master_doc) }}">Documentation overview</a><ul>
4 {%- for parent in parents %}
5 <li><a href="{{ parent.link|e }}">{{ parent.title }}</a><ul>
6 {%- endfor %}
7 {%- if prev %}
8 <li>Previous: <a href="{{ prev.link|e }}" title="{{ _('previous chapter')
9 }}">{{ prev.title }}</a></li>
10 {%- endif %}
11 {%- if next %}
12 <li>Next: <a href="{{ next.link|e }}" title="{{ _('next chapter')
13 }}">{{ next.title }}</a></li>
14 {%- endif %}
15 {%- for parent in parents %}
16 </ul></li>
17 {%- endfor %}
18 </ul></li>
19</ul>
200
=== removed directory 'developers/_themes/flask/static'
=== removed file 'developers/_themes/flask/static/flasky.css_t'
--- developers/_themes/flask/static/flasky.css_t 2012-02-18 20:28:07 +0000
+++ developers/_themes/flask/static/flasky.css_t 1970-01-01 00:00:00 +0000
@@ -1,395 +0,0 @@
1/*
2 * flasky.css_t
3 * ~~~~~~~~~~~~
4 *
5 * :copyright: Copyright 2010 by Armin Ronacher.
6 * :license: Flask Design License, see LICENSE for details.
7 */
8
9{% set page_width = '1000px' %}
10{% set sidebar_width = '200px' %}
11
12@import url("basic.css");
13
14/* -- page layout ----------------------------------------------------------- */
15
16body {
17 font-family: 'Georgia', serif;
18 font-size: 17px;
19 background-color: white;
20 color: #000;
21 margin: 0;
22 padding: 0;
23}
24
25div.document {
26 width: {{ page_width }};
27 margin: 30px auto 0 auto;
28}
29
30div.documentwrapper {
31 float: left;
32 width: 100%;
33}
34
35div.bodywrapper {
36 margin: 0 0 0 {{ sidebar_width }};
37}
38
39div.sphinxsidebar {
40 width: {{ sidebar_width }};
41}
42
43hr {
44 border: 1px solid #B1B4B6;
45}
46
47div.body {
48 background-color: #ffffff;
49 color: #3E4349;
50 padding: 0 30px 0 30px;
51}
52
53img.floatingflask {
54 padding: 0 0 10px 10px;
55 float: right;
56}
57
58div.footer {
59 width: {{ page_width }};
60 margin: 20px auto 30px auto;
61 font-size: 14px;
62 color: #888;
63 text-align: right;
64}
65
66div.footer a {
67 color: #888;
68}
69
70div.related {
71 display: none;
72}
73
74div.sphinxsidebar a {
75 color: #444;
76 text-decoration: none;
77 border-bottom: 1px dotted #999;
78}
79
80div.sphinxsidebar a:hover {
81 border-bottom: 1px solid #999;
82}
83
84div.sphinxsidebar {
85 font-size: 14px;
86 line-height: 1.5;
87}
88
89div.sphinxsidebarwrapper {
90 padding: 18px 10px;
91}
92
93div.sphinxsidebarwrapper p.logo {
94 padding: 0 0 20px 0;
95 margin: 0;
96 text-align: center;
97}
98
99div.sphinxsidebar h3,
100div.sphinxsidebar h4 {
101 font-family: 'Garamond', 'Georgia', serif;
102 color: #444;
103 font-size: 24px;
104 font-weight: normal;
105 margin: 0 0 5px 0;
106 padding: 0;
107}
108
109div.sphinxsidebar h4 {
110 font-size: 20px;
111}
112
113div.sphinxsidebar h3 a {
114 color: #444;
115}
116
117div.sphinxsidebar p.logo a,
118div.sphinxsidebar h3 a,
119div.sphinxsidebar p.logo a:hover,
120div.sphinxsidebar h3 a:hover {
121 border: none;
122}
123
124div.sphinxsidebar p {
125 color: #555;
126 margin: 10px 0;
127}
128
129div.sphinxsidebar ul {
130 margin: 10px 0;
131 padding: 0;
132 color: #000;
133}
134
135div.sphinxsidebar input {
136 border: 1px solid #ccc;
137 font-family: 'Georgia', serif;
138 font-size: 1em;
139}
140
141/* -- body styles ----------------------------------------------------------- */
142
143a {
144 color: #004B6B;
145 text-decoration: underline;
146}
147
148a:hover {
149 color: #6D4100;
150 text-decoration: underline;
151}
152
153div.body h1,
154div.body h2,
155div.body h3,
156div.body h4,
157div.body h5,
158div.body h6 {
159 font-family: 'Garamond', 'Georgia', serif;
160 font-weight: normal;
161 margin: 30px 0px 10px 0px;
162 padding: 0;
163}
164
165{% if theme_index_logo %}
166div.indexwrapper h1 {
167 text-indent: -999999px;
168 background: url({{ theme_index_logo }}) no-repeat center center;
169 height: {{ theme_index_logo_height }};
170}
171{% endif %}
172
173div.body h1 { margin-top: 0; padding-top: 0; font-size: 240%; }
174div.body h2 { font-size: 180%; }
175div.body h3 { font-size: 150%; }
176div.body h4 { font-size: 130%; }
177div.body h5 { font-size: 100%; }
178div.body h6 { font-size: 100%; }
179
180a.headerlink {
181 color: #ddd;
182 padding: 0 4px;
183 text-decoration: none;
184}
185
186a.headerlink:hover {
187 color: #444;
188 background: #eaeaea;
189}
190
191div.body p, div.body dd, div.body li {
192 line-height: 1.4em;
193}
194
195div.admonition {
196 background: #fafafa;
197 margin: 20px -30px;
198 padding: 10px 30px;
199 border-top: 1px solid #ccc;
200 border-bottom: 1px solid #ccc;
201}
202
203div.admonition tt.xref, div.admonition a tt {
204 border-bottom: 1px solid #fafafa;
205}
206
207dd div.admonition {
208 margin-left: -60px;
209 padding-left: 60px;
210}
211
212div.admonition p.admonition-title {
213 font-family: 'Garamond', 'Georgia', serif;
214 font-weight: normal;
215 font-size: 24px;
216 margin: 0 0 10px 0;
217 padding: 0;
218 line-height: 1;
219}
220
221div.admonition p.last {
222 margin-bottom: 0;
223}
224
225div.highlight {
226 background-color: white;
227}
228
229dt:target, .highlight {
230 background: #FAF3E8;
231}
232
233div.note {
234 background-color: #eee;
235 border: 1px solid #ccc;
236}
237
238div.seealso {
239 background-color: #ffc;
240 border: 1px solid #ff6;
241}
242
243div.topic {
244 background-color: #eee;
245}
246
247p.admonition-title {
248 display: inline;
249}
250
251p.admonition-title:after {
252 content: ":";
253}
254
255pre, tt {
256 font-family: 'Consolas', 'Menlo', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
257 font-size: 0.9em;
258}
259
260img.screenshot {
261}
262
263tt.descname, tt.descclassname {
264 font-size: 0.95em;
265}
266
267tt.descname {
268 padding-right: 0.08em;
269}
270
271img.screenshot {
272 -moz-box-shadow: 2px 2px 4px #eee;
273 -webkit-box-shadow: 2px 2px 4px #eee;
274 box-shadow: 2px 2px 4px #eee;
275}
276
277table.docutils {
278 border: 1px solid #888;
279 -moz-box-shadow: 2px 2px 4px #eee;
280 -webkit-box-shadow: 2px 2px 4px #eee;
281 box-shadow: 2px 2px 4px #eee;
282}
283
284table.docutils td, table.docutils th {
285 border: 1px solid #888;
286 padding: 0.25em 0.7em;
287}
288
289table.field-list, table.footnote {
290 border: none;
291 -moz-box-shadow: none;
292 -webkit-box-shadow: none;
293 box-shadow: none;
294}
295
296table.footnote {
297 margin: 15px 0;
298 width: 100%;
299 border: 1px solid #eee;
300 background: #fdfdfd;
301 font-size: 0.9em;
302}
303
304table.footnote + table.footnote {
305 margin-top: -15px;
306 border-top: none;
307}
308
309table.field-list th {
310 padding: 0 0.8em 0 0;
311}
312
313table.field-list td {
314 padding: 0;
315}
316
317table.footnote td.label {
318 width: 0px;
319 padding: 0.3em 0 0.3em 0.5em;
320}
321
322table.footnote td {
323 padding: 0.3em 0.5em;
324}
325
326dl {
327 margin: 0;
328 padding: 0;
329}
330
331dl dd {
332 margin-left: 30px;
333}
334
335blockquote {
336 margin: 0 0 0 30px;
337 padding: 0;
338}
339
340ul, ol {
341 margin: 10px 0 10px 30px;
342 padding: 0;
343}
344
345pre {
346 background: #eee;
347 padding: 7px 30px;
348 margin: 15px -30px;
349 line-height: 1.3em;
350}
351
352dl pre, blockquote pre, li pre {
353 margin-left: -60px;
354 padding-left: 60px;
355}
356
357dl dl pre {
358 margin-left: -90px;
359 padding-left: 90px;
360}
361
362tt {
363 background-color: #ecf0f3;
364 color: #222;
365 /* padding: 1px 2px; */
366}
367
368tt.xref, a tt {
369 background-color: #FBFBFB;
370 border-bottom: 1px solid white;
371}
372
373a.reference {
374 text-decoration: none;
375 border-bottom: 1px dotted #004B6B;
376}
377
378a.reference:hover {
379 border-bottom: 1px solid #6D4100;
380}
381
382a.footnote-reference {
383 text-decoration: none;
384 font-size: 0.7em;
385 vertical-align: top;
386 border-bottom: 1px dotted #004B6B;
387}
388
389a.footnote-reference:hover {
390 border-bottom: 1px solid #6D4100;
391}
392
393a:hover tt {
394 background: #EEE;
395}
3960
=== removed file 'developers/_themes/flask/static/small_flask.css'
--- developers/_themes/flask/static/small_flask.css 2012-02-17 16:09:56 +0000
+++ developers/_themes/flask/static/small_flask.css 1970-01-01 00:00:00 +0000
@@ -1,70 +0,0 @@
1/*
2 * small_flask.css_t
3 * ~~~~~~~~~~~~~~~~~
4 *
5 * :copyright: Copyright 2010 by Armin Ronacher.
6 * :license: Flask Design License, see LICENSE for details.
7 */
8
9body {
10 margin: 0;
11 padding: 20px 30px;
12}
13
14div.documentwrapper {
15 float: none;
16 background: white;
17}
18
19div.sphinxsidebar {
20 display: block;
21 float: none;
22 width: 102.5%;
23 margin: 50px -30px -20px -30px;
24 padding: 10px 20px;
25 background: #333;
26 color: white;
27}
28
29div.sphinxsidebar h3, div.sphinxsidebar h4, div.sphinxsidebar p,
30div.sphinxsidebar h3 a {
31 color: white;
32}
33
34div.sphinxsidebar a {
35 color: #aaa;
36}
37
38div.sphinxsidebar p.logo {
39 display: none;
40}
41
42div.document {
43 width: 100%;
44 margin: 0;
45}
46
47div.related {
48 display: block;
49 margin: 0;
50 padding: 10px 0 20px 0;
51}
52
53div.related ul,
54div.related ul li {
55 margin: 0;
56 padding: 0;
57}
58
59div.footer {
60 display: none;
61}
62
63div.bodywrapper {
64 margin: 0;
65}
66
67div.body {
68 min-height: 0;
69 padding: 0;
70}
710
=== removed file 'developers/_themes/flask/theme.conf'
--- developers/_themes/flask/theme.conf 2012-02-17 16:09:56 +0000
+++ developers/_themes/flask/theme.conf 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
1[theme]
2inherit = basic
3stylesheet = flasky.css
4pygments_style = flask_theme_support.FlaskyStyle
5
6[options]
7index_logo = ''
8index_logo_height = 120px
9touch_icon =
100
=== removed directory 'developers/_themes/flask_small'
=== removed file 'developers/_themes/flask_small/layout.html'
--- developers/_themes/flask_small/layout.html 2012-02-17 16:09:56 +0000
+++ developers/_themes/flask_small/layout.html 1970-01-01 00:00:00 +0000
@@ -1,22 +0,0 @@
1{% extends "basic/layout.html" %}
2{% block header %}
3 {{ super() }}
4 {% if pagename == 'index' %}
5 <div class=indexwrapper>
6 {% endif %}
7{% endblock %}
8{% block footer %}
9 {% if pagename == 'index' %}
10 </div>
11 {% endif %}
12{% endblock %}
13{# do not display relbars #}
14{% block relbar1 %}{% endblock %}
15{% block relbar2 %}
16 {% if theme_github_fork %}
17 <a href="http://github.com/{{ theme_github_fork }}"><img style="position: fixed; top: 0; right: 0; border: 0;"
18 src="http://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub" /></a>
19 {% endif %}
20{% endblock %}
21{% block sidebar1 %}{% endblock %}
22{% block sidebar2 %}{% endblock %}
230
=== removed directory 'developers/_themes/flask_small/static'
=== removed file 'developers/_themes/flask_small/static/flasky.css_t'
--- developers/_themes/flask_small/static/flasky.css_t 2012-02-17 16:09:56 +0000
+++ developers/_themes/flask_small/static/flasky.css_t 1970-01-01 00:00:00 +0000
@@ -1,287 +0,0 @@
1/*
2 * flasky.css_t
3 * ~~~~~~~~~~~~
4 *
5 * Sphinx stylesheet -- flasky theme based on nature theme.
6 *
7 * :copyright: Copyright 2007-2010 by the Sphinx team, see AUTHORS.
8 * :license: BSD, see LICENSE for details.
9 *
10 */
11
12@import url("basic.css");
13
14/* -- page layout ----------------------------------------------------------- */
15
16body {
17 font-family: 'Georgia', serif;
18 font-size: 17px;
19 color: #000;
20 background: white;
21 margin: 0;
22 padding: 0;
23}
24
25div.documentwrapper {
26 float: left;
27 width: 100%;
28}
29
30div.bodywrapper {
31 margin: 40px auto 0 auto;
32 width: 700px;
33}
34
35hr {
36 border: 1px solid #B1B4B6;
37}
38
39div.body {
40 background-color: #ffffff;
41 color: #3E4349;
42 padding: 0 30px 30px 30px;
43}
44
45img.floatingflask {
46 padding: 0 0 10px 10px;
47 float: right;
48}
49
50div.footer {
51 text-align: right;
52 color: #888;
53 padding: 10px;
54 font-size: 14px;
55 width: 650px;
56 margin: 0 auto 40px auto;
57}
58
59div.footer a {
60 color: #888;
61 text-decoration: underline;
62}
63
64div.related {
65 line-height: 32px;
66 color: #888;
67}
68
69div.related ul {
70 padding: 0 0 0 10px;
71}
72
73div.related a {
74 color: #444;
75}
76
77/* -- body styles ----------------------------------------------------------- */
78
79a {
80 color: #004B6B;
81 text-decoration: underline;
82}
83
84a:hover {
85 color: #6D4100;
86 text-decoration: underline;
87}
88
89div.body {
90 padding-bottom: 40px; /* saved for footer */
91}
92
93div.body h1,
94div.body h2,
95div.body h3,
96div.body h4,
97div.body h5,
98div.body h6 {
99 font-family: 'Garamond', 'Georgia', serif;
100 font-weight: normal;
101 margin: 30px 0px 10px 0px;
102 padding: 0;
103}
104
105{% if theme_index_logo %}
106div.indexwrapper h1 {
107 text-indent: -999999px;
108 background: url({{ theme_index_logo }}) no-repeat center center;
109 height: {{ theme_index_logo_height }};
110}
111{% endif %}
112
113div.body h2 { font-size: 180%; }
114div.body h3 { font-size: 150%; }
115div.body h4 { font-size: 130%; }
116div.body h5 { font-size: 100%; }
117div.body h6 { font-size: 100%; }
118
119a.headerlink {
120 color: white;
121 padding: 0 4px;
122 text-decoration: none;
123}
124
125a.headerlink:hover {
126 color: #444;
127 background: #eaeaea;
128}
129
130div.body p, div.body dd, div.body li {
131 line-height: 1.4em;
132}
133
134div.admonition {
135 background: #fafafa;
136 margin: 20px -30px;
137 padding: 10px 30px;
138 border-top: 1px solid #ccc;
139 border-bottom: 1px solid #ccc;
140}
141
142div.admonition p.admonition-title {
143 font-family: 'Garamond', 'Georgia', serif;
144 font-weight: normal;
145 font-size: 24px;
146 margin: 0 0 10px 0;
147 padding: 0;
148 line-height: 1;
149}
150
151div.admonition p.last {
152 margin-bottom: 0;
153}
154
155div.highlight{
156 background-color: white;
157}
158
159dt:target, .highlight {
160 background: #FAF3E8;
161}
162
163div.note {
164 background-color: #eee;
165 border: 1px solid #ccc;
166}
167
168div.seealso {
169 background-color: #ffc;
170 border: 1px solid #ff6;
171}
172
173div.topic {
174 background-color: #eee;
175}
176
177div.warning {
178 background-color: #ffe4e4;
179 border: 1px solid #f66;
180}
181
182p.admonition-title {
183 display: inline;
184}
185
186p.admonition-title:after {
187 content: ":";
188}
189
190pre, tt {
191 font-family: 'Consolas', 'Menlo', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
192 font-size: 0.85em;
193}
194
195img.screenshot {
196}
197
198tt.descname, tt.descclassname {
199 font-size: 0.95em;
200}
201
202tt.descname {
203 padding-right: 0.08em;
204}
205
206img.screenshot {
207 -moz-box-shadow: 2px 2px 4px #eee;
208 -webkit-box-shadow: 2px 2px 4px #eee;
209 box-shadow: 2px 2px 4px #eee;
210}
211
212table.docutils {
213 border: 1px solid #888;
214 -moz-box-shadow: 2px 2px 4px #eee;
215 -webkit-box-shadow: 2px 2px 4px #eee;
216 box-shadow: 2px 2px 4px #eee;
217}
218
219table.docutils td, table.docutils th {
220 border: 1px solid #888;
221 padding: 0.25em 0.7em;
222}
223
224table.field-list, table.footnote {
225 border: none;
226 -moz-box-shadow: none;
227 -webkit-box-shadow: none;
228 box-shadow: none;
229}
230
231table.footnote {
232 margin: 15px 0;
233 width: 100%;
234 border: 1px solid #eee;
235}
236
237table.field-list th {
238 padding: 0 0.8em 0 0;
239}
240
241table.field-list td {
242 padding: 0;
243}
244
245table.footnote td {
246 padding: 0.5em;
247}
248
249dl {
250 margin: 0;
251 padding: 0;
252}
253
254dl dd {
255 margin-left: 30px;
256}
257
258pre {
259 padding: 0;
260 margin: 15px -30px;
261 padding: 8px;
262 line-height: 1.3em;
263 padding: 7px 30px;
264 background: #eee;
265 border-radius: 2px;
266 -moz-border-radius: 2px;
267 -webkit-border-radius: 2px;
268}
269
270dl pre {
271 margin-left: -60px;
272 padding-left: 60px;
273}
274
275tt {
276 background-color: #ecf0f3;
277 color: #222;
278 /* padding: 1px 2px; */
279}
280
281tt.xref, a tt {
282 background-color: #FBFBFB;
283}
284
285a:hover tt {
286 background: #EEE;
287}
2880
=== removed file 'developers/_themes/flask_small/theme.conf'
--- developers/_themes/flask_small/theme.conf 2012-02-17 16:09:56 +0000
+++ developers/_themes/flask_small/theme.conf 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
1[theme]
2inherit = basic
3stylesheet = flasky.css
4nosidebar = true
5pygments_style = flask_theme_support.FlaskyStyle
6
7[options]
8index_logo = ''
9index_logo_height = 120px
10github_fork = ''
110
=== removed file 'developers/_themes/flask_theme_support.py'
--- developers/_themes/flask_theme_support.py 2012-02-17 16:09:56 +0000
+++ developers/_themes/flask_theme_support.py 1970-01-01 00:00:00 +0000
@@ -1,86 +0,0 @@
1# flasky extensions. flasky pygments style based on tango style
2from pygments.style import Style
3from pygments.token import Keyword, Name, Comment, String, Error, \
4 Number, Operator, Generic, Whitespace, Punctuation, Other, Literal
5
6
7class FlaskyStyle(Style):
8 background_color = "#f8f8f8"
9 default_style = ""
10
11 styles = {
12 # No corresponding class for the following:
13 #Text: "", # class: ''
14 Whitespace: "underline #f8f8f8", # class: 'w'
15 Error: "#a40000 border:#ef2929", # class: 'err'
16 Other: "#000000", # class 'x'
17
18 Comment: "italic #8f5902", # class: 'c'
19 Comment.Preproc: "noitalic", # class: 'cp'
20
21 Keyword: "bold #004461", # class: 'k'
22 Keyword.Constant: "bold #004461", # class: 'kc'
23 Keyword.Declaration: "bold #004461", # class: 'kd'
24 Keyword.Namespace: "bold #004461", # class: 'kn'
25 Keyword.Pseudo: "bold #004461", # class: 'kp'
26 Keyword.Reserved: "bold #004461", # class: 'kr'
27 Keyword.Type: "bold #004461", # class: 'kt'
28
29 Operator: "#582800", # class: 'o'
30 Operator.Word: "bold #004461", # class: 'ow' - like keywords
31
32 Punctuation: "bold #000000", # class: 'p'
33
34 # because special names such as Name.Class, Name.Function, etc.
35 # are not recognized as such later in the parsing, we choose them
36 # to look the same as ordinary variables.
37 Name: "#000000", # class: 'n'
38 Name.Attribute: "#c4a000", # class: 'na' - to be revised
39 Name.Builtin: "#004461", # class: 'nb'
40 Name.Builtin.Pseudo: "#3465a4", # class: 'bp'
41 Name.Class: "#000000", # class: 'nc' - to be revised
42 Name.Constant: "#000000", # class: 'no' - to be revised
43 Name.Decorator: "#888", # class: 'nd' - to be revised
44 Name.Entity: "#ce5c00", # class: 'ni'
45 Name.Exception: "bold #cc0000", # class: 'ne'
46 Name.Function: "#000000", # class: 'nf'
47 Name.Property: "#000000", # class: 'py'
48 Name.Label: "#f57900", # class: 'nl'
49 Name.Namespace: "#000000", # class: 'nn' - to be revised
50 Name.Other: "#000000", # class: 'nx'
51 Name.Tag: "bold #004461", # class: 'nt' - like a keyword
52 Name.Variable: "#000000", # class: 'nv' - to be revised
53 Name.Variable.Class: "#000000", # class: 'vc' - to be revised
54 Name.Variable.Global: "#000000", # class: 'vg' - to be revised
55 Name.Variable.Instance: "#000000", # class: 'vi' - to be revised
56
57 Number: "#990000", # class: 'm'
58
59 Literal: "#000000", # class: 'l'
60 Literal.Date: "#000000", # class: 'ld'
61
62 String: "#4e9a06", # class: 's'
63 String.Backtick: "#4e9a06", # class: 'sb'
64 String.Char: "#4e9a06", # class: 'sc'
65 String.Doc: "italic #8f5902", # class: 'sd' - like a comment
66 String.Double: "#4e9a06", # class: 's2'
67 String.Escape: "#4e9a06", # class: 'se'
68 String.Heredoc: "#4e9a06", # class: 'sh'
69 String.Interpol: "#4e9a06", # class: 'si'
70 String.Other: "#4e9a06", # class: 'sx'
71 String.Regex: "#4e9a06", # class: 'sr'
72 String.Single: "#4e9a06", # class: 's1'
73 String.Symbol: "#4e9a06", # class: 'ss'
74
75 Generic: "#000000", # class: 'g'
76 Generic.Deleted: "#a40000", # class: 'gd'
77 Generic.Emph: "italic #000000", # class: 'ge'
78 Generic.Error: "#ef2929", # class: 'gr'
79 Generic.Heading: "bold #000080", # class: 'gh'
80 Generic.Inserted: "#00A000", # class: 'gi'
81 Generic.Output: "#888", # class: 'go'
82 Generic.Prompt: "#745334", # class: 'gp'
83 Generic.Strong: "bold #000000", # class: 'gs'
84 Generic.Subheading: "bold #800080", # class: 'gu'
85 Generic.Traceback: "bold #a40000", # class: 'gt'
86 }
870
=== removed file 'developers/conf.py'
--- developers/conf.py 2012-03-05 11:29:13 +0000
+++ developers/conf.py 1970-01-01 00:00:00 +0000
@@ -1,258 +0,0 @@
1# -*- coding: utf-8 -*-
2#
3# OpenERP Technical Documentation configuration file, created by
4# sphinx-quickstart on Fri Feb 17 16:14:06 2012.
5#
6# This file is execfile()d with the current directory set to its containing dir.
7#
8# Note that not all possible configuration values are present in this
9# autogenerated file.
10#
11# All configuration values have a default; values that are commented out
12# serve to show the default.
13
14import sys, os
15
16# If extensions (or modules to document with autodoc) are in another directory,
17# add these directories to sys.path here. If the directory is relative to the
18# documentation root, use os.path.abspath to make it absolute, like shown here.
19#sys.path.insert(0, os.path.abspath('.'))
20sys.path.append(os.path.abspath('_themes'))
21sys.path.append(os.path.abspath('../server'))
22sys.path.insert(0, os.path.abspath('../web'))
23sys.path.insert(0, os.path.abspath('../web/addons'))
24
25# -- General configuration -----------------------------------------------------
26
27# If your documentation needs a minimal Sphinx version, state it here.
28#needs_sphinx = '1.0'
29
30# Add any Sphinx extension module names here, as strings. They can be extensions
31# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
32extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.viewcode']
33
34# Add any paths that contain templates here, relative to this directory.
35templates_path = ['_templates']
36
37# The suffix of source filenames.
38source_suffix = '.rst'
39
40# The encoding of source files.
41#source_encoding = 'utf-8-sig'
42
43# The master toctree document.
44master_doc = 'index'
45
46# General information about the project.
47project = u'OpenERP Technical Documentation'
48copyright = u'2012, OpenERP s.a.'
49
50# The version info for the project you're documenting, acts as replacement for
51# |version| and |release|, also used in various other places throughout the
52# built documents.
53#
54# The short X.Y version.
55version = '0.0'
56# The full version, including alpha/beta/rc tags.
57release = '0.0'
58
59# The language for content autogenerated by Sphinx. Refer to documentation
60# for a list of supported languages.
61#language = None
62
63# There are two options for replacing |today|: either, you set today to some
64# non-false value, then it is used:
65#today = ''
66# Else, today_fmt is used as the format for a strftime call.
67#today_fmt = '%B %d, %Y'
68
69# List of patterns, relative to source directory, that match files and
70# directories to ignore when looking for source files.
71exclude_patterns = ['_build', 'server/index.rst', 'web/index.rst']
72
73# The reST default role (used for this markup: `text`) to use for all documents.
74#default_role = None
75
76# If true, '()' will be appended to :func: etc. cross-reference text.
77#add_function_parentheses = True
78
79# If true, the current module name will be prepended to all description
80# unit titles (such as .. function::).
81#add_module_names = True
82
83# If true, sectionauthor and moduleauthor directives will be shown in the
84# output. They are ignored by default.
85#show_authors = False
86
87# The name of the Pygments (syntax highlighting) style to use.
88pygments_style = 'sphinx'
89
90# A list of ignored prefixes for module index sorting.
91#modindex_common_prefix = []
92
93
94# -- Options for HTML output ---------------------------------------------------
95
96# The theme to use for HTML and HTML Help pages. See the documentation for
97# a list of builtin themes.
98html_theme = 'flask'
99
100# Theme options are theme-specific and customize the look and feel of a theme
101# further. For a list of options available for each theme, see the
102# documentation.
103html_theme_options = {
104 "nosidebar": False,
105}
106
107# Add any paths that contain custom themes here, relative to this directory.
108html_theme_path = ['_themes']
109
110# The name for this set of Sphinx documents. If None, it defaults to
111# "<project> v<release> documentation".
112#html_title = None
113
114# A shorter title for the navigation bar. Default is the same as html_title.
115#html_short_title = None
116
117# The name of an image file (relative to this directory) to place at the top
118# of the sidebar.
119#html_logo = None
120
121# The name of an image file (within the static path) to use as favicon of the
122# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
123# pixels large.
124#html_favicon = None
125
126# Add any paths that contain custom static files (such as style sheets) here,
127# relative to this directory. They are copied after the builtin static files,
128# so a file named "default.css" will overwrite the builtin "default.css".
129html_static_path = ['_static']
130
131# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
132# using the given strftime format.
133#html_last_updated_fmt = '%b %d, %Y'
134
135# If true, SmartyPants will be used to convert quotes and dashes to
136# typographically correct entities.
137#html_use_smartypants = True
138
139# Custom sidebar templates, maps document names to template names.
140html_sidebars = {
141 'index': ['sidebarintro.html', 'sourcelink.html', 'searchbox.html'],
142 '**': ['sidebarlogo.html', 'localtoc.html', 'relations.html',
143 'sourcelink.html', 'searchbox.html']
144}
145
146# Additional templates that should be rendered to pages, maps page names to
147# template names.
148#html_additional_pages = {}
149
150# If false, no module index is generated.
151#html_domain_indices = True
152
153# If false, no index is generated.
154#html_use_index = True
155
156# If true, the index is split into individual pages for each letter.
157#html_split_index = False
158
159# If true, links to the reST sources are added to the pages.
160#html_show_sourcelink = True
161
162# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
163#html_show_sphinx = True
164
165# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
166#html_show_copyright = True
167
168# If true, an OpenSearch description file will be output, and all pages will
169# contain a <link> tag referring to it. The value of this option must be the
170# base URL from which the finished HTML is served.
171#html_use_opensearch = ''
172
173# This is the file name suffix for HTML files (e.g. ".xhtml").
174#html_file_suffix = None
175
176# Output file base name for HTML help builder.
177htmlhelp_basename = 'openerp-technical-documentation-doc'
178
179
180# -- Options for LaTeX output --------------------------------------------------
181
182latex_elements = {
183# The paper size ('letterpaper' or 'a4paper').
184#'papersize': 'letterpaper',
185
186# The font size ('10pt', '11pt' or '12pt').
187#'pointsize': '10pt',
188
189# Additional stuff for the LaTeX preamble.
190#'preamble': '',
191}
192
193# Grouping the document tree into LaTeX files. List of tuples
194# (source start file, target name, title, author, documentclass [howto/manual]).
195latex_documents = [
196 ('index', 'openerp-technical-documentation.tex', u'OpenERP Technical Documentation',
197 u'OpenERP s.a.', 'manual'),
198]
199
200# The name of an image file (relative to this directory) to place at the top of
201# the title page.
202#latex_logo = None
203
204# For "manual" documents, if this is true, then toplevel headings are parts,
205# not chapters.
206#latex_use_parts = False
207
208# If true, show page references after internal links.
209#latex_show_pagerefs = False
210
211# If true, show URL addresses after external links.
212#latex_show_urls = False
213
214# Documents to append as an appendix to all manuals.
215#latex_appendices = []
216
217# If false, no module index is generated.
218#latex_domain_indices = True
219
220
221# -- Options for manual page output --------------------------------------------
222
223# One entry per manual page. List of tuples
224# (source start file, name, description, authors, manual section).
225man_pages = [
226 ('index', 'openerp-technical-documentation', u'OpenERP Technical Documentation',
227 [u'OpenERP s.a.'], 1)
228]
229
230# If true, show URL addresses after external links.
231#man_show_urls = False
232
233
234# -- Options for Texinfo output ------------------------------------------------
235
236# Grouping the document tree into Texinfo files. List of tuples
237# (source start file, target name, title, author,
238# dir menu entry, description, category)
239texinfo_documents = [
240 ('index', 'OpenERPTechnicalDocumentation', u'OpenERP Technical Documentation',
241 u'OpenERP s.a.', 'OpenERPTechnicalDocumentation', 'One line description of project.',
242 'Miscellaneous'),
243]
244
245# Documents to append as an appendix to all manuals.
246#texinfo_appendices = []
247
248# If false, no module index is generated.
249#texinfo_domain_indices = True
250
251# How to display URL addresses: 'footnote', 'no', or 'inline'.
252#texinfo_show_urls = 'footnote'
253
254
255# Example configuration for intersphinx: refer to the Python standard library.
256intersphinx_mapping = {
257 'http://docs.python.org/': None,
258 }
2590
=== removed file 'developers/developers.rst.inc'
--- developers/developers.rst.inc 2012-12-06 16:12:55 +0000
+++ developers/developers.rst.inc 1970-01-01 00:00:00 +0000
@@ -1,43 +0,0 @@
1OpenERP Server
2''''''''''''''
3
4.. toctree::
5 :maxdepth: 1
6
7 /server/05_test_framework
8
9Changes in 7.0
10++++++++++++++
11
12.. toctree::
13 :maxdepth: 1
14
15OpenERP Web Addon
16'''''''''''''''''
17
18.. toctree::
19 :maxdepth: 1
20
21 /web/presentation
22 /web/async
23
24 /web/testing
25
26 /web/widget
27 /web/qweb
28 /web/rpc
29 /web/client_action
30 /web/form_view
31 /web/search_view
32 /web/list_view
33
34 /web/changelog-7.0
35
36OpenERP Command
37'''''''''''''''
38
39.. toctree::
40 :maxdepth: 1
41
42 /command/openerp-command
43 /command/adding-command
440
=== removed file 'developers/generate.py'
--- developers/generate.py 2012-10-15 12:27:08 +0000
+++ developers/generate.py 1970-01-01 00:00:00 +0000
@@ -1,74 +0,0 @@
1"""
2Build the documentation, symlinking specific project documentations.
3"""
4import argparse
5import os
6import sys
7
8class GenerateDoc(object):
9
10 command_name = 'generate-doc'
11
12 def __init__(self, subparsers=None):
13 if subparsers:
14 self.parser = parser = subparsers.add_parser(self.command_name,
15 description = self.__class__.__doc__)
16 else:
17 self.parser = parser = argparse.ArgumentParser(
18 description=self.__class__.__doc__)
19
20 parser.add_argument('--server', metavar='PATH',
21 required=True, help='the local server branch to use for the '
22 'server documentation')
23
24 parser.add_argument('--web', metavar='PATH',
25 required=True, help='the local web branch to use for the '
26 'web documentation')
27
28 parser.add_argument('--command', metavar='PATH',
29 required=True, help='the local command branch to use for the '
30 'command documentation')
31
32 parser.add_argument('--output', metavar='PATH',
33 default='_result', help='where the documentation is generated')
34
35 parser.set_defaults(run=self.run_with_args)
36
37 def run_with_args(self, args):
38 self.args = args
39 self.run()
40
41 def run(self):
42 for b in ('server', 'web', 'command'):
43 if b != 'web':
44 a = os.path.join(os.path.abspath(getattr(self.args, b)), 'doc')
45 else:
46 a = os.path.join(os.path.abspath(getattr(self.args, b)), 'addons', b, 'doc')
47 l = 'ln -sfT %s %s' % (a, b)
48 l = l.split()
49 os.spawnvp(os.P_WAIT, l[0], l)
50
51 l = 'make clean'.split()
52 os.spawnvp(os.P_WAIT, l[0], l)
53
54 l = 'sphinx-build -b dirhtml -d _build/doctrees . _build/dirhtml'.split()
55 os.spawnvp(os.P_WAIT, l[0], l)
56
57 l = 'sed -i /-99999/d _build/dirhtml/_static/flasky.css'.split()
58 os.spawnvp(os.P_WAIT, l[0], l)
59
60 l = 'rm -rf _result'.split()
61 os.spawnvp(os.P_WAIT, l[0], l)
62
63 l = 'cp -r _build/dirhtml %s' % os.path.abspath(self.args.output)
64 l = l.split()
65 os.spawnvp(os.P_WAIT, l[0], l)
66
67 @classmethod
68 def stand_alone(cls):
69 command = cls()
70 args = command.parser.parse_args()
71 args.run(args)
72
73if __name__ == '__main__':
74 GenerateDoc.stand_alone()
750
=== removed file 'developers/index.rst'
--- developers/index.rst 2012-03-05 11:24:27 +0000
+++ developers/index.rst 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
1
2.. _developers:
3
4OpenERP Developer Documentation
5===============================
6
7.. include:: developers.rst.inc
80
=== removed file 'developers/installation.rst'
--- developers/installation.rst 2012-02-29 14:08:42 +0000
+++ developers/installation.rst 1970-01-01 00:00:00 +0000
@@ -1,2 +0,0 @@
1Installation
2============
30
=== removed file 'developers/overview.rst'
--- developers/overview.rst 2012-02-29 14:08:42 +0000
+++ developers/overview.rst 1970-01-01 00:00:00 +0000
@@ -1,2 +0,0 @@
1Overview
2========
30
=== added file 'docbuilder'
--- docbuilder 1970-01-01 00:00:00 +0000
+++ docbuilder 2013-01-21 13:47:22 +0000
@@ -0,0 +1,178 @@
1#!/usr/bin/env python
2import argparse
3import ast
4import collections
5import errno
6import datetime
7import fnmatch
8import functools
9import glob
10import itertools
11import os
12import os.path
13import shutil
14import subprocess
15import sys
16import tempfile
17
18SPHINXBUILD = os.environ.get('SPHINXBUILD', 'sphinx-build')
19
20PATH_ROOT = os.path.abspath(os.path.dirname(__file__))
21subpath = functools.partial(os.path.join, PATH_ROOT)
22
23PUBLISH_DIR = subpath('build', 'html')
24publish = functools.partial(os.path.join, PUBLISH_DIR)
25
26""" Representation of a project with documentation
27 directory: the sub-directory (of this file's directory) where the
28 project should be checked out
29 repo: bazaar repository in which the project lives (branch
30 included)
31 pubname: name (of the directory) under which the project's
32 documentation will be published
33 subpath: sub-path of the repository in which to look for a ``doc``
34 folder. May be a glob pattern and yield multiple
35 results. Must be a list of sub-paths items, can be empty
36 if the ``doc`` folder is directly in ``directory``.
37 outdir: an optional function called to get the final section of
38 the output path. If ``None``, the documentation will be
39 output in ``pubname`` directly``. If ``outdir(Project,
40 input_path)`` returns a non-empty string, that string
41 will be the latest segment(s) of the final output path
42 label: name printed in the root index
43"""
44# FIXME: label shouldn't be needed should it? Get from conf.py?
45Project = collections.namedtuple('Project', 'directory repo pubname subpath outdir label')
46PROJECTS = [
47 Project('server', 'lp:openobject-server/trunk', 'server', [],
48 None, 'Server'),
49 Project('web', 'lp:openerp-web/trunk', 'web', ['addons', 'web'],
50 None, 'Web Client'),
51 Project('addons', 'lp:openobject-addons/trunk', 'addons', ['*'],
52 # get addon name
53 (lambda proj, path: path.split(os.sep)[-2]),
54 None),
55 Project('tools', 'lp:~openerp-dev/openerp-tools/trunk-doc-thu/', 'runbot', ['openerp-runbot'],
56 None, 'Runbot'),
57]
58
59def init(args):
60 for project in PROJECTS:
61 subprocess.check_call([
62 'bzr', 'branch', '-q', project.repo, subpath(project.directory)])
63
64def html(args):
65 # find . -name '*.py[co]' -delete
66 for base, dirs, files in os.walk(PATH_ROOT):
67 for f in fnmatch.filter(files, '*.py[co]'):
68 os.remove(subpath(base, f))
69
70 docs = []
71 for project in PROJECTS:
72 subprocess.check_call(
73 ['bzr', 'pull', '-q'],
74 cwd=subpath(PATH_ROOT, project.directory))
75
76 try:
77 os.makedirs(publish('developers', project.pubname))
78 except OSError, e:
79 # ignore if leaf already exists
80 if e.errno != errno.EEXIST:
81 raise
82
83 for target in glob.iglob(subpath(*itertools.chain(
84 [project.directory], project.subpath, ['doc']))):
85 # target is a ``doc`` directory which may be buildable
86 shutil.rmtree(os.path.join(target, '_build'), ignore_errors=True)
87 if os.path.exists(os.path.join(target, 'conf.py')):
88 docs.append(build_self_conf(project, target))
89 elif os.path.exists(os.path.join(target, 'index.rst')):
90 docs.append(build_default_conf(project, target))
91 else:
92 print >>sys.stderr, "%s has no index.rst or conf.py, skipping doc-buiding" % target
93
94 d = tempfile.mkdtemp()
95 try:
96 # generate core index file
97 indexpath = os.path.join(d, 'index.rst')
98 with open(indexpath, 'wb') as f:
99 f.write(
100 "=====================\n"
101 "OpenERP Documentation\n"
102 "=====================\n")
103 f.write('\n')
104 for name, path in docs:
105 # Path is relative url from core index?
106 f.write("* `%s <%s>`_\n" % (name, '/'.join(path)))
107
108 # compile with default conf to root dir
109 sphinx_build_default(d, publish('developers'), [
110 ('project', 'OpenERP'),
111 ('copyright', '%d OpenERP S.A.' % datetime.date.today().year),
112 ])
113 finally:
114 shutil.rmtree(d)
115
116def build_self_conf(project, target_dir):
117 """ Builds a documentation with its own sphinx project (own
118 conf.py file)
119 """
120 subprocess.check_call([
121 SPHINXBUILD, '-q', '-b', 'dirhtml',
122 target_dir, publish('developers', project.pubname)])
123 return project.label, [project.pubname]
124def build_default_conf(project, target_dir):
125 """ Builds a documentation without a sphinx project, using default
126 values
127 """
128 args = ['developers', project.pubname]
129 if project.outdir:
130 postfix = project.outdir(project, target_dir)
131 if postfix:
132 args.append(postfix)
133 destination = publish(*args)
134
135 # get module metadata
136 manifest_path = os.path.normpath(os.path.join(
137 target_dir, '..', '__openerp__.py'))
138 with open(manifest_path, 'rb') as f:
139 manifest = ast.literal_eval(f.read())
140
141 sphinx_build_default(target_dir, destination, [
142 ('project', manifest['name']),
143 ('copyright', manifest['author']),
144 ('version', manifest.get('version', '0.0')),
145 ('release', manifest.get('version', '0.0')),
146 ])
147 return manifest['name'], args[1:]
148
149def sphinx_build_default(source, destination, conf_values=()):
150 """ Build ``source`` to ``destination`` using the ``defaults``
151 sphinx project as template.
152
153 :param conf_values: configuration values override (sphinx-build's -D)
154 """
155 args = [SPHINXBUILD, '-q', '-b', 'dirhtml', '-c', subpath('defaults')]
156 for k, v in conf_values:
157 args.append('-D'),
158 args.append('%s=%s' % (k, v))
159 args.append(source)
160 args.append(destination)
161
162 subprocess.check_call(args)
163
164parser = argparse.ArgumentParser()
165subparsers = parser.add_subparsers()
166subparsers.add_parser(
167 'init', help="Initialize the document building: checkout all buildable repositories")\
168 .set_defaults(func=init)
169subparsers.add_parser(
170 'html', help="Generate the full documentation from the combination of the various repository docs")\
171 .set_defaults(func=html)
172
173def main():
174 args = parser.parse_args()
175 args.func(args)
176
177if __name__ == '__main__':
178 main()
0179
=== removed directory 'users'
=== removed file 'users/Makefile'
--- users/Makefile 2012-03-05 11:41:17 +0000
+++ users/Makefile 1970-01-01 00:00:00 +0000
@@ -1,154 +0,0 @@
1# Makefile for Sphinx documentation
2#
3
4# You can set these variables from the command line.
5SPHINXOPTS = -q
6SPHINXBUILD = sphinx-build
7PAPER =
8BUILDDIR = _build
9
10# Internal variables.
11PAPEROPT_a4 = -D latex_paper_size=a4
12PAPEROPT_letter = -D latex_paper_size=letter
13ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
14# the i18n builder cannot share the environment and doctrees with the others
15I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) .
16
17.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
18
19help:
20 @echo "Please use \`make <target>' where <target> is one of"
21 @echo " html to make standalone HTML files"
22 @echo " dirhtml to make HTML files named index.html in directories"
23 @echo " singlehtml to make a single large HTML file"
24 @echo " pickle to make pickle files"
25 @echo " json to make JSON files"
26 @echo " htmlhelp to make HTML files and a HTML help project"
27 @echo " qthelp to make HTML files and a qthelp project"
28 @echo " devhelp to make HTML files and a Devhelp project"
29 @echo " epub to make an epub"
30 @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
31 @echo " latexpdf to make LaTeX files and run them through pdflatex"
32 @echo " text to make text files"
33 @echo " man to make manual pages"
34 @echo " texinfo to make Texinfo files"
35 @echo " info to make Texinfo files and run them through makeinfo"
36 @echo " gettext to make PO message catalogs"
37 @echo " changes to make an overview of all changed/added/deprecated items"
38 @echo " linkcheck to check all external links for integrity"
39 @echo " doctest to run all doctests embedded in the documentation (if enabled)"
40
41clean:
42 -rm -rf $(BUILDDIR)/*
43
44html:
45 $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
46 @echo
47 @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
48
49dirhtml:
50 $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
51 sed -i '/-99999/d' _build/dirhtml/_static/flasky.css
52 @echo
53 @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
54
55singlehtml:
56 $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
57 @echo
58 @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
59
60pickle:
61 $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
62 @echo
63 @echo "Build finished; now you can process the pickle files."
64
65json:
66 $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
67 @echo
68 @echo "Build finished; now you can process the JSON files."
69
70htmlhelp:
71 $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
72 @echo
73 @echo "Build finished; now you can run HTML Help Workshop with the" \
74 ".hhp project file in $(BUILDDIR)/htmlhelp."
75
76qthelp:
77 $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
78 @echo
79 @echo "Build finished; now you can run "qcollectiongenerator" with the" \
80 ".qhcp project file in $(BUILDDIR)/qthelp, like this:"
81 @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/OpenERPTechnicalDocumentation.qhcp"
82 @echo "To view the help file:"
83 @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/OpenERPTechnicalDocumentation.qhc"
84
85devhelp:
86 $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
87 @echo
88 @echo "Build finished."
89 @echo "To view the help file:"
90 @echo "# mkdir -p $$HOME/.local/share/devhelp/OpenERPTechnicalDocumentation"
91 @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/OpenERPTechnicalDocumentation"
92 @echo "# devhelp"
93
94epub:
95 $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
96 @echo
97 @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
98
99latex:
100 $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
101 @echo
102 @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
103 @echo "Run \`make' in that directory to run these through (pdf)latex" \
104 "(use \`make latexpdf' here to do that automatically)."
105
106latexpdf:
107 $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
108 @echo "Running LaTeX files through pdflatex..."
109 $(MAKE) -C $(BUILDDIR)/latex all-pdf
110 @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
111
112text:
113 $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
114 @echo
115 @echo "Build finished. The text files are in $(BUILDDIR)/text."
116
117man:
118 $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
119 @echo
120 @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
121
122texinfo:
123 $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
124 @echo
125 @echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
126 @echo "Run \`make' in that directory to run these through makeinfo" \
127 "(use \`make info' here to do that automatically)."
128
129info:
130 $(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
131 @echo "Running Texinfo files through makeinfo..."
132 make -C $(BUILDDIR)/texinfo info
133 @echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
134
135gettext:
136 $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
137 @echo
138 @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
139
140changes:
141 $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
142 @echo
143 @echo "The overview file is in $(BUILDDIR)/changes."
144
145linkcheck:
146 $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
147 @echo
148 @echo "Link check complete; look for any errors in the above output " \
149 "or in $(BUILDDIR)/linkcheck/output.txt."
150
151doctest:
152 $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
153 @echo "Testing of doctests in the sources finished, look at the " \
154 "results in $(BUILDDIR)/doctest/output.txt."
1550
=== removed directory 'users/_static'
=== removed file 'users/_static/openerp.png'
156Binary files users/_static/openerp.png 2012-03-05 11:24:27 +0000 and users/_static/openerp.png 1970-01-01 00:00:00 +0000 differ1Binary files users/_static/openerp.png 2012-03-05 11:24:27 +0000 and users/_static/openerp.png 1970-01-01 00:00:00 +0000 differ
=== removed directory 'users/_templates'
=== removed file 'users/_templates/sidebarintro.html'
--- users/_templates/sidebarintro.html 2012-03-05 16:45:16 +0000
+++ users/_templates/sidebarintro.html 1970-01-01 00:00:00 +0000
@@ -1,21 +0,0 @@
1<h3>About</h3>
2
3<p>
4
5OpenERP is an extensive open source suite of business applications. It is built
6on a flexible development framework written in Python. The framework uses a
7three-tier architecture. It provides an ORM on top of PostgreSQL, a modular
8application server, and a feature-packed web client.
9
10</p>
11
12<h3>Other Docs</h3>
13<ul>
14 <li><a href="http://doc.openerp.com/trunk/developers">OpenERP Developers Documentation</a></li>
15</ul>
16
17<h3>Useful Links</h3>
18<ul>
19 <li><a href="http://www.openerp.com/">The OpenERP website</a></li>
20 <li><a href="http://python.org/">The Python programming language</a></li>
21</ul>
220
=== removed file 'users/_templates/sidebarlogo.html'
--- users/_templates/sidebarlogo.html 2012-03-05 11:24:27 +0000
+++ users/_templates/sidebarlogo.html 1970-01-01 00:00:00 +0000
@@ -1,3 +0,0 @@
1<p class="logo"><a href="{{ pathto(master_doc) }}">
2 <img class="logo" src="{{ pathto('_static/openerp.png', 1) }}" alt="Logo"/>
3</a></p>
40
=== removed directory 'users/_themes'
=== removed file 'users/_themes/.gitignore'
--- users/_themes/.gitignore 2012-03-05 11:24:27 +0000
+++ users/_themes/.gitignore 1970-01-01 00:00:00 +0000
@@ -1,3 +0,0 @@
1*.pyc
2*.pyo
3.DS_Store
40
=== removed file 'users/_themes/LICENSE'
--- users/_themes/LICENSE 2012-03-05 11:24:27 +0000
+++ users/_themes/LICENSE 1970-01-01 00:00:00 +0000
@@ -1,37 +0,0 @@
1Copyright (c) 2010 by Armin Ronacher.
2
3Some rights reserved.
4
5Redistribution and use in source and binary forms of the theme, with or
6without modification, are permitted provided that the following conditions
7are met:
8
9* Redistributions of source code must retain the above copyright
10 notice, this list of conditions and the following disclaimer.
11
12* Redistributions in binary form must reproduce the above
13 copyright notice, this list of conditions and the following
14 disclaimer in the documentation and/or other materials provided
15 with the distribution.
16
17* The names of the contributors may not be used to endorse or
18 promote products derived from this software without specific
19 prior written permission.
20
21We kindly ask you to only use these themes in an unmodified manner just
22for Flask and Flask-related products, not for unrelated projects. If you
23like the visual style and want to use it for your own projects, please
24consider making some larger changes to the themes (such as changing
25font faces, sizes, colors or margins).
26
27THIS THEME IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
28AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
29IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
31LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
32CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
33SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
34INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
35CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
36ARISING IN ANY WAY OUT OF THE USE OF THIS THEME, EVEN IF ADVISED OF THE
37POSSIBILITY OF SUCH DAMAGE.
380
=== removed file 'users/_themes/README'
--- users/_themes/README 2012-03-05 11:24:27 +0000
+++ users/_themes/README 1970-01-01 00:00:00 +0000
@@ -1,31 +0,0 @@
1Flask Sphinx Styles
2===================
3
4This repository contains sphinx styles for Flask and Flask related
5projects. To use this style in your Sphinx documentation, follow
6this guide:
7
81. put this folder as _themes into your docs folder. Alternatively
9 you can also use git submodules to check out the contents there.
102. add this to your conf.py:
11
12 sys.path.append(os.path.abspath('_themes'))
13 html_theme_path = ['_themes']
14 html_theme = 'flask'
15
16The following themes exist:
17
18- 'flask' - the standard flask documentation theme for large
19 projects
20- 'flask_small' - small one-page theme. Intended to be used by
21 very small addon libraries for flask.
22
23The following options exist for the flask_small theme:
24
25 [options]
26 index_logo = '' filename of a picture in _static
27 to be used as replacement for the
28 h1 in the index.rst file.
29 index_logo_height = 120px height of the index logo
30 github_fork = '' repository name on github for the
31 "fork me" badge
320
=== removed directory 'users/_themes/flask'
=== removed file 'users/_themes/flask/layout.html'
--- users/_themes/flask/layout.html 2012-03-05 11:24:27 +0000
+++ users/_themes/flask/layout.html 1970-01-01 00:00:00 +0000
@@ -1,25 +0,0 @@
1{%- extends "basic/layout.html" %}
2{%- block extrahead %}
3 {{ super() }}
4 {% if theme_touch_icon %}
5 <link rel="apple-touch-icon" href="{{ pathto('_static/' ~ theme_touch_icon, 1) }}" />
6 {% endif %}
7 <link media="only screen and (max-device-width: 480px)" href="{{
8 pathto('_static/small_flask.css', 1) }}" type= "text/css" rel="stylesheet" />
9{% endblock %}
10{%- block relbar2 %}{% endblock %}
11{% block header %}
12 {{ super() }}
13 {% if pagename == 'index' %}
14 <div class=indexwrapper>
15 {% endif %}
16{% endblock %}
17{%- block footer %}
18 <div class="footer">
19 &copy; Copyright {{ copyright }}
20 Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> and the <a href="https://github.com/mitsuhiko/flask-sphinx-themes">Flask theme</a>.
21 </div>
22 {% if pagename == 'index' %}
23 </div>
24 {% endif %}
25{%- endblock %}
260
=== removed file 'users/_themes/flask/relations.html'
--- users/_themes/flask/relations.html 2012-03-05 11:24:27 +0000
+++ users/_themes/flask/relations.html 1970-01-01 00:00:00 +0000
@@ -1,19 +0,0 @@
1<h3>Related Topics</h3>
2<ul>
3 <li><a href="{{ pathto(master_doc) }}">Documentation overview</a><ul>
4 {%- for parent in parents %}
5 <li><a href="{{ parent.link|e }}">{{ parent.title }}</a><ul>
6 {%- endfor %}
7 {%- if prev %}
8 <li>Previous: <a href="{{ prev.link|e }}" title="{{ _('previous chapter')
9 }}">{{ prev.title }}</a></li>
10 {%- endif %}
11 {%- if next %}
12 <li>Next: <a href="{{ next.link|e }}" title="{{ _('next chapter')
13 }}">{{ next.title }}</a></li>
14 {%- endif %}
15 {%- for parent in parents %}
16 </ul></li>
17 {%- endfor %}
18 </ul></li>
19</ul>
200
=== removed directory 'users/_themes/flask/static'
=== removed file 'users/_themes/flask/static/flasky.css_t'
--- users/_themes/flask/static/flasky.css_t 2012-03-05 11:24:27 +0000
+++ users/_themes/flask/static/flasky.css_t 1970-01-01 00:00:00 +0000
@@ -1,395 +0,0 @@
1/*
2 * flasky.css_t
3 * ~~~~~~~~~~~~
4 *
5 * :copyright: Copyright 2010 by Armin Ronacher.
6 * :license: Flask Design License, see LICENSE for details.
7 */
8
9{% set page_width = '1000px' %}
10{% set sidebar_width = '200px' %}
11
12@import url("basic.css");
13
14/* -- page layout ----------------------------------------------------------- */
15
16body {
17 font-family: 'Georgia', serif;
18 font-size: 17px;
19 background-color: white;
20 color: #000;
21 margin: 0;
22 padding: 0;
23}
24
25div.document {
26 width: {{ page_width }};
27 margin: 30px auto 0 auto;
28}
29
30div.documentwrapper {
31 float: left;
32 width: 100%;
33}
34
35div.bodywrapper {
36 margin: 0 0 0 {{ sidebar_width }};
37}
38
39div.sphinxsidebar {
40 width: {{ sidebar_width }};
41}
42
43hr {
44 border: 1px solid #B1B4B6;
45}
46
47div.body {
48 background-color: #ffffff;
49 color: #3E4349;
50 padding: 0 30px 0 30px;
51}
52
53img.floatingflask {
54 padding: 0 0 10px 10px;
55 float: right;
56}
57
58div.footer {
59 width: {{ page_width }};
60 margin: 20px auto 30px auto;
61 font-size: 14px;
62 color: #888;
63 text-align: right;
64}
65
66div.footer a {
67 color: #888;
68}
69
70div.related {
71 display: none;
72}
73
74div.sphinxsidebar a {
75 color: #444;
76 text-decoration: none;
77 border-bottom: 1px dotted #999;
78}
79
80div.sphinxsidebar a:hover {
81 border-bottom: 1px solid #999;
82}
83
84div.sphinxsidebar {
85 font-size: 14px;
86 line-height: 1.5;
87}
88
89div.sphinxsidebarwrapper {
90 padding: 18px 10px;
91}
92
93div.sphinxsidebarwrapper p.logo {
94 padding: 0 0 20px 0;
95 margin: 0;
96 text-align: center;
97}
98
99div.sphinxsidebar h3,
100div.sphinxsidebar h4 {
101 font-family: 'Garamond', 'Georgia', serif;
102 color: #444;
103 font-size: 24px;
104 font-weight: normal;
105 margin: 0 0 5px 0;
106 padding: 0;
107}
108
109div.sphinxsidebar h4 {
110 font-size: 20px;
111}
112
113div.sphinxsidebar h3 a {
114 color: #444;
115}
116
117div.sphinxsidebar p.logo a,
118div.sphinxsidebar h3 a,
119div.sphinxsidebar p.logo a:hover,
120div.sphinxsidebar h3 a:hover {
121 border: none;
122}
123
124div.sphinxsidebar p {
125 color: #555;
126 margin: 10px 0;
127}
128
129div.sphinxsidebar ul {
130 margin: 10px 0;
131 padding: 0;
132 color: #000;
133}
134
135div.sphinxsidebar input {
136 border: 1px solid #ccc;
137 font-family: 'Georgia', serif;
138 font-size: 1em;
139}
140
141/* -- body styles ----------------------------------------------------------- */
142
143a {
144 color: #004B6B;
145 text-decoration: underline;
146}
147
148a:hover {
149 color: #6D4100;
150 text-decoration: underline;
151}
152
153div.body h1,
154div.body h2,
155div.body h3,
156div.body h4,
157div.body h5,
158div.body h6 {
159 font-family: 'Garamond', 'Georgia', serif;
160 font-weight: normal;
161 margin: 30px 0px 10px 0px;
162 padding: 0;
163}
164
165{% if theme_index_logo %}
166div.indexwrapper h1 {
167 text-indent: -999999px;
168 background: url({{ theme_index_logo }}) no-repeat center center;
169 height: {{ theme_index_logo_height }};
170}
171{% endif %}
172
173div.body h1 { margin-top: 0; padding-top: 0; font-size: 240%; }
174div.body h2 { font-size: 180%; }
175div.body h3 { font-size: 150%; }
176div.body h4 { font-size: 130%; }
177div.body h5 { font-size: 100%; }
178div.body h6 { font-size: 100%; }
179
180a.headerlink {
181 color: #ddd;
182 padding: 0 4px;
183 text-decoration: none;
184}
185
186a.headerlink:hover {
187 color: #444;
188 background: #eaeaea;
189}
190
191div.body p, div.body dd, div.body li {
192 line-height: 1.4em;
193}
194
195div.admonition {
196 background: #fafafa;
197 margin: 20px -30px;
198 padding: 10px 30px;
199 border-top: 1px solid #ccc;
200 border-bottom: 1px solid #ccc;
201}
202
203div.admonition tt.xref, div.admonition a tt {
204 border-bottom: 1px solid #fafafa;
205}
206
207dd div.admonition {
208 margin-left: -60px;
209 padding-left: 60px;
210}
211
212div.admonition p.admonition-title {
213 font-family: 'Garamond', 'Georgia', serif;
214 font-weight: normal;
215 font-size: 24px;
216 margin: 0 0 10px 0;
217 padding: 0;
218 line-height: 1;
219}
220
221div.admonition p.last {
222 margin-bottom: 0;
223}
224
225div.highlight {
226 background-color: white;
227}
228
229dt:target, .highlight {
230 background: #FAF3E8;
231}
232
233div.note {
234 background-color: #eee;
235 border: 1px solid #ccc;
236}
237
238div.seealso {
239 background-color: #ffc;
240 border: 1px solid #ff6;
241}
242
243div.topic {
244 background-color: #eee;
245}
246
247p.admonition-title {
248 display: inline;
249}
250
251p.admonition-title:after {
252 content: ":";
253}
254
255pre, tt {
256 font-family: 'Consolas', 'Menlo', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
257 font-size: 0.9em;
258}
259
260img.screenshot {
261}
262
263tt.descname, tt.descclassname {
264 font-size: 0.95em;
265}
266
267tt.descname {
268 padding-right: 0.08em;
269}
270
271img.screenshot {
272 -moz-box-shadow: 2px 2px 4px #eee;
273 -webkit-box-shadow: 2px 2px 4px #eee;
274 box-shadow: 2px 2px 4px #eee;
275}
276
277table.docutils {
278 border: 1px solid #888;
279 -moz-box-shadow: 2px 2px 4px #eee;
280 -webkit-box-shadow: 2px 2px 4px #eee;
281 box-shadow: 2px 2px 4px #eee;
282}
283
284table.docutils td, table.docutils th {
285 border: 1px solid #888;
286 padding: 0.25em 0.7em;
287}
288
289table.field-list, table.footnote {
290 border: none;
291 -moz-box-shadow: none;
292 -webkit-box-shadow: none;
293 box-shadow: none;
294}
295
296table.footnote {
297 margin: 15px 0;
298 width: 100%;
299 border: 1px solid #eee;
300 background: #fdfdfd;
301 font-size: 0.9em;
302}
303
304table.footnote + table.footnote {
305 margin-top: -15px;
306 border-top: none;
307}
308
309table.field-list th {
310 padding: 0 0.8em 0 0;
311}
312
313table.field-list td {
314 padding: 0;
315}
316
317table.footnote td.label {
318 width: 0px;
319 padding: 0.3em 0 0.3em 0.5em;
320}
321
322table.footnote td {
323 padding: 0.3em 0.5em;
324}
325
326dl {
327 margin: 0;
328 padding: 0;
329}
330
331dl dd {
332 margin-left: 30px;
333}
334
335blockquote {
336 margin: 0 0 0 30px;
337 padding: 0;
338}
339
340ul, ol {
341 margin: 10px 0 10px 30px;
342 padding: 0;
343}
344
345pre {
346 background: #eee;
347 padding: 7px 30px;
348 margin: 15px -30px;
349 line-height: 1.3em;
350}
351
352dl pre, blockquote pre, li pre {
353 margin-left: -60px;
354 padding-left: 60px;
355}
356
357dl dl pre {
358 margin-left: -90px;
359 padding-left: 90px;
360}
361
362tt {
363 background-color: #ecf0f3;
364 color: #222;
365 /* padding: 1px 2px; */
366}
367
368tt.xref, a tt {
369 background-color: #FBFBFB;
370 border-bottom: 1px solid white;
371}
372
373a.reference {
374 text-decoration: none;
375 border-bottom: 1px dotted #004B6B;
376}
377
378a.reference:hover {
379 border-bottom: 1px solid #6D4100;
380}
381
382a.footnote-reference {
383 text-decoration: none;
384 font-size: 0.7em;
385 vertical-align: top;
386 border-bottom: 1px dotted #004B6B;
387}
388
389a.footnote-reference:hover {
390 border-bottom: 1px solid #6D4100;
391}
392
393a:hover tt {
394 background: #EEE;
395}
3960
=== removed file 'users/_themes/flask/static/small_flask.css'
--- users/_themes/flask/static/small_flask.css 2012-03-05 11:24:27 +0000
+++ users/_themes/flask/static/small_flask.css 1970-01-01 00:00:00 +0000
@@ -1,70 +0,0 @@
1/*
2 * small_flask.css_t
3 * ~~~~~~~~~~~~~~~~~
4 *
5 * :copyright: Copyright 2010 by Armin Ronacher.
6 * :license: Flask Design License, see LICENSE for details.
7 */
8
9body {
10 margin: 0;
11 padding: 20px 30px;
12}
13
14div.documentwrapper {
15 float: none;
16 background: white;
17}
18
19div.sphinxsidebar {
20 display: block;
21 float: none;
22 width: 102.5%;
23 margin: 50px -30px -20px -30px;
24 padding: 10px 20px;
25 background: #333;
26 color: white;
27}
28
29div.sphinxsidebar h3, div.sphinxsidebar h4, div.sphinxsidebar p,
30div.sphinxsidebar h3 a {
31 color: white;
32}
33
34div.sphinxsidebar a {
35 color: #aaa;
36}
37
38div.sphinxsidebar p.logo {
39 display: none;
40}
41
42div.document {
43 width: 100%;
44 margin: 0;
45}
46
47div.related {
48 display: block;
49 margin: 0;
50 padding: 10px 0 20px 0;
51}
52
53div.related ul,
54div.related ul li {
55 margin: 0;
56 padding: 0;
57}
58
59div.footer {
60 display: none;
61}
62
63div.bodywrapper {
64 margin: 0;
65}
66
67div.body {
68 min-height: 0;
69 padding: 0;
70}
710
=== removed file 'users/_themes/flask/theme.conf'
--- users/_themes/flask/theme.conf 2012-03-05 11:24:27 +0000
+++ users/_themes/flask/theme.conf 1970-01-01 00:00:00 +0000
@@ -1,9 +0,0 @@
1[theme]
2inherit = basic
3stylesheet = flasky.css
4pygments_style = flask_theme_support.FlaskyStyle
5
6[options]
7index_logo = ''
8index_logo_height = 120px
9touch_icon =
100
=== removed directory 'users/_themes/flask_small'
=== removed file 'users/_themes/flask_small/layout.html'
--- users/_themes/flask_small/layout.html 2012-03-05 11:24:27 +0000
+++ users/_themes/flask_small/layout.html 1970-01-01 00:00:00 +0000
@@ -1,22 +0,0 @@
1{% extends "basic/layout.html" %}
2{% block header %}
3 {{ super() }}
4 {% if pagename == 'index' %}
5 <div class=indexwrapper>
6 {% endif %}
7{% endblock %}
8{% block footer %}
9 {% if pagename == 'index' %}
10 </div>
11 {% endif %}
12{% endblock %}
13{# do not display relbars #}
14{% block relbar1 %}{% endblock %}
15{% block relbar2 %}
16 {% if theme_github_fork %}
17 <a href="http://github.com/{{ theme_github_fork }}"><img style="position: fixed; top: 0; right: 0; border: 0;"
18 src="http://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub" /></a>
19 {% endif %}
20{% endblock %}
21{% block sidebar1 %}{% endblock %}
22{% block sidebar2 %}{% endblock %}
230
=== removed directory 'users/_themes/flask_small/static'
=== removed file 'users/_themes/flask_small/static/flasky.css_t'
--- users/_themes/flask_small/static/flasky.css_t 2012-03-05 11:24:27 +0000
+++ users/_themes/flask_small/static/flasky.css_t 1970-01-01 00:00:00 +0000
@@ -1,287 +0,0 @@
1/*
2 * flasky.css_t
3 * ~~~~~~~~~~~~
4 *
5 * Sphinx stylesheet -- flasky theme based on nature theme.
6 *
7 * :copyright: Copyright 2007-2010 by the Sphinx team, see AUTHORS.
8 * :license: BSD, see LICENSE for details.
9 *
10 */
11
12@import url("basic.css");
13
14/* -- page layout ----------------------------------------------------------- */
15
16body {
17 font-family: 'Georgia', serif;
18 font-size: 17px;
19 color: #000;
20 background: white;
21 margin: 0;
22 padding: 0;
23}
24
25div.documentwrapper {
26 float: left;
27 width: 100%;
28}
29
30div.bodywrapper {
31 margin: 40px auto 0 auto;
32 width: 700px;
33}
34
35hr {
36 border: 1px solid #B1B4B6;
37}
38
39div.body {
40 background-color: #ffffff;
41 color: #3E4349;
42 padding: 0 30px 30px 30px;
43}
44
45img.floatingflask {
46 padding: 0 0 10px 10px;
47 float: right;
48}
49
50div.footer {
51 text-align: right;
52 color: #888;
53 padding: 10px;
54 font-size: 14px;
55 width: 650px;
56 margin: 0 auto 40px auto;
57}
58
59div.footer a {
60 color: #888;
61 text-decoration: underline;
62}
63
64div.related {
65 line-height: 32px;
66 color: #888;
67}
68
69div.related ul {
70 padding: 0 0 0 10px;
71}
72
73div.related a {
74 color: #444;
75}
76
77/* -- body styles ----------------------------------------------------------- */
78
79a {
80 color: #004B6B;
81 text-decoration: underline;
82}
83
84a:hover {
85 color: #6D4100;
86 text-decoration: underline;
87}
88
89div.body {
90 padding-bottom: 40px; /* saved for footer */
91}
92
93div.body h1,
94div.body h2,
95div.body h3,
96div.body h4,
97div.body h5,
98div.body h6 {
99 font-family: 'Garamond', 'Georgia', serif;
100 font-weight: normal;
101 margin: 30px 0px 10px 0px;
102 padding: 0;
103}
104
105{% if theme_index_logo %}
106div.indexwrapper h1 {
107 text-indent: -999999px;
108 background: url({{ theme_index_logo }}) no-repeat center center;
109 height: {{ theme_index_logo_height }};
110}
111{% endif %}
112
113div.body h2 { font-size: 180%; }
114div.body h3 { font-size: 150%; }
115div.body h4 { font-size: 130%; }
116div.body h5 { font-size: 100%; }
117div.body h6 { font-size: 100%; }
118
119a.headerlink {
120 color: white;
121 padding: 0 4px;
122 text-decoration: none;
123}
124
125a.headerlink:hover {
126 color: #444;
127 background: #eaeaea;
128}
129
130div.body p, div.body dd, div.body li {
131 line-height: 1.4em;
132}
133
134div.admonition {
135 background: #fafafa;
136 margin: 20px -30px;
137 padding: 10px 30px;
138 border-top: 1px solid #ccc;
139 border-bottom: 1px solid #ccc;
140}
141
142div.admonition p.admonition-title {
143 font-family: 'Garamond', 'Georgia', serif;
144 font-weight: normal;
145 font-size: 24px;
146 margin: 0 0 10px 0;
147 padding: 0;
148 line-height: 1;
149}
150
151div.admonition p.last {
152 margin-bottom: 0;
153}
154
155div.highlight{
156 background-color: white;
157}
158
159dt:target, .highlight {
160 background: #FAF3E8;
161}
162
163div.note {
164 background-color: #eee;
165 border: 1px solid #ccc;
166}
167
168div.seealso {
169 background-color: #ffc;
170 border: 1px solid #ff6;
171}
172
173div.topic {
174 background-color: #eee;
175}
176
177div.warning {
178 background-color: #ffe4e4;
179 border: 1px solid #f66;
180}
181
182p.admonition-title {
183 display: inline;
184}
185
186p.admonition-title:after {
187 content: ":";
188}
189
190pre, tt {
191 font-family: 'Consolas', 'Menlo', 'Deja Vu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
192 font-size: 0.85em;
193}
194
195img.screenshot {
196}
197
198tt.descname, tt.descclassname {
199 font-size: 0.95em;
200}
201
202tt.descname {
203 padding-right: 0.08em;
204}
205
206img.screenshot {
207 -moz-box-shadow: 2px 2px 4px #eee;
208 -webkit-box-shadow: 2px 2px 4px #eee;
209 box-shadow: 2px 2px 4px #eee;
210}
211
212table.docutils {
213 border: 1px solid #888;
214 -moz-box-shadow: 2px 2px 4px #eee;
215 -webkit-box-shadow: 2px 2px 4px #eee;
216 box-shadow: 2px 2px 4px #eee;
217}
218
219table.docutils td, table.docutils th {
220 border: 1px solid #888;
221 padding: 0.25em 0.7em;
222}
223
224table.field-list, table.footnote {
225 border: none;
226 -moz-box-shadow: none;
227 -webkit-box-shadow: none;
228 box-shadow: none;
229}
230
231table.footnote {
232 margin: 15px 0;
233 width: 100%;
234 border: 1px solid #eee;
235}
236
237table.field-list th {
238 padding: 0 0.8em 0 0;
239}
240
241table.field-list td {
242 padding: 0;
243}
244
245table.footnote td {
246 padding: 0.5em;
247}
248
249dl {
250 margin: 0;
251 padding: 0;
252}
253
254dl dd {
255 margin-left: 30px;
256}
257
258pre {
259 padding: 0;
260 margin: 15px -30px;
261 padding: 8px;
262 line-height: 1.3em;
263 padding: 7px 30px;
264 background: #eee;
265 border-radius: 2px;
266 -moz-border-radius: 2px;
267 -webkit-border-radius: 2px;
268}
269
270dl pre {
271 margin-left: -60px;
272 padding-left: 60px;
273}
274
275tt {
276 background-color: #ecf0f3;
277 color: #222;
278 /* padding: 1px 2px; */
279}
280
281tt.xref, a tt {
282 background-color: #FBFBFB;
283}
284
285a:hover tt {
286 background: #EEE;
287}
2880
=== removed file 'users/_themes/flask_small/theme.conf'
--- users/_themes/flask_small/theme.conf 2012-03-05 11:24:27 +0000
+++ users/_themes/flask_small/theme.conf 1970-01-01 00:00:00 +0000
@@ -1,10 +0,0 @@
1[theme]
2inherit = basic
3stylesheet = flasky.css
4nosidebar = true
5pygments_style = flask_theme_support.FlaskyStyle
6
7[options]
8index_logo = ''
9index_logo_height = 120px
10github_fork = ''
110
=== removed file 'users/_themes/flask_theme_support.py'
--- users/_themes/flask_theme_support.py 2012-03-05 11:24:27 +0000
+++ users/_themes/flask_theme_support.py 1970-01-01 00:00:00 +0000
@@ -1,86 +0,0 @@
1# flasky extensions. flasky pygments style based on tango style
2from pygments.style import Style
3from pygments.token import Keyword, Name, Comment, String, Error, \
4 Number, Operator, Generic, Whitespace, Punctuation, Other, Literal
5
6
7class FlaskyStyle(Style):
8 background_color = "#f8f8f8"
9 default_style = ""
10
11 styles = {
12 # No corresponding class for the following:
13 #Text: "", # class: ''
14 Whitespace: "underline #f8f8f8", # class: 'w'
15 Error: "#a40000 border:#ef2929", # class: 'err'
16 Other: "#000000", # class 'x'
17
18 Comment: "italic #8f5902", # class: 'c'
19 Comment.Preproc: "noitalic", # class: 'cp'
20
21 Keyword: "bold #004461", # class: 'k'
22 Keyword.Constant: "bold #004461", # class: 'kc'
23 Keyword.Declaration: "bold #004461", # class: 'kd'
24 Keyword.Namespace: "bold #004461", # class: 'kn'
25 Keyword.Pseudo: "bold #004461", # class: 'kp'
26 Keyword.Reserved: "bold #004461", # class: 'kr'
27 Keyword.Type: "bold #004461", # class: 'kt'
28
29 Operator: "#582800", # class: 'o'
30 Operator.Word: "bold #004461", # class: 'ow' - like keywords
31
32 Punctuation: "bold #000000", # class: 'p'
33
34 # because special names such as Name.Class, Name.Function, etc.
35 # are not recognized as such later in the parsing, we choose them
36 # to look the same as ordinary variables.
37 Name: "#000000", # class: 'n'
38 Name.Attribute: "#c4a000", # class: 'na' - to be revised
39 Name.Builtin: "#004461", # class: 'nb'
40 Name.Builtin.Pseudo: "#3465a4", # class: 'bp'
41 Name.Class: "#000000", # class: 'nc' - to be revised
42 Name.Constant: "#000000", # class: 'no' - to be revised
43 Name.Decorator: "#888", # class: 'nd' - to be revised
44 Name.Entity: "#ce5c00", # class: 'ni'
45 Name.Exception: "bold #cc0000", # class: 'ne'
46 Name.Function: "#000000", # class: 'nf'
47 Name.Property: "#000000", # class: 'py'
48 Name.Label: "#f57900", # class: 'nl'
49 Name.Namespace: "#000000", # class: 'nn' - to be revised
50 Name.Other: "#000000", # class: 'nx'
51 Name.Tag: "bold #004461", # class: 'nt' - like a keyword
52 Name.Variable: "#000000", # class: 'nv' - to be revised
53 Name.Variable.Class: "#000000", # class: 'vc' - to be revised
54 Name.Variable.Global: "#000000", # class: 'vg' - to be revised
55 Name.Variable.Instance: "#000000", # class: 'vi' - to be revised
56
57 Number: "#990000", # class: 'm'
58
59 Literal: "#000000", # class: 'l'
60 Literal.Date: "#000000", # class: 'ld'
61
62 String: "#4e9a06", # class: 's'
63 String.Backtick: "#4e9a06", # class: 'sb'
64 String.Char: "#4e9a06", # class: 'sc'
65 String.Doc: "italic #8f5902", # class: 'sd' - like a comment
66 String.Double: "#4e9a06", # class: 's2'
67 String.Escape: "#4e9a06", # class: 'se'
68 String.Heredoc: "#4e9a06", # class: 'sh'
69 String.Interpol: "#4e9a06", # class: 'si'
70 String.Other: "#4e9a06", # class: 'sx'
71 String.Regex: "#4e9a06", # class: 'sr'
72 String.Single: "#4e9a06", # class: 's1'
73 String.Symbol: "#4e9a06", # class: 'ss'
74
75 Generic: "#000000", # class: 'g'
76 Generic.Deleted: "#a40000", # class: 'gd'
77 Generic.Emph: "italic #000000", # class: 'ge'
78 Generic.Error: "#ef2929", # class: 'gr'
79 Generic.Heading: "bold #000080", # class: 'gh'
80 Generic.Inserted: "#00A000", # class: 'gi'
81 Generic.Output: "#888", # class: 'go'
82 Generic.Prompt: "#745334", # class: 'gp'
83 Generic.Strong: "bold #000000", # class: 'gs'
84 Generic.Subheading: "bold #800080", # class: 'gu'
85 Generic.Traceback: "bold #a40000", # class: 'gt'
86 }
870
=== removed file 'users/accounting.rst'
--- users/accounting.rst 2012-02-29 14:08:42 +0000
+++ users/accounting.rst 1970-01-01 00:00:00 +0000
@@ -1,2 +0,0 @@
1Accounting
2==========
30
=== removed file 'users/conf.py'
--- users/conf.py 2012-03-05 11:24:27 +0000
+++ users/conf.py 1970-01-01 00:00:00 +0000
@@ -1,255 +0,0 @@
1# -*- coding: utf-8 -*-
2#
3# OpenERP Technical Documentation configuration file, created by
4# sphinx-quickstart on Fri Feb 17 16:14:06 2012.
5#
6# This file is execfile()d with the current directory set to its containing dir.
7#
8# Note that not all possible configuration values are present in this
9# autogenerated file.
10#
11# All configuration values have a default; values that are commented out
12# serve to show the default.
13
14import sys, os
15
16# If extensions (or modules to document with autodoc) are in another directory,
17# add these directories to sys.path here. If the directory is relative to the
18# documentation root, use os.path.abspath to make it absolute, like shown here.
19#sys.path.insert(0, os.path.abspath('.'))
20sys.path.append(os.path.abspath('_themes'))
21
22# -- General configuration -----------------------------------------------------
23
24# If your documentation needs a minimal Sphinx version, state it here.
25#needs_sphinx = '1.0'
26
27# Add any Sphinx extension module names here, as strings. They can be extensions
28# coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
29extensions = ['sphinx.ext.autodoc', 'sphinx.ext.intersphinx', 'sphinx.ext.todo', 'sphinx.ext.viewcode']
30
31# Add any paths that contain templates here, relative to this directory.
32templates_path = ['_templates']
33
34# The suffix of source filenames.
35source_suffix = '.rst'
36
37# The encoding of source files.
38#source_encoding = 'utf-8-sig'
39
40# The master toctree document.
41master_doc = 'index'
42
43# General information about the project.
44project = u'OpenERP Technical Documentation'
45copyright = u'2012, OpenERP s.a.'
46
47# The version info for the project you're documenting, acts as replacement for
48# |version| and |release|, also used in various other places throughout the
49# built documents.
50#
51# The short X.Y version.
52version = '0.0'
53# The full version, including alpha/beta/rc tags.
54release = '0.0'
55
56# The language for content autogenerated by Sphinx. Refer to documentation
57# for a list of supported languages.
58#language = None
59
60# There are two options for replacing |today|: either, you set today to some
61# non-false value, then it is used:
62#today = ''
63# Else, today_fmt is used as the format for a strftime call.
64#today_fmt = '%B %d, %Y'
65
66# List of patterns, relative to source directory, that match files and
67# directories to ignore when looking for source files.
68exclude_patterns = ['_build']
69
70# The reST default role (used for this markup: `text`) to use for all documents.
71#default_role = None
72
73# If true, '()' will be appended to :func: etc. cross-reference text.
74#add_function_parentheses = True
75
76# If true, the current module name will be prepended to all description
77# unit titles (such as .. function::).
78#add_module_names = True
79
80# If true, sectionauthor and moduleauthor directives will be shown in the
81# output. They are ignored by default.
82#show_authors = False
83
84# The name of the Pygments (syntax highlighting) style to use.
85pygments_style = 'sphinx'
86
87# A list of ignored prefixes for module index sorting.
88#modindex_common_prefix = []
89
90
91# -- Options for HTML output ---------------------------------------------------
92
93# The theme to use for HTML and HTML Help pages. See the documentation for
94# a list of builtin themes.
95html_theme = 'flask'
96
97# Theme options are theme-specific and customize the look and feel of a theme
98# further. For a list of options available for each theme, see the
99# documentation.
100html_theme_options = {
101 "nosidebar": False,
102}
103
104# Add any paths that contain custom themes here, relative to this directory.
105html_theme_path = ['_themes']
106
107# The name for this set of Sphinx documents. If None, it defaults to
108# "<project> v<release> documentation".
109#html_title = None
110
111# A shorter title for the navigation bar. Default is the same as html_title.
112#html_short_title = None
113
114# The name of an image file (relative to this directory) to place at the top
115# of the sidebar.
116#html_logo = None
117
118# The name of an image file (within the static path) to use as favicon of the
119# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
120# pixels large.
121#html_favicon = None
122
123# Add any paths that contain custom static files (such as style sheets) here,
124# relative to this directory. They are copied after the builtin static files,
125# so a file named "default.css" will overwrite the builtin "default.css".
126html_static_path = ['_static']
127
128# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
129# using the given strftime format.
130#html_last_updated_fmt = '%b %d, %Y'
131
132# If true, SmartyPants will be used to convert quotes and dashes to
133# typographically correct entities.
134#html_use_smartypants = True
135
136# Custom sidebar templates, maps document names to template names.
137html_sidebars = {
138 'index': ['sidebarintro.html', 'sourcelink.html', 'searchbox.html'],
139 '**': ['sidebarlogo.html', 'localtoc.html', 'relations.html',
140 'sourcelink.html', 'searchbox.html']
141}
142
143# Additional templates that should be rendered to pages, maps page names to
144# template names.
145#html_additional_pages = {}
146
147# If false, no module index is generated.
148#html_domain_indices = True
149
150# If false, no index is generated.
151#html_use_index = True
152
153# If true, the index is split into individual pages for each letter.
154#html_split_index = False
155
156# If true, links to the reST sources are added to the pages.
157#html_show_sourcelink = True
158
159# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
160#html_show_sphinx = True
161
162# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
163#html_show_copyright = True
164
165# If true, an OpenSearch description file will be output, and all pages will
166# contain a <link> tag referring to it. The value of this option must be the
167# base URL from which the finished HTML is served.
168#html_use_opensearch = ''
169
170# This is the file name suffix for HTML files (e.g. ".xhtml").
171#html_file_suffix = None
172
173# Output file base name for HTML help builder.
174htmlhelp_basename = 'openerp-technical-documentation-doc'
175
176
177# -- Options for LaTeX output --------------------------------------------------
178
179latex_elements = {
180# The paper size ('letterpaper' or 'a4paper').
181#'papersize': 'letterpaper',
182
183# The font size ('10pt', '11pt' or '12pt').
184#'pointsize': '10pt',
185
186# Additional stuff for the LaTeX preamble.
187#'preamble': '',
188}
189
190# Grouping the document tree into LaTeX files. List of tuples
191# (source start file, target name, title, author, documentclass [howto/manual]).
192latex_documents = [
193 ('index', 'openerp-technical-documentation.tex', u'OpenERP Technical Documentation',
194 u'OpenERP s.a.', 'manual'),
195]
196
197# The name of an image file (relative to this directory) to place at the top of
198# the title page.
199#latex_logo = None
200
201# For "manual" documents, if this is true, then toplevel headings are parts,
202# not chapters.
203#latex_use_parts = False
204
205# If true, show page references after internal links.
206#latex_show_pagerefs = False
207
208# If true, show URL addresses after external links.
209#latex_show_urls = False
210
211# Documents to append as an appendix to all manuals.
212#latex_appendices = []
213
214# If false, no module index is generated.
215#latex_domain_indices = True
216
217
218# -- Options for manual page output --------------------------------------------
219
220# One entry per manual page. List of tuples
221# (source start file, name, description, authors, manual section).
222man_pages = [
223 ('index', 'openerp-technical-documentation', u'OpenERP Technical Documentation',
224 [u'OpenERP s.a.'], 1)
225]
226
227# If true, show URL addresses after external links.
228#man_show_urls = False
229
230
231# -- Options for Texinfo output ------------------------------------------------
232
233# Grouping the document tree into Texinfo files. List of tuples
234# (source start file, target name, title, author,
235# dir menu entry, description, category)
236texinfo_documents = [
237 ('index', 'OpenERPTechnicalDocumentation', u'OpenERP Technical Documentation',
238 u'OpenERP s.a.', 'OpenERPTechnicalDocumentation', 'One line description of project.',
239 'Miscellaneous'),
240]
241
242# Documents to append as an appendix to all manuals.
243#texinfo_appendices = []
244
245# If false, no module index is generated.
246#texinfo_domain_indices = True
247
248# How to display URL addresses: 'footnote', 'no', or 'inline'.
249#texinfo_show_urls = 'footnote'
250
251
252# Example configuration for intersphinx: refer to the Python standard library.
253intersphinx_mapping = {
254 'http://docs.python.org/': None,
255 }
2560
=== removed file 'users/index.rst'
--- users/index.rst 2012-03-05 11:24:27 +0000
+++ users/index.rst 1970-01-01 00:00:00 +0000
@@ -1,7 +0,0 @@
1
2.. _users:
3
4OpenERP User Documentation
5==========================
6
7.. include:: users.rst.inc
80
=== removed file 'users/sale.rst'
--- users/sale.rst 2012-02-29 14:08:42 +0000
+++ users/sale.rst 1970-01-01 00:00:00 +0000
@@ -1,2 +0,0 @@
1Sale
2====
30
=== removed file 'users/tutorial.rst'
--- users/tutorial.rst 2012-02-29 14:08:42 +0000
+++ users/tutorial.rst 1970-01-01 00:00:00 +0000
@@ -1,4 +0,0 @@
1.. _Tutorial:
2
3Tutorial
4========
50
=== removed file 'users/users.rst.inc'
--- users/users.rst.inc 2012-03-05 13:07:32 +0000
+++ users/users.rst.inc 1970-01-01 00:00:00 +0000
@@ -1,1 +0,0 @@
1

Subscribers

People subscribed via source and target branches