pyramid-localize 0.0.1__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. pyramid_localize-0.0.1/CHANGES.rst +7 -0
  2. pyramid_localize-0.0.1/MANIFEST.in +4 -0
  3. pyramid_localize-0.0.1/PKG-INFO +68 -0
  4. pyramid_localize-0.0.1/README.rst +38 -0
  5. pyramid_localize-0.0.1/docs/Makefile +153 -0
  6. pyramid_localize-0.0.1/docs/make.bat +190 -0
  7. pyramid_localize-0.0.1/docs/source/advanced.rst +27 -0
  8. pyramid_localize-0.0.1/docs/source/api/models.rst +5 -0
  9. pyramid_localize-0.0.1/docs/source/api/request.rst +12 -0
  10. pyramid_localize-0.0.1/docs/source/api/tools.rst +7 -0
  11. pyramid_localize-0.0.1/docs/source/api/views.rst +10 -0
  12. pyramid_localize-0.0.1/docs/source/api.rst +10 -0
  13. pyramid_localize-0.0.1/docs/source/basic.rst +71 -0
  14. pyramid_localize-0.0.1/docs/source/conf.py +309 -0
  15. pyramid_localize-0.0.1/docs/source/index.rst +35 -0
  16. pyramid_localize-0.0.1/pyramid_localize/__init__.py +54 -0
  17. pyramid_localize-0.0.1/pyramid_localize/models.py +38 -0
  18. pyramid_localize-0.0.1/pyramid_localize/request.py +101 -0
  19. pyramid_localize-0.0.1/pyramid_localize/routing/__init__.py +1 -0
  20. pyramid_localize-0.0.1/pyramid_localize/routing/predicates.py +14 -0
  21. pyramid_localize-0.0.1/pyramid_localize/subscribers/__init__.py +2 -0
  22. pyramid_localize-0.0.1/pyramid_localize/subscribers/fake.py +28 -0
  23. pyramid_localize-0.0.1/pyramid_localize/subscribers/i18n.py +28 -0
  24. pyramid_localize-0.0.1/pyramid_localize/tools.py +138 -0
  25. pyramid_localize-0.0.1/pyramid_localize/views/__init__.py +1 -0
  26. pyramid_localize-0.0.1/pyramid_localize/views/catalog.py +205 -0
  27. pyramid_localize-0.0.1/pyramid_localize.egg-info/PKG-INFO +68 -0
  28. pyramid_localize-0.0.1/pyramid_localize.egg-info/SOURCES.txt +38 -0
  29. pyramid_localize-0.0.1/pyramid_localize.egg-info/dependency_links.txt +1 -0
  30. pyramid_localize-0.0.1/pyramid_localize.egg-info/not-zip-safe +1 -0
  31. pyramid_localize-0.0.1/pyramid_localize.egg-info/requires.txt +16 -0
  32. pyramid_localize-0.0.1/pyramid_localize.egg-info/top_level.txt +2 -0
  33. pyramid_localize-0.0.1/setup.cfg +14 -0
  34. pyramid_localize-0.0.1/setup.py +70 -0
  35. pyramid_localize-0.0.1/tests/__init__.py +35 -0
  36. pyramid_localize-0.0.1/tests/test_predicates.py +46 -0
  37. pyramid_localize-0.0.1/tests/test_request.py +79 -0
  38. pyramid_localize-0.0.1/tests/test_subscribers.py +89 -0
  39. pyramid_localize-0.0.1/tests/test_tools.py +150 -0
