You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/dev/env.rst
+75-32Lines changed: 75 additions & 32 deletions
Original file line number
Diff line number
Diff line change
@@ -12,10 +12,12 @@ however, using a more powerful editor may make your life a bit easier.
12
12
VIM
13
13
---
14
14
15
-
16
-
There exist a couple of plugins and settings for the VIM editor to aid python
17
-
development. If you only develop in Python, a good start is to set the default
18
-
settings for indentation and linewrapping to values compliant with PEP8::
15
+
Vim is a text editor which uses keyboard shortcuts for editing instead of menus
16
+
or icons. There exist a couple of plugins and settings for the VIM editor to
17
+
aid python development. If you only develop in Python, a good start is to set
18
+
the default settings for indentation and linewrapping to values compliant with
19
+
`PEP 8 <http://www.python.org/dev/peps/pep-0008/>`_. In your home directory,
20
+
open a file called `.vimrc` and add the following lines: ::
19
21
20
22
set textwidth=79
21
23
set shiftwidth=4
@@ -24,25 +26,26 @@ settings for indentation and linewrapping to values compliant with PEP8::
24
26
set softtabstop=4
25
27
set shiftround
26
28
27
-
With these settings newlines are inserted after 79 characters and indentation
29
+
With these settings, newlines are inserted after 79 characters and indentation
28
30
is set to 4 spaces per tab. If you also use VIM for other languages, there is a
29
31
handy plugin at indent_, which handles indentation settings for python source
30
32
files.
31
-
Additionally there is also a handy syntax plugin at syntax_ featuring some
32
-
improvements over the syntax file included in VIM 6.1.
33
+
34
+
There is also a handy syntax plugin at syntax_ featuring some improvements over
35
+
the syntax file included in VIM 6.1.
33
36
34
37
These plugins supply you with a basic environment for developing in Python.
35
-
However in order to improve the programming flow we also want to continually
36
-
check for PEP8 compliance and check syntax. Luckily there exist PEP8_ and
37
-
Pyflakes_ to do this for you. If your VIM is compiled with `+python` you can
38
-
also utilize some very handy plugins to do these checks from within the editor.
39
-
For PEP8 checking install vim-pep8_. Now you can map the vim function
40
-
`Pep8()` to any hotkey or action you want. Similarly for pyflakes you can
41
-
install vim-pyflakes_. Now you can map `Pyflakes()` like the PEP8 function and
42
-
have it called quickly. Both plugins will display errors in a quickfix list and
43
-
provide an easy way to jump to the corresponding line. A very handy setting is
44
-
calling these functions whenever a buffer is saved. In order to do this, enter
45
-
the following lines into your vimrc::
38
+
To get the most out of Vim, you should continually check your code for syntax
39
+
errors and PEP8 compliance. Luckily PEP8_ and Pyflakes_ will do this for you.
40
+
If your VIM is compiled with `+python` you can also utilize some very handy
41
+
plugins to do these checks from within the editor.
42
+
43
+
For PEP8 checking, install the vim-pep8_ plugin, and for pyflakes you can
44
+
install vim-pyflakes_. Now you can map the functions `Pep8()` or `Pyflakes()`
45
+
to any hotkey or action you want in Vim. Both plugins will display errors at
46
+
the bottom of the screen, and provide an easy way to jump to the corresponding
47
+
line. It's very handy to call these functions whenever you save a file. In
48
+
order to do this, add the following lines to your `vimrc`::
46
49
47
50
autocmd BufWritePost *.py call Pyflakes()
48
51
autocmd BufWritePost *.py call Pep8()
@@ -60,7 +63,10 @@ the following lines into your vimrc::
60
63
TextMate
61
64
--------
62
65
63
-
"`TextMate <http://macromates.com/>`_ brings Apple's approach to operating systems into the world of text editors. By bridging UNIX underpinnings and GUI, TextMate cherry-picks the best of both worlds to the benefit of expert scripters and novice users alike."
66
+
"`TextMate <http://macromates.com/>`_ brings Apple's approach to operating
67
+
systems into the world of text editors. By bridging UNIX underpinnings and GUI,
68
+
TextMate cherry-picks the best of both worlds to the benefit of expert
69
+
scripters and novice users alike."
64
70
65
71
Sublime Text
66
72
------------
@@ -72,15 +78,19 @@ extraordinary features."
72
78
Sublime Text has excellent support for editing Python code and uses Python for
73
79
its plugin API.
74
80
75
-
`Sublime Text 2 <http://www.sublimetext.com/blog/articles/sublime-text-2-beta>`_ is currently in beta.
81
+
`Sublime Text 2 <http://www.sublimetext.com/blog/articles/sublime-text-2-beta>`_
82
+
is currently in beta.
76
83
77
84
IDEs
78
85
::::
79
86
80
87
PyCharm / IntelliJ IDEA
81
88
-----------------------
82
89
83
-
`PyCharm <http://www.jetbrains.com/pycharm/>`_ is developed by JetBrains, also known for IntelliJ IDEA. Both share the same code base and most of PyCharm's features can be brought to IntelliJ with the free `Python Plug-In <http://plugins.intellij.net/plugin/?id=631/>`_.
90
+
`PyCharm <http://www.jetbrains.com/pycharm/>`_ is developed by JetBrains, also
91
+
known for IntelliJ IDEA. Both share the same code base and most of PyCharm's
92
+
features can be brought to IntelliJ with the free `Python Plug-In <http://plugins.intellij.net/plugin/?id=631/>`_.
93
+
84
94
85
95
Eclipse
86
96
-------
@@ -91,18 +101,28 @@ The most popular Eclipse plugin for Python development is Aptana's
91
101
92
102
Komodo IDE
93
103
-----------
94
-
`Komodo IDE <http://www.activestate.com/komodo-ide>`_ is developed by ActiveState and is a commerical IDE for Windows, Mac
104
+
`Komodo IDE <http://www.activestate.com/komodo-ide>`_ is developed by
105
+
ActiveState and is a commercial IDE for Windows, Mac
95
106
and Linux.
96
107
108
+
97
109
Spyder
98
110
------
99
111
100
-
`Spyder <http://code.google.com/p/spyderlib/>`_ an IDE specifically geared toward working with scientific python libraries (namely `Scipy <http://www.scipy.org/>`_).
112
+
`Spyder <http://code.google.com/p/spyderlib/>`_ an IDE specifically geared
113
+
toward working with scientific python libraries (namely `Scipy <http://www.scipy.org/>`_).
101
114
Includes integration with pyflakes_, `pylint <http://www.logilab.org/857>`_,
102
115
and `rope <http://rope.sourceforge.net/>`_.
103
116
104
-
Spyder is open-source (free), offers code completion, syntax highlighting, class and function browser, and object inspection.
117
+
Spyder is open-source (free), offers code completion, syntax highlighting,
118
+
class and function browser, and object inspection.
119
+
120
+
121
+
WingIDE
122
+
-------
105
123
124
+
`WingIDE <http://wingware.com/>`_ a python specific IDE. Runs for Linux,
125
+
Windows, and Mac (as an X11 application, which frustrates some Mac users).
106
126
107
127
108
128
Interpreter Tools
@@ -112,8 +132,10 @@ Interpreter Tools
112
132
virtualenv
113
133
----------
114
134
115
-
Virtualenv is a tool to keep the dependencies required by different projects in separate places, by creating virtual Python environments for them.
116
-
It solves the "Project X depends on version 1.x but, Project Y needs 4.x" dilemma and keeps your global site-packages directory clean and manageable.
135
+
Virtualenv is a tool to keep the dependencies required by different projects
136
+
in separate places, by creating virtual Python environments for them.
137
+
It solves the "Project X depends on version 1.x but, Project Y needs 4.x"
138
+
dilemma and keeps your global site-packages directory clean and manageable.
a folder which contains all the necessary executables to contain the
@@ -185,7 +207,8 @@ control by adding it to the ignore list.
185
207
virtualenvwrapper
186
208
-----------------
187
209
188
-
`Virtualenvwrapper <http://pypi.python.org/pypi/virtualenvwrapper>`_ makes virtualenv a pleasure to use by wrapping the command line API with a nicer CLI.
210
+
`Virtualenvwrapper <http://pypi.python.org/pypi/virtualenvwrapper>`_ makes
211
+
virtualenv a pleasure to use by wrapping the command line API with a nicer CLI.
189
212
190
213
::
191
214
@@ -198,18 +221,38 @@ Put this into your `~/.bash_profile` (Linux/Mac) file:
This will prevent your virtualenvs from relying on your (global) site packages directory, so that they are completely separate..
224
+
This will prevent your virtualenvs from relying on your (global) site packages
225
+
directory, so that they are completely separate..
202
226
203
227
Other Tools
204
228
:::::::::::
205
229
230
+
IDLE
231
+
----
232
+
233
+
`IDLE <http://docs.python.org/library/idle.html>`_ is an integrated
234
+
development environment that is part of Python standard library. It is
235
+
completely written in Python and uses Tkinter GUI toolkit. Though IDLE
236
+
is not suited for full-blown development using Python , it is quite
237
+
helpful to try out small Python snippets and experiment with different
238
+
features in Python.
239
+
240
+
It provides following features:
241
+
242
+
* Python Shell Window (interpreter)
243
+
* Multi window text editor that colorizes Python code
244
+
* Minimal debugging facility
245
+
246
+
206
247
IPython
207
248
-------
208
249
209
-
`IPython <http://ipython.org/>`_ provides a rich toolkit to help you make the most out of using Python interactively. Its main components are:
250
+
`IPython <http://ipython.org/>`_ provides a rich toolkit to help you make the
251
+
most out of using Python interactively. Its main components are:
210
252
211
253
* Powerful Python shells (terminal- and Qt-based).
212
-
* A web-based notebook with the same core features but support for rich media, text, code, mathematical expressions and inline plots.
254
+
* A web-based notebook with the same core features but support for rich media,
255
+
text, code, mathematical expressions and inline plots.
213
256
* Support for interactive data visualization and use of GUI toolkits.
214
257
* Flexible, embeddable interpreters to load into your own projects.
215
258
* Tools for high level and interactive parallel computing.
@@ -223,7 +266,8 @@ IPython
223
266
BPython
224
267
-------
225
268
226
-
`bpython <http://bpython-interpreter.org/>`_ is an alternative interface to the Python interpreter for Unix-like operating systems. It has the following features:
269
+
`bpython <http://bpython-interpreter.org/>`_ is an alternative interface to the
270
+
Python interpreter for Unix-like operating systems. It has the following features:
227
271
228
272
* In-line syntax highlighting.
229
273
* Readline-like autocomplete with suggestions displayed as you type.
Copy file name to clipboardExpand all lines: docs/index.rst
+6-3Lines changed: 6 additions & 3 deletions
Original file line number
Diff line number
Diff line change
@@ -6,10 +6,13 @@
6
6
The Hitchhiker's Guide to Python!
7
7
=================================
8
8
9
-
Welcome to The Hitchhiker's Guide to Python. **DON'T PANIC!**
9
+
Welcome to The Hitchhiker's Guide to Python. `DON'T PANIC!<http://www.amazon.com/gp/product/B0043M4ZH0/ref=as_li_ss_tl?ie=UTF8&tag=bookforkind-20&linkCode=as2&camp=1789&creative=390957&creativeASIN=B0043M4ZH0>`_
10
10
11
-
**This guide is currently under heavy development, and is mostly a skeleton at the moment.** If you'd like to help, `fork us on GitHub <https://github.com/kennethreitz/python-guide>`_!
11
+
**This guide is currently under heavy development, and is mostly a skeleton at
12
+
the moment.** If you'd like to help, `fork us on GitHub <https://github.com/kennethreitz/python-guide>`_!
12
13
13
-
This *opinionated* guide exists to provide both novice and expert Python developers a best-practice handbook to the installation, configuration, and usage of Python on a daily basis.
14
+
This *opinionated* guide exists to provide both novice and expert Python
15
+
developers a best-practice handbook to the installation, configuration, and
Copy file name to clipboardExpand all lines: docs/intro/community.rst
+22-9Lines changed: 22 additions & 9 deletions
Original file line number
Diff line number
Diff line change
@@ -1,33 +1,40 @@
1
+
.. _the_community:
2
+
1
3
The Community
2
4
=============
3
5
4
6
BDFL
5
7
----
6
8
7
-
Guido van Rossum, the creator of Python, is often referred to as the BDFL — the Benevolent Dictator For Life.
9
+
Guido van Rossum, the creator of Python, is often referred to as the BDFL — the
10
+
Benevolent Dictator For Life.
8
11
9
12
10
13
11
14
Python Software Foundation
12
15
--------------------------
13
16
14
-
The mission of the Python Software Foundation is to promote, protect, and advance the Python programming language, and to support and facilitate the growth of a diverse and international community of Python programmers.
17
+
The mission of the Python Software Foundation is to promote, protect, and
18
+
advance the Python programming language, and to support and facilitate the
19
+
growth of a diverse and international community of Python programmers.
15
20
16
21
`Learn More about the PSF <http://www.python.org/psf/>`_.
17
22
18
23
19
24
PEPs
20
25
----
21
26
22
-
PEPs are *Python Enhancement Proposals*. They describe changes to Python itself, or the standards around it.
27
+
PEPs are *Python Enhancement Proposals*. They describe changes to Python itself,
28
+
or the standards around it.
23
29
24
30
There are three different types of PEPs (as defined by `PEP1 <http://www.python.org/dev/peps/pep-0001/>`_):
25
31
26
32
**Standards**
27
33
Describes a new feature or implementation.
28
34
29
35
**Informational**
30
-
Describes a design issue, general guidelines, or information to the community.
36
+
Describes a design issue, general guidelines, or information to the
37
+
community.
31
38
32
39
**Process**
33
40
Describes a process related to Python.
@@ -45,29 +52,35 @@ There are a few PEPs that could be considered required reading:
45
52
A list of 19 statements that briefly explain the philosophy behind Python.
The major events for the Python community are developer conferences. The two most notable conferences are PyCon, which is held in the US, and its European sibling, EuroPython.
74
+
The major events for the Python community are developer conferences. The two
75
+
most notable conferences are PyCon, which is held in the US, and its European
76
+
sibling, EuroPython.
66
77
67
78
A comprehensive list of conferences is maintained `at pycon.org <http://www.pycon.org/>`_.
68
79
69
80
70
81
Python User Groups
71
82
--------------------------
72
83
73
-
User Groups are where a bunch of Python developers meet to present or talk about Python topics of interest. A list of local user groups is maintained at the `Python Software Foundation Wiki <http://wiki.python.org/moin/LocalUserGroups>`_.
84
+
User Groups are where a bunch of Python developers meet to present or talk
85
+
about Python topics of interest. A list of local user groups is maintained at
86
+
the `Python Software Foundation Wiki <http://wiki.python.org/moin/LocalUserGroups>`_.
0 commit comments