Show More
1 | NO CONTENT: new file 100644, binary diff hidden |
|
NO CONTENT: new file 100644, binary diff hidden |
1 | NO CONTENT: new file 100644, binary diff hidden |
|
NO CONTENT: new file 100644, binary diff hidden |
@@ -1,92 +1,99 b'' | |||||
1 | ===================== |
|
1 | ===================== | |
2 | Development version |
|
2 | Development version | |
3 | ===================== |
|
3 | ===================== | |
4 |
|
4 | |||
5 | This document describes in-flight development work. |
|
5 | This document describes in-flight development work. | |
6 |
|
6 | |||
7 | Redesigned IPython notebook user interface |
|
7 | Redesigned IPython notebook user interface | |
8 | ------------------------------------------ |
|
8 | ------------------------------------------ | |
9 |
|
9 | |||
10 | (Add description & screenshots of the many changes to the notebook) |
|
10 | (Add description & screenshots of the many changes to the notebook) | |
11 |
|
11 | |||
12 | Improved tooltips |
|
12 | Improved tooltips | |
13 | ~~~~~~~~~~~~~~~~~ |
|
13 | ~~~~~~~~~~~~~~~~~ | |
14 |
|
14 | |||
15 | The object tooltips have gained some new functionality. By pressing tab several |
|
15 | The object tooltips have gained some new functionality. By pressing tab several | |
16 | times, you can expand them to see more of a docstring, keep them visible as you |
|
16 | times, you can expand them to see more of a docstring, keep them visible as you | |
17 | fill in a function's parameters, or transfer the information to the pager at the |
|
17 | fill in a function's parameters, or transfer the information to the pager at the | |
18 | bottom of the screen. For the details, look at the example notebook |
|
18 | bottom of the screen. For the details, look at the example notebook | |
19 | :file:`01_notebook_introduction.ipynb`. |
|
19 | :file:`01_notebook_introduction.ipynb`. | |
20 |
|
20 | |||
21 | Cell magics |
|
21 | Cell magics | |
22 | ----------- |
|
22 | ----------- | |
23 |
|
23 | |||
24 | IPython's ``%magic`` functions have been extended to let you change the meaning |
|
24 | IPython's ``%magic`` functions have been extended to let you change the meaning | |
25 | of a whole cell using the first line. For example, to time the execution of |
|
25 | of a whole cell using the first line. For example, to time the execution of | |
26 | several statements:: |
|
26 | several statements:: | |
27 |
|
27 | |||
28 | %%timeit x = 0 # setup |
|
28 | %%timeit x = 0 # setup | |
29 | for i in range(100000): |
|
29 | for i in range(100000): | |
30 | x += i**2 |
|
30 | x += i**2 | |
31 |
|
31 | |||
32 | This is particularly useful to integrate code in another language, and cell |
|
32 | This is particularly useful to integrate code in another language, and cell | |
33 | magics already exist for shell scripts, Cython, R and Octave. Using ``%%script |
|
33 | magics already exist for shell scripts, Cython, R and Octave. Using ``%%script | |
34 | /usr/bin/foo``, you can run a cell in any interpreter that accepts code via |
|
34 | /usr/bin/foo``, you can run a cell in any interpreter that accepts code via | |
35 | stdin. |
|
35 | stdin. | |
36 |
|
36 | |||
37 | Another handy cell magic makes it easy to write short text files: ``%%file |
|
37 | Another handy cell magic makes it easy to write short text files: ``%%file | |
38 | ~/save/to/here.txt``. |
|
38 | ~/save/to/here.txt``. | |
39 |
|
39 | |||
40 | To allow these features, the API for magic functions has been refactored and |
|
40 | To allow these features, the API for magic functions has been refactored and | |
41 | made more powerful (:ghpull:`1732`). |
|
41 | made more powerful (:ghpull:`1732`). | |
42 |
|
42 | |||
43 | Tab completer improvements |
|
43 | Tab completer improvements | |
44 | -------------------------- |
|
44 | -------------------------- | |
45 |
|
45 | |||
46 | Useful tab-completion based on live inspection of objects is one of the most |
|
46 | Useful tab-completion based on live inspection of objects is one of the most | |
47 | popular features of IPython. To make this process even more user-friendly, the |
|
47 | popular features of IPython. To make this process even more user-friendly, the | |
48 | completers of both the Qt console and the Notebook have been reworked. |
|
48 | completers of both the Qt console and the Notebook have been reworked. | |
49 |
|
49 | |||
50 | The Qt console comes with a new ncurses-like tab completer, activated by |
|
50 | The Qt console comes with a new ncurses-like tab completer, activated by | |
51 | default, which lets you cycle through the available completions by pressing tab, |
|
51 | default, which lets you cycle through the available completions by pressing tab, | |
52 | or select a completion with the arrow keys (:ghpull:`1851`). |
|
52 | or select a completion with the arrow keys (:ghpull:`1851`). | |
53 |
|
53 | |||
54 | (Screenshot?) |
|
54 | .. figure:: ../_static/ipy_o13_qtconsole_completer.png | |
|
55 | :width: 400px | |||
|
56 | :alt: ncurses-like completer, with highlighted selection. | |||
|
57 | :align: center | |||
|
58 | :target: ../_static/ipy_o13_qtconsole_completer.png | |||
|
59 | ||||
|
60 | The new improved Qt console's ncurses-like completer allows to easily | |||
|
61 | navigate thought long list of completions. | |||
55 |
|
62 | |||
56 | In the notebook, completions are now sourced both from object introspection and |
|
63 | In the notebook, completions are now sourced both from object introspection and | |
57 | analysis of surrounding code, so limited completions can be offered for |
|
64 | analysis of surrounding code, so limited completions can be offered for | |
58 | variables defined in the current cell, or while the kernel is busy |
|
65 | variables defined in the current cell, or while the kernel is busy | |
59 | (:ghpull:`1711`). |
|
66 | (:ghpull:`1711`). | |
60 |
|
67 | |||
61 | Other new features |
|
68 | Other new features | |
62 | ------------------ |
|
69 | ------------------ | |
63 |
|
70 | |||
64 | * **%install_ext**: A new magic function to install an IPython extension from |
|
71 | * **%install_ext**: A new magic function to install an IPython extension from | |
65 | a URL. E.g. ``%install_ext |
|
72 | a URL. E.g. ``%install_ext | |
66 | https://bitbucket.org/birkenfeld/ipython-physics/raw/default/physics.py``. |
|
73 | https://bitbucket.org/birkenfeld/ipython-physics/raw/default/physics.py``. | |
67 |
|
74 | |||
68 | * The ``%loadpy`` magic is no longer restricted to Python files, and has been |
|
75 | * The ``%loadpy`` magic is no longer restricted to Python files, and has been | |
69 | renamed ``%load``. The old name remains as an alias. |
|
76 | renamed ``%load``. The old name remains as an alias. | |
70 |
|
77 | |||
71 | * New command line arguments will help external programs find IPython folders: |
|
78 | * New command line arguments will help external programs find IPython folders: | |
72 | ``ipython locate`` finds the user's IPython directory, and ``ipython locate |
|
79 | ``ipython locate`` finds the user's IPython directory, and ``ipython locate | |
73 | profile foo`` finds the folder for the 'foo' profile (if it exists). |
|
80 | profile foo`` finds the folder for the 'foo' profile (if it exists). | |
74 |
|
81 | |||
75 | * The :envvar:`IPYTHON_DIR` environment variable, introduced in the Great |
|
82 | * The :envvar:`IPYTHON_DIR` environment variable, introduced in the Great | |
76 | Reorganization of 0.11 and existing only in versions 0.11-0.13, has been |
|
83 | Reorganization of 0.11 and existing only in versions 0.11-0.13, has been | |
77 | deprecated. As described in :ghissue:`1167`, the complexity and confusion of |
|
84 | deprecated. As described in :ghissue:`1167`, the complexity and confusion of | |
78 | migrating to this variable is not worth the aesthetic improvement. Please use |
|
85 | migrating to this variable is not worth the aesthetic improvement. Please use | |
79 | the historical :envvar:`IPYTHONDIR` environment variable instead. |
|
86 | the historical :envvar:`IPYTHONDIR` environment variable instead. | |
80 |
|
87 | |||
81 | * The default value of *interactivity* passed from |
|
88 | * The default value of *interactivity* passed from | |
82 | :meth:`~IPython.core.interactiveshell.InteractiveShell.run_cell` to |
|
89 | :meth:`~IPython.core.interactiveshell.InteractiveShell.run_cell` to | |
83 | :meth:`~IPython.core.interactiveshell.InteractiveShell.run_ast_nodes` |
|
90 | :meth:`~IPython.core.interactiveshell.InteractiveShell.run_ast_nodes` | |
84 | is now configurable. |
|
91 | is now configurable. | |
85 |
|
92 | |||
86 | Backwards incompatible changes |
|
93 | Backwards incompatible changes | |
87 | ------------------------------ |
|
94 | ------------------------------ | |
88 |
|
95 | |||
89 | * The exception :exc:`IPython.core.error.TryNext` previously accepted |
|
96 | * The exception :exc:`IPython.core.error.TryNext` previously accepted | |
90 | arguments and keyword arguments to be passed to the next implementation |
|
97 | arguments and keyword arguments to be passed to the next implementation | |
91 | of the hook. This feature was removed as it made error message propagation |
|
98 | of the hook. This feature was removed as it made error message propagation | |
92 | difficult and violated the principle of loose coupling. |
|
99 | difficult and violated the principle of loose coupling. |
General Comments 0
You need to be logged in to leave comments.
Login now