##// END OF EJS Templates
Remove matplotlib requirement for building docs...
Thomas Kluyver -
Show More
@@ -1,12 +1,12 b''
1 1 .. _api-index:
2 2
3 3 ###################
4 4 The IPython API
5 5 ###################
6 6
7 .. htmlonly::
7 .. only:: html
8 8
9 9 :Release: |version|
10 10 :Date: |today|
11 11
12 12 .. include:: generated/gen.txt
@@ -1,298 +1,295 b''
1 1 # -*- coding: utf-8 -*-
2 2 #
3 3 # IPython documentation build configuration file.
4 4
5 5 # NOTE: This file has been edited manually from the auto-generated one from
6 6 # sphinx. Do NOT delete and re-generate. If any changes from sphinx are
7 7 # needed, generate a scratch one and merge by hand any new fields needed.
8 8
9 9 #
10 10 # This file is execfile()d with the current directory set to its containing dir.
11 11 #
12 12 # The contents of this file are pickled, so don't put values in the namespace
13 13 # that aren't pickleable (module imports are okay, they're removed automatically).
14 14 #
15 15 # All configuration values have a default value; values that are commented out
16 16 # serve to show the default value.
17 17
18 18 import sys, os
19 19
20 20 ON_RTD = os.environ.get('READTHEDOCS', None) == 'True'
21 21
22 22 if ON_RTD:
23 23 # Mock the presence of matplotlib, which we don't have on RTD
24 24 # see
25 25 # http://read-the-docs.readthedocs.io/en/latest/faq.html
26 26 tags.add('rtd')
27 27
28 28 # RTD doesn't use the Makefile, so re-run autogen_{things}.py here.
29 29 for name in ('config', 'api', 'magics', 'shortcuts'):
30 30 fname = 'autogen_{}.py'.format(name)
31 31 fpath = os.path.abspath(os.path.join('..', fname))
32 32 with open(fpath) as f:
33 33 exec(compile(f.read(), fname, 'exec'), {
34 34 '__file__': fpath,
35 35 '__name__': '__main__',
36 36 })
37 37 else:
38 38 import sphinx_rtd_theme
39 39 html_theme = "sphinx_rtd_theme"
40 40 html_theme_path = [sphinx_rtd_theme.get_html_theme_path()]
41 41
42 42 # If your extensions are in another directory, add it here. If the directory
43 43 # is relative to the documentation root, use os.path.abspath to make it
44 44 # absolute, like shown here.
45 45 sys.path.insert(0, os.path.abspath('../sphinxext'))
46 46
47 47 # We load the ipython release info into a dict by explicit execution
48 48 iprelease = {}
49 49 exec(compile(open('../../IPython/core/release.py').read(), '../../IPython/core/release.py', 'exec'),iprelease)
50 50
51 51 # General configuration
52 52 # ---------------------
53 53
54 54 # Add any Sphinx extension module names here, as strings. They can be extensions
55 55 # coming with Sphinx (named 'sphinx.ext.*') or your custom ones.
56 56 extensions = [
57 'matplotlib.sphinxext.mathmpl',
58 'matplotlib.sphinxext.only_directives',
59 'matplotlib.sphinxext.plot_directive',
60 57 'sphinx.ext.autodoc',
61 58 'sphinx.ext.autosummary',
62 59 'sphinx.ext.doctest',
63 60 'sphinx.ext.inheritance_diagram',
64 61 'sphinx.ext.intersphinx',
65 62 'IPython.sphinxext.ipython_console_highlighting',
66 63 'IPython.sphinxext.ipython_directive',
67 64 'sphinx.ext.napoleon', # to preprocess docstrings
68 65 'github', # for easy GitHub links
69 66 'magics',
70 67 ]
71 68
72 69 if ON_RTD:
73 70 # Remove extensions not currently supported on RTD
74 71 extensions.remove('matplotlib.sphinxext.only_directives')
75 72 extensions.remove('matplotlib.sphinxext.mathmpl')
76 73 extensions.remove('matplotlib.sphinxext.plot_directive')
77 74 extensions.remove('IPython.sphinxext.ipython_directive')
78 75 extensions.remove('IPython.sphinxext.ipython_console_highlighting')
79 76
80 77 # Add any paths that contain templates here, relative to this directory.
81 78 templates_path = ['_templates']
82 79
83 80 # The suffix of source filenames.
84 81 source_suffix = '.rst'
85 82
86 83 rst_prolog = ''
87 84
88 85 def is_stable(extra):
89 86 for ext in {'dev', 'b', 'rc'}:
90 87 if ext in extra:
91 88 return False
92 89 return True
93 90
94 91 if is_stable(iprelease['_version_extra']):
95 92 tags.add('ipystable')
96 93 else:
97 94 tags.add('ipydev')
98 95 rst_prolog += """
99 96 .. warning::
100 97
101 98 This documentation covers a development version of IPython. The development
102 99 version may differ significantly from the latest stable release.
103 100 """
104 101
105 102 rst_prolog += """
106 103 .. important::
107 104
108 105 This documentation covers IPython versions 6.0 and higher. Beginning with
109 106 version 6.0, IPython stopped supporting compatibility with Python versions
110 107 lower than 3.3 including all versions of Python 2.7.
111 108
112 109 If you are looking for an IPython version compatible with Python 2.7,
113 110 please use the IPython 5.x LTS release and refer to its documentation (LTS
114 111 is the long term support release).
115 112
116 113 """
117 114
118 115 # The master toctree document.
119 116 master_doc = 'index'
120 117
121 118 # General substitutions.
122 119 project = 'IPython'
123 120 copyright = 'The IPython Development Team'
124 121
125 122 # ghissue config
126 123 github_project_url = "https://github.com/ipython/ipython"
127 124
128 125 # numpydoc config
129 126 numpydoc_show_class_members = False # Otherwise Sphinx emits thousands of warnings
130 127 numpydoc_class_members_toctree = False
131 128
132 129 # The default replacements for |version| and |release|, also used in various
133 130 # other places throughout the built documents.
134 131 #
135 132 # The full version, including alpha/beta/rc tags.
136 133 release = "%s" % iprelease['version']
137 134 # Just the X.Y.Z part, no '-dev'
138 135 version = iprelease['version'].split('-', 1)[0]
139 136
140 137
141 138 # There are two options for replacing |today|: either, you set today to some
142 139 # non-false value, then it is used:
143 140 #today = ''
144 141 # Else, today_fmt is used as the format for a strftime call.
145 142 today_fmt = '%B %d, %Y'
146 143
147 144 # List of documents that shouldn't be included in the build.
148 145 #unused_docs = []
149 146
150 147 # Exclude these glob-style patterns when looking for source files. They are
151 148 # relative to the source/ directory.
152 149 exclude_patterns = ['whatsnew/pr']
153 150
154 151
155 152 # If true, '()' will be appended to :func: etc. cross-reference text.
156 153 #add_function_parentheses = True
157 154
158 155 # If true, the current module name will be prepended to all description
159 156 # unit titles (such as .. function::).
160 157 #add_module_names = True
161 158
162 159 # If true, sectionauthor and moduleauthor directives will be shown in the
163 160 # output. They are ignored by default.
164 161 #show_authors = False
165 162
166 163 # The name of the Pygments (syntax highlighting) style to use.
167 164 pygments_style = 'sphinx'
168 165
169 166 # Set the default role so we can use `foo` instead of ``foo``
170 167 default_role = 'literal'
171 168
172 169 # Options for HTML output
173 170 # -----------------------
174 171
175 172 # The style sheet to use for HTML and HTML Help pages. A file of that name
176 173 # must exist either in Sphinx' static/ path, or in one of the custom paths
177 174 # given in html_static_path.
178 175 # html_style = 'default.css'
179 176
180 177
181 178 # The name for this set of Sphinx documents. If None, it defaults to
182 179 # "<project> v<release> documentation".
183 180 #html_title = None
184 181
185 182 # The name of an image file (within the static path) to place at the top of
186 183 # the sidebar.
187 184 #html_logo = None
188 185
189 186 # Add any paths that contain custom static files (such as style sheets) here,
190 187 # relative to this directory. They are copied after the builtin static files,
191 188 # so a file named "default.css" will overwrite the builtin "default.css".
192 189 html_static_path = ['_static']
193 190
194 191 # Favicon needs the directory name
195 192 html_favicon = '_static/favicon.ico'
196 193 # If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
197 194 # using the given strftime format.
198 195 html_last_updated_fmt = '%b %d, %Y'
199 196
200 197 # If true, SmartyPants will be used to convert quotes and dashes to
201 198 # typographically correct entities.
202 199 #html_use_smartypants = True
203 200
204 201 # Custom sidebar templates, maps document names to template names.
205 202 #html_sidebars = {}
206 203
207 204 # Additional templates that should be rendered to pages, maps page names to
208 205 # template names.
209 206 html_additional_pages = {
210 207 'interactive/htmlnotebook': 'notebook_redirect.html',
211 208 'interactive/notebook': 'notebook_redirect.html',
212 209 'interactive/nbconvert': 'notebook_redirect.html',
213 210 'interactive/public_server': 'notebook_redirect.html',
214 211 }
215 212
216 213 # If false, no module index is generated.
217 214 #html_use_modindex = True
218 215
219 216 # If true, the reST sources are included in the HTML build as _sources/<name>.
220 217 #html_copy_source = True
221 218
222 219 # If true, an OpenSearch description file will be output, and all pages will
223 220 # contain a <link> tag referring to it. The value of this option must be the
224 221 # base URL from which the finished HTML is served.
225 222 #html_use_opensearch = ''
226 223
227 224 # If nonempty, this is the file name suffix for HTML files (e.g. ".xhtml").
228 225 #html_file_suffix = ''
229 226
230 227 # Output file base name for HTML help builder.
231 228 htmlhelp_basename = 'ipythondoc'
232 229
233 230 intersphinx_mapping = {'python': ('https://docs.python.org/3/', None),
234 231 'rpy2': ('https://rpy2.readthedocs.io/en/version_2.8.x/', None),
235 232 'traitlets': ('https://traitlets.readthedocs.io/en/latest/', None),
236 233 'jupyterclient': ('https://jupyter-client.readthedocs.io/en/latest/', None),
237 234 'ipyparallel': ('https://ipyparallel.readthedocs.io/en/latest/', None),
238 235 'jupyter': ('https://jupyter.readthedocs.io/en/latest/', None),
239 236 }
240 237
241 238 # Options for LaTeX output
242 239 # ------------------------
243 240
244 241 # The paper size ('letter' or 'a4').
245 242 latex_paper_size = 'letter'
246 243
247 244 # The font size ('10pt', '11pt' or '12pt').
248 245 latex_font_size = '11pt'
249 246
250 247 # Grouping the document tree into LaTeX files. List of tuples
251 248 # (source start file, target name, title, author, document class [howto/manual]).
252 249
253 250 latex_documents = [
254 251 ('index', 'ipython.tex', 'IPython Documentation',
255 252 u"""The IPython Development Team""", 'manual', True),
256 253 ('parallel/winhpc_index', 'winhpc_whitepaper.tex',
257 254 'Using IPython on Windows HPC Server 2008',
258 255 u"Brian E. Granger", 'manual', True)
259 256 ]
260 257
261 258 # The name of an image file (relative to this directory) to place at the top of
262 259 # the title page.
263 260 #latex_logo = None
264 261
265 262 # For "manual" documents, if this is true, then toplevel headings are parts,
266 263 # not chapters.
267 264 #latex_use_parts = False
268 265
269 266 # Additional stuff for the LaTeX preamble.
270 267 #latex_preamble = ''
271 268
272 269 # Documents to append as an appendix to all manuals.
273 270 #latex_appendices = []
274 271
275 272 # If false, no module index is generated.
276 273 latex_use_modindex = True
277 274
278 275
279 276 # Options for texinfo output
280 277 # --------------------------
281 278
282 279 texinfo_documents = [
283 280 (master_doc, 'ipython', 'IPython Documentation',
284 281 'The IPython Development Team',
285 282 'IPython',
286 283 'IPython Documentation',
287 284 'Programming',
288 285 1),
289 286 ]
290 287
291 288 modindex_common_prefix = ['IPython.']
292 289
293 290
294 291 # Cleanup
295 292 # -------
296 293 # delete release info to avoid pickling errors from sphinx
297 294
298 295 del iprelease
@@ -1,111 +1,111 b''
1 1 .. _introduction:
2 2
3 3 =====================
4 4 IPython Documentation
5 5 =====================
6 6
7 .. htmlonly::
7 .. only:: html
8 8
9 9 :Release: |release|
10 10 :Date: |today|
11 11
12 12 Welcome to the official IPython documentation
13 13
14 14 IPython provides a rich toolkit to help you make the most out of using Python
15 15 interactively. Its main components are:
16 16
17 17 * A powerful interactive Python shell
18 18
19 19 * A `Jupyter <http://jupyter.org/>`_ kernel to work with Python code in Jupyter
20 20 notebooks and other interactive frontends.
21 21
22 22 The enhanced interactive Python shells and kernel have the following main
23 23 features:
24 24
25 25 * Comprehensive object introspection.
26 26
27 27 * Input history, persistent across sessions.
28 28
29 29 * Caching of output results during a session with automatically generated
30 30 references.
31 31
32 32 * Extensible tab completion, with support by default for completion of python
33 33 variables and keywords, filenames and function keywords.
34 34
35 35 * Extensible system of 'magic' commands for controlling the environment and
36 36 performing many tasks related either to IPython or the operating system.
37 37
38 38 * A rich configuration system with easy switching between different setups
39 39 (simpler than changing $PYTHONSTARTUP environment variables every time).
40 40
41 41 * Session logging and reloading.
42 42
43 43 * Extensible syntax processing for special purpose situations.
44 44
45 45 * Access to the system shell with user-extensible alias system.
46 46
47 47 * Easily embeddable in other Python programs and GUIs.
48 48
49 49 * Integrated access to the pdb debugger and the Python profiler.
50 50
51 51
52 52 The Command line interface inherits all the above functionality and posses
53 53
54 54 * real multi-line editing.
55 55
56 56 * syntax highlighting as you type
57 57
58 58 * integration with command line editor for a better workflow.
59 59
60 60 The kernel also have its share of feature, when used with a compatible frontend
61 61 it allows for:
62 62
63 63 * rich display system for object allowing to display Html, Images, Latex,Sounds
64 64 Video.
65 65
66 66 * interactive widgets with the use of the ``ipywidgets`` package.
67 67
68 68
69 69 This documentation will walk through most of the features of the IPython
70 70 command line and kernel, as well as describe the internals mechanisms in order
71 71 to improve your Python workflow.
72 72
73 73 You can always find the table of content for this documentation in the left
74 74 sidebar, allowing you to come back on previous section if needed, or skip ahead.
75 75
76 76
77 77 The latest development version is always available from IPython's `GitHub
78 78 repository <http://github.com/ipython/ipython>`_.
79 79
80 80
81 81
82 82
83 83 .. toctree::
84 84 :maxdepth: 1
85 85 :hidden:
86 86
87 87 self
88 88 overview
89 89 whatsnew/index
90 90 install/index
91 91 interactive/index
92 92 config/index
93 93 development/index
94 94 coredev/index
95 95 api/index
96 96 about/index
97 97
98 98 .. seealso::
99 99
100 100 `Jupyter documentation <http://jupyter.readthedocs.io/en/latest/>`__
101 101 The Notebook code and many other pieces formerly in IPython are now parts
102 102 of Project Jupyter.
103 103 `ipyparallel documentation <http://ipyparallel.readthedocs.io/en/latest/>`__
104 104 Formerly ``IPython.parallel``.
105 105
106 106
107 .. htmlonly::
107 .. only:: html
108 108 * :ref:`genindex`
109 109 * :ref:`modindex`
110 110 * :ref:`search`
111 111
General Comments 0
You need to be logged in to leave comments. Login now