@@ -0,0 +1,7 @@
1
+ =======
2
+ CHANGES
3
+ =======
4
+
5
+ 0.0.1
6
+ -----
7
+ - initial release [fizyk]
@@ -0,0 +1,4 @@
1
+ include *.rst *.py
2
+ recursive-include pyramid_localize *.py
3
+ recursive-include docs *
4
+ prune docs/build
@@ -0,0 +1,68 @@
1
+ Metadata-Version: 1.1
2
+ Name: pyramid_localize
3
+ Version: 0.0.1
4
+ Summary: Package to provide translation methods for pyramid, and means to reload translations without stopping the application
5
+ Home-page: https://github.com/fizyk/pyramid_routing
6
+ Author: Grzegorz Sliwinski
7
+ Author-email: username: fizyk, domain: fizyk.net.pl
8
+ License: UNKNOWN
9
+ Description: pyramid_localize
10
+ ================
11
+
12
+ Package to provide translation methods for pyramid, and means to reload translations without stopping the application
13
+
14
+ .. image:: https://travis-ci.org/fizyk/pyramid_localize.png?branch=master
15
+ :target: https://travis-ci.org/fizyk/pyramid_localize
16
+ :alt: Tests for RandomWords
17
+
18
+ .. image:: https://coveralls.io/repos/fizyk/pyramid_localize/badge.png?branch=master
19
+ :target: https://coveralls.io/r/fizyk/pyramid_localize?branch=master
20
+ :alt: Coverage Status
21
+
22
+ .. image:: https://pypip.in/v/pyramid_localize/badge.png
23
+ :target: https://crate.io/packages/pyramid_localize/
24
+ :alt: Latest PyPI version
25
+
26
+ .. image:: https://pypip.in/d/pyramid_localize/badge.png
27
+ :target: https://crate.io/packages/pyramid_localize/
28
+ :alt: Number of PyPI downloads
29
+
30
+ Documentation can be found on `readthedocs.org <https://pyramid_localize.readthedocs.org/en/latest/>`_.
31
+
32
+
33
+ Instalation:
34
+ ============
35
+
36
+ ``pip install pyramid_localize``
37
+
38
+ or add **pyramid_localize** to your **setup.py** requirements.
39
+
40
+
41
+ Tests:
42
+ ======
43
+
44
+ You'll need: **nose**, **WebTest**, **coverage** to run tests, and then:
45
+
46
+ ``python setup.py nosetests``
47
+
48
+
49
+ =======
50
+ CHANGES
51
+ =======
52
+
53
+ 0.0.1
54
+ -----
55
+ - initial release [fizyk]
56
+
57
+ Keywords: python template
58
+ Platform: UNKNOWN
59
+ Classifier: Development Status :: 5 - Production/Stable
60
+ Classifier: Environment :: Web Environment
61
+ Classifier: Intended Audience :: Developers
62
+ Classifier: License :: Public Domain
63
+ Classifier: Natural Language :: English
64
+ Classifier: Operating System :: OS Independent
65
+ Classifier: Programming Language :: Python
66
+ Classifier: Programming Language :: Python :: 2.7
67
+ Classifier: Programming Language :: Python :: 3
68
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
@@ -0,0 +1,38 @@
1
+ pyramid_localize
2
+ ================
3
+
4
+ Package to provide translation methods for pyramid, and means to reload translations without stopping the application
5
+
6
+ .. image:: https://travis-ci.org/fizyk/pyramid_localize.png?branch=master
7
+ :target: https://travis-ci.org/fizyk/pyramid_localize
8
+ :alt: Tests for RandomWords
9
+
10
+ .. image:: https://coveralls.io/repos/fizyk/pyramid_localize/badge.png?branch=master
11
+ :target: https://coveralls.io/r/fizyk/pyramid_localize?branch=master
12
+ :alt: Coverage Status
13
+
14
+ .. image:: https://pypip.in/v/pyramid_localize/badge.png
15
+ :target: https://crate.io/packages/pyramid_localize/
16
+ :alt: Latest PyPI version
17
+
18
+ .. image:: https://pypip.in/d/pyramid_localize/badge.png
19
+ :target: https://crate.io/packages/pyramid_localize/
20
+ :alt: Number of PyPI downloads
21
+
22
+ Documentation can be found on `readthedocs.org <https://pyramid_localize.readthedocs.org/en/latest/>`_.
23
+
24
+
25
+ Instalation:
26
+ ============
27
+
28
+ ``pip install pyramid_localize``
29
+
30
+ or add **pyramid_localize** to your **setup.py** requirements.
31
+
32
+
33
+ Tests:
34
+ ======
35
+
36
+ You'll need: **nose**, **WebTest**, **coverage** to run tests, and then:
37
+
38
+ ``python setup.py nosetests``
@@ -0,0 +1,153 @@
1
+ # Makefile for Sphinx documentation
2
+ #
3
+
4
+ # You can set these variables from the command line.
5
+ SPHINXOPTS =
6
+ SPHINXBUILD = sphinx-build
7
+ PAPER =
8
+ BUILDDIR = build
9
+
10
+ # Internal variables.
11
+ PAPEROPT_a4 = -D latex_paper_size=a4
12
+ PAPEROPT_letter = -D latex_paper_size=letter
13
+ ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
14
+ # the i18n builder cannot share the environment and doctrees with the others
15
+ I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
16
+
17
+ .PHONY: help clean html html_venv dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest gettext
18
+
19
+ help:
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
+
41
+ clean:
42
+ -rm -rf $(BUILDDIR)/*
43
+
44
+ html:
45
+ $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
46
+ @echo
47
+ @echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
48
+
49
+ dirhtml:
50
+ $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
51
+ @echo
52
+ @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
53
+
54
+ singlehtml:
55
+ $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
56
+ @echo
57
+ @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
58
+
59
+ pickle:
60
+ $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
61
+ @echo
62
+ @echo "Build finished; now you can process the pickle files."
63
+
64
+ json:
65
+ $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
66
+ @echo
67
+ @echo "Build finished; now you can process the JSON files."
68
+
69
+ htmlhelp:
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
+
75
+ qthelp:
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/Subscribepyramidplugin.qhcp"
81
+ @echo "To view the help file:"
82
+ @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/Subscribepyramidplugin.qhc"
83
+
84
+ devhelp:
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/Subscribepyramidplugin"
90
+ @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/Subscribepyramidplugin"
91
+ @echo "# devhelp"
92
+
93
+ epub:
94
+ $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
95
+ @echo
96
+ @echo "Build finished. The epub file is in $(BUILDDIR)/epub."
97
+
98
+ latex:
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
+
105
+ latexpdf:
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
+
111
+ text:
112
+ $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
113
+ @echo
114
+ @echo "Build finished. The text files are in $(BUILDDIR)/text."
115
+
116
+ man:
117
+ $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
118
+ @echo
119
+ @echo "Build finished. The manual pages are in $(BUILDDIR)/man."
120
+
121
+ texinfo:
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
+
128
+ info:
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
+
134
+ gettext:
135
+ $(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
136
+ @echo
137
+ @echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
138
+
139
+ changes:
140
+ $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
141
+ @echo
142
+ @echo "The overview file is in $(BUILDDIR)/changes."
143
+
144
+ linkcheck:
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
+
150
+ doctest:
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."
@@ -0,0 +1,190 @@
1
+ @ECHO OFF
2
+
3
+ REM Command file for Sphinx documentation
4
+
5
+ if "%SPHINXBUILD%" == "" (
6
+ set SPHINXBUILD=sphinx-build
7
+ )
8
+ set BUILDDIR=build
9
+ set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% source
10
+ set I18NSPHINXOPTS=%SPHINXOPTS% source
11
+ if NOT "%PAPER%" == "" (
12
+ set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS%
13
+ set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS%
14
+ )
15
+
16
+ if "%1" == "" goto help
17
+
18
+ if "%1" == "help" (
19
+ :help
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. text to make text files
32
+ echo. man to make manual pages
33
+ echo. texinfo to make Texinfo files
34
+ echo. gettext to make PO message catalogs
35
+ echo. changes to make an overview over all changed/added/deprecated items
36
+ echo. linkcheck to check all external links for integrity
37
+ echo. doctest to run all doctests embedded in the documentation if enabled
38
+ goto end
39
+ )
40
+
41
+ if "%1" == "clean" (
42
+ for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i
43
+ del /q /s %BUILDDIR%\*
44
+ goto end
45
+ )
46
+
47
+ if "%1" == "html" (
48
+ %SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
49
+ if errorlevel 1 exit /b 1
50
+ echo.
51
+ echo.Build finished. The HTML pages are in %BUILDDIR%/html.
52
+ goto end
53
+ )
54
+
55
+ if "%1" == "dirhtml" (
56
+ %SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
57
+ if errorlevel 1 exit /b 1
58
+ echo.
59
+ echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
60
+ goto end
61
+ )
62
+
63
+ if "%1" == "singlehtml" (
64
+ %SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml
65
+ if errorlevel 1 exit /b 1
66
+ echo.
67
+ echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml.
68
+ goto end
69
+ )
70
+
71
+ if "%1" == "pickle" (
72
+ %SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
73
+ if errorlevel 1 exit /b 1
74
+ echo.
75
+ echo.Build finished; now you can process the pickle files.
76
+ goto end
77
+ )
78
+
79
+ if "%1" == "json" (
80
+ %SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
81
+ if errorlevel 1 exit /b 1
82
+ echo.
83
+ echo.Build finished; now you can process the JSON files.
84
+ goto end
85
+ )
86
+
87
+ if "%1" == "htmlhelp" (
88
+ %SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
89
+ if errorlevel 1 exit /b 1
90
+ echo.
91
+ echo.Build finished; now you can run HTML Help Workshop with the ^
92
+ .hhp project file in %BUILDDIR%/htmlhelp.
93
+ goto end
94
+ )
95
+
96
+ if "%1" == "qthelp" (
97
+ %SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
98
+ if errorlevel 1 exit /b 1
99
+ echo.
100
+ echo.Build finished; now you can run "qcollectiongenerator" with the ^
101
+ .qhcp project file in %BUILDDIR%/qthelp, like this:
102
+ echo.^> qcollectiongenerator %BUILDDIR%\qthelp\Subscribepyramidplugin.qhcp
103
+ echo.To view the help file:
104
+ echo.^> assistant -collectionFile %BUILDDIR%\qthelp\Subscribepyramidplugin.ghc
105
+ goto end
106
+ )
107
+
108
+ if "%1" == "devhelp" (
109
+ %SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp
110
+ if errorlevel 1 exit /b 1
111
+ echo.
112
+ echo.Build finished.
113
+ goto end
114
+ )
115
+
116
+ if "%1" == "epub" (
117
+ %SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub
118
+ if errorlevel 1 exit /b 1
119
+ echo.
120
+ echo.Build finished. The epub file is in %BUILDDIR%/epub.
121
+ goto end
122
+ )
123
+
124
+ if "%1" == "latex" (
125
+ %SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
126
+ if errorlevel 1 exit /b 1
127
+ echo.
128
+ echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
129
+ goto end
130
+ )
131
+
132
+ if "%1" == "text" (
133
+ %SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text
134
+ if errorlevel 1 exit /b 1
135
+ echo.
136
+ echo.Build finished. The text files are in %BUILDDIR%/text.
137
+ goto end
138
+ )
139
+
140
+ if "%1" == "man" (
141
+ %SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man
142
+ if errorlevel 1 exit /b 1
143
+ echo.
144
+ echo.Build finished. The manual pages are in %BUILDDIR%/man.
145
+ goto end
146
+ )
147
+
148
+ if "%1" == "texinfo" (
149
+ %SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo
150
+ if errorlevel 1 exit /b 1
151
+ echo.
152
+ echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo.
153
+ goto end
154
+ )
155
+
156
+ if "%1" == "gettext" (
157
+ %SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale
158
+ if errorlevel 1 exit /b 1
159
+ echo.
160
+ echo.Build finished. The message catalogs are in %BUILDDIR%/locale.
161
+ goto end
162
+ )
163
+
164
+ if "%1" == "changes" (
165
+ %SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
166
+ if errorlevel 1 exit /b 1
167
+ echo.
168
+ echo.The overview file is in %BUILDDIR%/changes.
169
+ goto end
170
+ )
171
+
172
+ if "%1" == "linkcheck" (
173
+ %SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
174
+ if errorlevel 1 exit /b 1
175
+ echo.
176
+ echo.Link check complete; look for any errors in the above output ^
177
+ or in %BUILDDIR%/linkcheck/output.txt.
178
+ goto end
179
+ )
180
+
181
+ if "%1" == "doctest" (
182
+ %SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
183
+ if errorlevel 1 exit /b 1
184
+ echo.
185
+ echo.Testing of doctests in the sources finished, look at the ^
186
+ results in %BUILDDIR%/doctest/output.txt.
187
+ goto end
188
+ )
189
+
190
+ :end
@@ -0,0 +1,27 @@
1
+ Advanced
2
+ ========
3
+
4
+ Localized URLs
5
+ --------------
6
+
7
+ **pyramid_localize** allows to include locale definition inside routes. In order to utilise this functionality, your request factory, have to inherit :class:`~pyramid_localize.request.LocalizeRequestMixin`, and your routes, you wish to localise should include a _LOCALE_ parameter. You can pass it to route_url, but if you do not, this mixin will set it to current locale, making sure, it's always set. :func:`~pyramid_localize.tools.locale_negotiator` set by pyramid_localize will take route locale in before any other possibility.
8
+
9
+
10
+ .. _web-api:
11
+
12
+ Web API
13
+ -------
14
+
15
+ Web API is a collection of actions used to work on translations files.
16
+
17
+ At the moment, it includes loading them into application, creating /updating catalogues for all available translations, compiling, and reloading translations without the need to restart application.
18
+
19
+ Lists of actions per their route names:
20
+
21
+ * **localize:index** action, lists all configured translation domains, and it's file along with data such as modification date. See :meth:`~pyramid_localize.views.catalog.CatalogView.index`.
22
+
23
+ * **localize:update** action, updates all .po files from respective .pot's, and if needed initializes them. See :meth:`~pyramid_localize.views.catalog.CatalogView.update_catalog`.
24
+
25
+ * **localize:compile** action, compiles all .po translation files into .mo used by gettext to serve translations on your site. See :meth:`~pyramid_localize.views.catalog.CatalogView.compile_catalog`.
26
+
27
+ * **localize:reload** action is more like an example action, but still usable. Reloads translation catalogues for application. See :meth:`~pyramid_localize.views.catalog.CatalogView.reload_catalog`.
@@ -0,0 +1,5 @@
1
+ models
2
+ ======
3
+
4
+ .. automodule:: pyramid_localize.models
5
+ :members:
@@ -0,0 +1,12 @@
1
+ request
2
+ =======
3
+
4
+ .. automodule:: pyramid_localize.request
5
+ :members: locale, locale_id, database_locales, locales
6
+
7
+
8
+ LocalizeRequestMixin
9
+ --------------------
10
+
11
+ .. autoclass:: LocalizeRequestMixin
12
+ :members:
@@ -0,0 +1,7 @@
1
+ tools
2
+ =====
3
+
4
+ .. automodule:: pyramid_localize.tools
5
+ :members:
6
+
7
+
@@ -0,0 +1,10 @@
1
+ views
2
+ =====
3
+
4
+ catalog
5
+ -------
6
+
7
+ .. automodule:: pyramid_localize.views.catalog
8
+
9
+ .. autoclass:: CatalogView
10
+ :members:
@@ -0,0 +1,10 @@
1
+ API
2
+ ---
3
+
4
+ .. toctree::
5
+ :maxdepth: 2
6
+
7
+ api/models
8
+ api/request
9
+ api/tools
10
+ api/views
@@ -0,0 +1,71 @@
1
+ Basic usage
2
+ ===========
3
+
4
+ Installation
5
+ ------------
6
+
7
+ To install pyramid_localize, run:
8
+
9
+ ``pip install pyramid_localize``
10
+
11
+ or add **pyramid_localize** to your **setup.py** requirements.
12
+
13
+
14
+ Include in your project
15
+ -----------------------
16
+
17
+ To use this plugin, simply include it into your configurator object:
18
+
19
+ .. code-block:: python
20
+
21
+ config.include('pyramid_localize')
22
+
23
+ pyramid_localize will add translation methods both to request object and for template.
24
+
25
+ Using without configuration
26
+ ---------------------------
27
+
28
+ Basic usage won't require any additional plugin's configuration. You just include the plugin, and make sure you have a `Babel <http://babel.edgewall.org/>`_ installed in the same environment. You can either install *babel* on your own, or add dependency to **pyramid_localize[babel]**. This is introduced, to allow creating code, that both works with translations and without, see :ref:`fake-translations`.
29
+
30
+ However in this case, all translation configuration would need to be done within Your application, as described in chapter `Internationalization and Localization <http://docs.pylonsproject.org/projects/pyramid/en/1.4-branch/narr/i18n.html>`_ of pyramid's documentation.
31
+
32
+ Configuration
33
+ -------------
34
+
35
+ This is full usage example, where **pyramid_localize** provides everything needed for your application, including :func:`~pyramid_localize.tools.locale_negotiator`, and sqlalchemy model for :class:`~pyramid_localize.models.Language`, to be able to store localized data in database.
36
+
37
+ .. code-block:: yaml
38
+
39
+ localize:
40
+ pybabel: pybabel # pybabel's bin localisation. Used to call compile and extract commands
41
+ domain: APP_DOMAIN # your application domain name
42
+ locales: # available and default locale for your app
43
+ available: [en, de, pl]
44
+ default: en
45
+ translation:
46
+ dirs: 'roots.app:resources/locale' # directory, where translatons can be found, might be a list
47
+ # destination, where .po and .mo files will be created
48
+ # can be same format as pyramid's asset path
49
+ destination: 'app:resources/locale'
50
+ # sources, where translations can be found domain: localisation
51
+ # can be same format as pyramid's asset path
52
+ sources:
53
+ APP_DOMAIN: 'app:resources/locale/'
54
+ PACKAGE: 'package.subpackage:resources/locale/'
55
+
56
+ Having configured this, your app, and all subpackages will be fully localized, you'll also have the ability to automatically reload translations without having to restart application. See :ref:`web-api`.
57
+
58
+
59
+ .. _fake-translations:
60
+
61
+ Fake translation support
62
+ ------------------------
63
+
64
+ In order to be able to allow application creation, that will be usable with translated applications, and those without translations, pyramid_localize has simple switch, which detects presence of babel.
65
+
66
+ If Babel will not be found, then pyramid_localize will install dummy translation methods, that will do nothing, except placing translation string args in place, after getting all the arguments, so You can still create apps, or pyramid plugins using translation functionality.
67
+
68
+ Code behind that can be seen here :func:`pyramid_localize.tools.dummy_autotranslate`.
69
+
70
+
71
+