In IPython come posso creare alias per% magics?
-
08-07-2019 - |
Domanda
Diciamo che voglio creare l'alias% xed per% edit -x. Come lo farei?
Soluzione
Aggiornamento: la prima risposta (sotto) non accetta parametri. Quindi metti questo snippet alla fine del file ipy_user_conf.py (è nella tua home directory).
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)
Prima dell'aggiornamento: Deve essere% magico? Puoi utilizzare la macro e archiviare la magia per riprodurre questo comportamento senza la magia%.
In [5]: %edit -x
In [6]: macro xed 5
In [7]: store xed
In [8]: xed
per alias magico dalla documentazione (% magic?):
Puoi anche definire il tuo alias nomi per funzioni magiche. Nel tuo file ipythonrc, posizionando una linea come:
esegui IPYTHON .magic_pf = ipython .magic_profile
definirà% pf come nuovo nome per % Profilo.
Ma non so anche come aggiungere il parametro.
Altri suggerimenti
La risposta fornita sopra usa il vecchio sistema magico. get_ipython (). expose_magic
è morto. Ora importa e utilizza solo decoratori per tutto questo.
Vedi qui per maggiori dettagli.