En IPython, ¿cómo creo alias para% magics?
-
08-07-2019 - |
Pregunta
Digamos que quiero crear el alias% xed para% edit -x. ¿Cómo lo haría?
Solución
Actualización: La primera respuesta (a continuación) no acepta parámetros. Así que ponga este fragmento al final del archivo ipy_user_conf.py (está en su directorio de inicio).
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)
Antes de la actualización: ¿Tiene que ser% mágico? Puede usar la macro y almacenar magia para reproducir este comportamiento sin la magia%.
In [5]: %edit -x
In [6]: macro xed 5
In [7]: store xed
In [8]: xed
para el alias mágico de la documentación (% magic?):
También puedes definir tu propio alias nombres para funciones mágicas. En tus archivo ipythonrc, colocando una línea como:
ejecutar IPYTHON .magic_pf = IPYTHON .magic_profile
definirá% pf como un nuevo nombre para % perfil.
Pero no sé cómo agregar también el parámetro.
Otros consejos
La respuesta dada anteriormente usa el viejo sistema mágico. get_ipython (). expose_magic
está muerto. Ahora solo importa y usa decoradores para todo esto.
Consulte aquí para obtener más detalles.