假设我想为 %edit -x 创建别名 %xed。我该怎么做?
Lawrence Johnston
问问题
2311 次
2 回答
3
上面给出的答案使用了旧的魔法系统。get_ipython().expose_magic
死了。您现在只需为所有这些导入和使用装饰器。
有关更多详细信息,请参见此处。
于 2012-08-06T12:01:15.957 回答
2
更新:第一个响应(下面)不接受参数。所以把这个片段放在 ipy_user_conf.py 文件的末尾(它在你的主目录中)。
def ed_xed(self,arg):
ip = self.api
return ip.magic.im_class.magic_edit(ip.IP," -x %s "%arg)
ip.expose_magic('xed',ed_xed)
更新前: 必须是 %magic 吗?您可以使用宏和存储魔术来重现此行为,而无需魔术 %。
In [5]: %edit -x
In [6]: macro xed 5
In [7]: store xed
In [8]: xed
对于文档中的魔术别名( %magic? ):
您还可以为魔术函数定义自己的别名。在您的 ipythonrc 文件中,放置如下一行:
执行IPYTHON .magic_pf = IPYTHON .magic_profile
将 %pf 定义为 %profile 的新名称。
但我不知道如何添加参数。
于 2008-11-17T17:55:39.853 回答