##// END OF EJS Templates
Improve decorator docstrings and clarify execution context for function decos.
Fernando Perez -
Show More
@@ -29,6 +29,7 b' from IPython.core.prefilter import ESC_MAGIC'
29 29 from IPython.external.decorator import decorator
30 30 from IPython.utils.ipstruct import Struct
31 31 from IPython.utils.process import arg_split
32 from IPython.utils.text import dedent
32 33 from IPython.utils.traitlets import Bool, Dict, Instance
33 34 from IPython.utils.warn import error, warn
34 35
@@ -110,7 +111,7 b' def validate_type(magic_kind):'
110 111 _docstring_template = \
111 112 """Decorate the given {0} as {1} magic.
112 113
113 The decorator can be used:
114 The decorator can be used with or without arguments, as follows.
114 115
115 116 i) without arguments: it will create a {1} magic named as the {0} being
116 117 decorated::
@@ -209,7 +210,18 b' def _function_magic_marker(magic_kind):'
209 210 return retval
210 211
211 212 # Ensure the resulting decorator has a usable docstring
212 magic_deco.__doc__ = _docstring_template.format('function', magic_kind)
213 ds = _docstring_template.format('function', magic_kind)
214
215 ds += dedent("""
216 Note: this decorator can only be used in a context where IPython is already
217 active, so that the `get_ipython()` call succeeds. You can therefore use
218 it in your startup files loaded after IPython initializes, but *not* in the
219 IPython configuration file itself, which is executed before IPython is
220 fully up and running. Any file located in the `startup` subdirectory of
221 your configuration profile will be OK in this sense.
222 """)
223
224 magic_deco.__doc__ = ds
213 225 return magic_deco
214 226
215 227
General Comments 0
You need to be logged in to leave comments. Login now