##// END OF EJS Templates
Inform in the docs about removal of define_magic.
Pavol Juhas -
Show More
@@ -113,21 +113,13 b' instantiate the class yourself before registration:'
113 ip = get_ipython()
113 ip = get_ipython()
114 magics = StatefulMagics(ip, some_data)
114 magics = StatefulMagics(ip, some_data)
115 ip.register_magics(magics)
115 ip.register_magics(magics)
116
117
118 In earlier versions, IPython had an API for the creation of line magics (cell
119 magics did not exist at the time) that required you to create functions with a
120 method-looking signature and to manually pass both the function and the name.
121 While this API is no longer recommended, it remains indefinitely supported for
122 backwards compatibility purposes. With the old API, you'd create a magic as
123 follows:
124
116
125 .. sourcecode:: python
126
117
127 def func(self, line):
118 .. note::
128 print("Line magic called with line:", line)
129 print("IPython object:", self.shell)
130
119
131 ip = get_ipython()
120 In early IPython versions 0.12 and before the line magics were
132 # Declare this function as the magic %mycommand
121 created using a :func:`define_magic` API function. This API has been
133 ip.define_magic('mycommand', func)
122 replaced with the above in IPython 0.13 and then completely removed
123 in IPython 5. Maintainers of IPython extensions that still use the
124 :func:`define_magic` function are advised to adjust their code
125 for the current API.
General Comments 0
You need to be logged in to leave comments. Login now