IPythonで%magicsのエイリアスを作成するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/296055

  •  08-07-2019
  •  | 
  •  

質問

%edit -xのエイリアス%xedを作成するとします。どうすればいいですか?

役に立ちましたか?

解決

更新:最初の応答(下)はパラメーターを受け入れません。したがって、このスニペットを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。

しかし、どのようにパラメータを追加するのかわかりません。

他のヒント

上記の回答では、古いマジックシステムを使用しています。 get_ipython()。expose_magic は無効です。これで、デコレータをインポートして使用するだけです。

詳細については、こちらをご覧ください。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top