Show More
@@ -13,7 +13,7 b' itself, so hooks have full access to the entire IPython object.' | |||
|
13 | 13 | |
|
14 | 14 | If you wish to define a new hook and activate it, you need to put the |
|
15 | 15 | necessary code into a python file which can be either imported or execfile()'d |
|
16 |
from within your ipython |
|
|
16 | from within your profile's ipython_config.py configuration. | |
|
17 | 17 | |
|
18 | 18 | For example, suppose that you have a module called 'myiphooks' in your |
|
19 | 19 | PYTHONPATH, which contains the following definition: |
@@ -640,11 +640,10 b' Currently the magic system has the following functions:\\n"""' | |||
|
640 | 640 | search. |
|
641 | 641 | |
|
642 | 642 | -i/-c: make the pattern case insensitive/sensitive. If neither of |
|
643 |
these options |
|
|
644 | file. The option name which sets this value is | |
|
645 |
|
|
|
646 |
i |
|
|
647 | search. | |
|
643 | these options are given, the default is read from your configuration | |
|
644 | file, with the option ``InteractiveShell.wildcards_case_sensitive``. | |
|
645 | If this option is not specified in your configuration file, IPython's | |
|
646 | internal default is to do a case sensitive search. | |
|
648 | 647 | |
|
649 | 648 | -e/-s NAMESPACE: exclude/search a given namespace. The pattern you |
|
650 | 649 | specifiy can be searched in any of the following namespaces: |
@@ -1230,8 +1229,8 b' Currently the magic system has the following functions:\\n"""' | |||
|
1230 | 1229 | interactive pdb debugger after the traceback printout. %pdb toggles |
|
1231 | 1230 | this feature on and off. |
|
1232 | 1231 | |
|
1233 |
The initial state of this feature is set in your |
|
|
1234 | configuration file (the variable is called 'pdb'). | |
|
1232 | The initial state of this feature is set in your configuration | |
|
1233 | file (the option is ``InteractiveShell.pdb``). | |
|
1235 | 1234 | |
|
1236 | 1235 | If you want to just activate the debugger AFTER an exception has fired, |
|
1237 | 1236 | without having to type '%pdb on' and rerunning your code, you can use |
@@ -2268,16 +2267,17 b' Currently the magic system has the following functions:\\n"""' | |||
|
2268 | 2267 | Usage: |
|
2269 | 2268 | %edit [options] [args] |
|
2270 | 2269 | |
|
2271 |
%edit runs IPython's editor hook. |
|
|
2272 | set to call the __IPYTHON__.rc.editor command. This is read from your | |
|
2273 |
|
|
|
2274 |
|
|
|
2275 |
|
|
|
2270 | %edit runs IPython's editor hook. The default version of this hook is | |
|
2271 | set to call the editor specified by your $EDITOR environment variable. | |
|
2272 | If this isn't found, it will default to vi under Linux/Unix and to | |
|
2273 | notepad under Windows. See the end of this docstring for how to change | |
|
2274 | the editor hook. | |
|
2276 | 2275 | |
|
2277 |
You can also set the value of this editor via the |
|
|
2278 | '-editor' or in your ipythonrc file. This is useful if you wish to use | |
|
2279 | specifically for IPython an editor different from your typical default | |
|
2280 |
(and for Windows users who typically don't set |
|
|
2276 | You can also set the value of this editor via the | |
|
2277 | ``TerminalInteractiveShell.editor`` option in your configuration file. | |
|
2278 | This is useful if you wish to use a different editor from your typical | |
|
2279 | default with IPython (and for Windows users who typically don't set | |
|
2280 | environment variables). | |
|
2281 | 2281 | |
|
2282 | 2282 | This command allows you to conveniently edit multi-line code right in |
|
2283 | 2283 | your IPython session. |
@@ -2316,25 +2316,25 b' Currently the magic system has the following functions:\\n"""' | |||
|
2316 | 2316 | If arguments are given, the following possibilites exist: |
|
2317 | 2317 | |
|
2318 | 2318 | - If the argument is a filename, IPython will load that into the |
|
2319 | editor. It will execute its contents with execfile() when you exit, | |
|
2320 | loading any code in the file into your interactive namespace. | |
|
2319 | editor. It will execute its contents with execfile() when you exit, | |
|
2320 | loading any code in the file into your interactive namespace. | |
|
2321 | 2321 | |
|
2322 | 2322 | - The arguments are ranges of input history, e.g. "7 ~1/4-6". |
|
2323 | The syntax is the same as in the %history magic. | |
|
2323 | The syntax is the same as in the %history magic. | |
|
2324 | 2324 | |
|
2325 | 2325 | - If the argument is a string variable, its contents are loaded |
|
2326 | into the editor. You can thus edit any string which contains | |
|
2327 | python code (including the result of previous edits). | |
|
2326 | into the editor. You can thus edit any string which contains | |
|
2327 | python code (including the result of previous edits). | |
|
2328 | 2328 | |
|
2329 | 2329 | - If the argument is the name of an object (other than a string), |
|
2330 | IPython will try to locate the file where it was defined and open the | |
|
2331 | editor at the point where it is defined. You can use `%edit function` | |
|
2332 | to load an editor exactly at the point where 'function' is defined, | |
|
2333 | edit it and have the file be executed automatically. | |
|
2334 | ||
|
2335 | If the object is a macro (see %macro for details), this opens up your | |
|
2336 | specified editor with a temporary file containing the macro's data. | |
|
2337 | Upon exit, the macro is reloaded with the contents of the file. | |
|
2330 | IPython will try to locate the file where it was defined and open the | |
|
2331 | editor at the point where it is defined. You can use `%edit function` | |
|
2332 | to load an editor exactly at the point where 'function' is defined, | |
|
2333 | edit it and have the file be executed automatically. | |
|
2334 | ||
|
2335 | - If the object is a macro (see %macro for details), this opens up your | |
|
2336 | specified editor with a temporary file containing the macro's data. | |
|
2337 | Upon exit, the macro is reloaded with the contents of the file. | |
|
2338 | 2338 | |
|
2339 | 2339 | Note: opening at an exact line is only supported under Unix, and some |
|
2340 | 2340 | editors (like kedit and gedit up to Gnome 2.8) do not understand the |
@@ -81,7 +81,7 b' MAIN FEATURES' | |||
|
81 | 81 | |
|
82 | 82 | * Magic commands: type %magic for information on the magic subsystem. |
|
83 | 83 | |
|
84 |
* System command aliases, via the %alias command or the |
|
|
84 | * System command aliases, via the %alias command or the configuration file(s). | |
|
85 | 85 | |
|
86 | 86 | * Dynamic object information: |
|
87 | 87 |
@@ -328,9 +328,10 b' class PythonRunner(InteractiveRunner):' | |||
|
328 | 328 | class SAGERunner(InteractiveRunner): |
|
329 | 329 | """Interactive SAGE runner. |
|
330 | 330 | |
|
331 |
WARNING: this runner only works if you manually |
|
|
332 | to use 'colors NoColor' in the ipythonrc config file, since currently the | |
|
333 |
prompt matching regexp does not identify |
|
|
331 | WARNING: this runner only works if you manually adjust your SAGE | |
|
332 | configuration so that the 'color' option in the configuration file is set to | |
|
333 | 'NoColor', because currently the prompt matching regexp does not identify | |
|
334 | color sequences.""" | |
|
334 | 335 | |
|
335 | 336 | def __init__(self,program='sage',args=None,out=sys.stdout,echo=True): |
|
336 | 337 | """New runner, optionally passing the sage command to use.""" |
@@ -3,10 +3,10 b'' | |||
|
3 | 3 | Limitations: |
|
4 | 4 | |
|
5 | 5 | - When generating examples for use as doctests, make sure that you have |
|
6 |
pretty-printing OFF. This can be done either by s |
|
|
7 | flag '--nopprint', by setting pprint to 0 in your ipythonrc file, or by | |
|
8 | interactively disabling it with %Pprint. This is required so that IPython | |
|
9 | output matches that of normal Python, which is used by doctest for internal | |
|
6 | pretty-printing OFF. This can be done either by setting the | |
|
7 | ``PlainTextFormatter.pprint`` option in your configuration file to False, or | |
|
8 | by interactively disabling it with %Pprint. This is required so that IPython | |
|
9 | output matches that of normal Python, which is used by doctest for internal | |
|
10 | 10 | execution. |
|
11 | 11 | |
|
12 | 12 | - Do not rely on specific prompt numbers for results (such as using |
@@ -235,16 +235,9 b' class ZMQInteractiveShell(InteractiveShell):' | |||
|
235 | 235 | Usage: |
|
236 | 236 | %edit [options] [args] |
|
237 | 237 | |
|
238 | %edit runs IPython's editor hook. The default version of this hook is | |
|
239 | set to call the __IPYTHON__.rc.editor command. This is read from your | |
|
240 | environment variable $EDITOR. If this isn't found, it will default to | |
|
241 | vi under Linux/Unix and to notepad under Windows. See the end of this | |
|
242 | docstring for how to change the editor hook. | |
|
243 | ||
|
244 | You can also set the value of this editor via the command line option | |
|
245 | '-editor' or in your ipythonrc file. This is useful if you wish to use | |
|
246 | specifically for IPython an editor different from your typical default | |
|
247 | (and for Windows users who typically don't set environment variables). | |
|
238 | %edit runs an external text editor. You will need to set the command for | |
|
239 | this editor via the ``TerminalInteractiveShell.editor`` option in your | |
|
240 | configuration file before it will work. | |
|
248 | 241 | |
|
249 | 242 | This command allows you to conveniently edit multi-line code right in |
|
250 | 243 | your IPython session. |
@@ -363,16 +356,7 b' class ZMQInteractiveShell(InteractiveShell):' | |||
|
363 | 356 | Editing... done. Executing edited code... |
|
364 | 357 | hello again |
|
365 | 358 | Out[7]: "print 'hello again'n" |
|
366 | ||
|
367 | ||
|
368 | Changing the default editor hook: | |
|
369 | ||
|
370 | If you wish to write your own editor hook, you can put it in a | |
|
371 | configuration file which you load at startup time. The default hook | |
|
372 | is defined in the IPython.core.hooks module, and you can use that as a | |
|
373 | starting example for further modifications. That file also has | |
|
374 | general instructions on how to set a new hook for use once you've | |
|
375 | defined it.""" | |
|
359 | """ | |
|
376 | 360 | |
|
377 | 361 | opts,args = self.parse_options(parameter_s,'prn:') |
|
378 | 362 |
@@ -19,10 +19,12 b' file and ignore your configuration setup.' | |||
|
19 | 19 | |
|
20 | 20 | Please note that some of the configuration options are not available at |
|
21 | 21 | the command line, simply because they are not practical here. Look into |
|
22 |
your |
|
|
23 | installed in the IPYTHON_DIR directory. For Linux | |
|
24 | users, this will be $HOME/.config/ipython, and for other users it will be | |
|
25 | $HOME/.ipython. For Windows users, $HOME resolves to C:\\Documents and | |
|
22 | your configuration files for details on those. There are separate configuration | |
|
23 | files for each profile, and the files look like "ipython_config.py" or | |
|
24 | "ipython_config_<frontendname>.py". Profile directories look like | |
|
25 | "profile_profilename" and are typically installed in the IPYTHON_DIR directory. | |
|
26 | For Linux users, this will be $HOME/.config/ipython, and for other users it | |
|
27 | will be $HOME/.ipython. For Windows users, $HOME resolves to C:\\Documents and | |
|
26 | 28 | Settings\\YourUserName in most instances. |
|
27 | 29 | |
|
28 | 30 | |
@@ -46,9 +48,9 b' follow in any order. All options can be abbreviated to their shortest' | |||
|
46 | 48 | non-ambiguous form and are case-sensitive. One or two dashes can be |
|
47 | 49 | used. Some options have an alternate short form, indicated after a ``|``. |
|
48 | 50 | |
|
49 |
Most options can also be set from your |
|
|
50 |
|
|
|
51 |
|
|
|
51 | Most options can also be set from your configuration file. See the provided | |
|
52 | example for more details on what the options do. Options given at the command | |
|
53 | line override the values set in the configuration file. | |
|
52 | 54 | |
|
53 | 55 | All options with a [no] prepended can be specified in negated form |
|
54 | 56 | (--no-option instead of --option) to turn the feature off. |
@@ -110,7 +112,7 b' All options with a [no] prepended can be specified in negated form' | |||
|
110 | 112 | code and various other elements. However, because this information is |
|
111 | 113 | passed through a pager (like 'less') and many pagers get confused with |
|
112 | 114 | color codes, this option is off by default. You can test it and turn |
|
113 |
it on permanently in your |
|
|
115 | it on permanently in your configuration file if it works for you. As a | |
|
114 | 116 | reference, the 'less' pager supplied with Mandrake 8.2 works ok, but |
|
115 | 117 | that in RedHat 7.2 doesn't. |
|
116 | 118 | |
@@ -569,7 +571,7 b' syntax for this can be found in the readline documentation available' | |||
|
569 | 571 | with your system or on the Internet. IPython doesn't read this file (if |
|
570 | 572 | it exists) directly, but it does support passing to readline valid |
|
571 | 573 | options via a simple interface. In brief, you can customize readline by |
|
572 |
setting the following options in your |
|
|
574 | setting the following options in your configuration file (note | |
|
573 | 575 | that these options can not be specified at the command line): |
|
574 | 576 | |
|
575 | 577 | * **readline_parse_and_bind**: this option can appear as many times as |
@@ -594,8 +596,7 b' that these options can not be specified at the command line):' | |||
|
594 | 596 | This option is off by default so that new users see all |
|
595 | 597 | attributes of any objects they are dealing with. |
|
596 | 598 | |
|
597 |
You will find the default values |
|
|
598 | explanation in your ipythonrc file. | |
|
599 | You will find the default values in your configuration file. | |
|
599 | 600 | |
|
600 | 601 | |
|
601 | 602 | Session logging and restoring |
@@ -696,8 +697,7 b' Even object attributes can be expanded::' | |||
|
696 | 697 | System command aliases |
|
697 | 698 | ---------------------- |
|
698 | 699 | |
|
699 |
The %alias magic function a |
|
|
700 | configuration file allow you to define magic functions which are in fact | |
|
700 | The %alias magic function allows you to define magic functions which are in fact | |
|
701 | 701 | system shell commands. These aliases can have parameters. |
|
702 | 702 | |
|
703 | 703 | ``%alias alias_name cmd`` defines 'alias_name' as an alias for 'cmd' |
@@ -828,7 +828,7 b' accidentally overwrite the Out variable you can recover it by typing' | |||
|
828 | 828 | This system obviously can potentially put heavy memory demands on your |
|
829 | 829 | system, since it prevents Python's garbage collector from removing any |
|
830 | 830 | previously computed results. You can control how many results are kept |
|
831 |
in memory with the option (at the command line or in your |
|
|
831 | in memory with the option (at the command line or in your configuration | |
|
832 | 832 | file) cache_size. If you set it to 0, the whole system is completely |
|
833 | 833 | disabled and the prompts revert to the classic '>>>' of normal Python. |
|
834 | 834 |
@@ -98,34 +98,3 b' Continuing with the example above, this should illustrate this idea::' | |||
|
98 | 98 | This section was written after a contribution by Alexander Belchenko on |
|
99 | 99 | the IPython user list. |
|
100 | 100 | |
|
101 | .. The section below needs to be updated for the new config system. | |
|
102 | ||
|
103 | .. Effective logging | |
|
104 | ----------------- | |
|
105 | ||
|
106 | .. A very useful suggestion sent in by Robert Kern follows: | |
|
107 | ||
|
108 | .. I recently happened on a nifty way to keep tidy per-project log files. I | |
|
109 | made a profile for my project (which is called "parkfield"):: | |
|
110 | ||
|
111 | include ipythonrc | |
|
112 | ||
|
113 | # cancel earlier logfile invocation: | |
|
114 | ||
|
115 | logfile '' | |
|
116 | ||
|
117 | execute import time | |
|
118 | ||
|
119 | execute __cmd = '/Users/kern/research/logfiles/parkfield-%s.log rotate' | |
|
120 | ||
|
121 | execute __IP.magic_logstart(__cmd % time.strftime('%Y-%m-%d')) | |
|
122 | ||
|
123 | .. I also added a shell alias for convenience:: | |
|
124 | ||
|
125 | alias parkfield="ipython --pylab profile=parkfield" | |
|
126 | ||
|
127 | .. Now I have a nice little directory with everything I ever type in, | |
|
128 | organized by project and date. | |
|
129 | ||
|
130 | ||
|
131 |
General Comments 0
You need to be logged in to leave comments.
Login now