Skip to content

Instantly share code, notes, and snippets.

@chrisseto
Last active March 18, 2019 07:13
Show Gist options
  • Save chrisseto/8f7289497f40ad442a30 to your computer and use it in GitHub Desktop.
Save chrisseto/8f7289497f40ad442a30 to your computer and use it in GitHub Desktop.
from IPython.core.magic import Magics, magics_class, line_magic
import asyncio
@magics_class
class AsyncMagics(Magics):
@line_magic
def await(self, line):
return asyncio.get_event_loop().run_until_complete(eval(line, self.shell.user_global_ns, self.shell.user_ns))
def load_ipython_extension(ipython):
ipython.register_magics(AsyncMagics)
@regnarg
Copy link

regnarg commented Nov 10, 2017

My ipython does not have %install_ext, I had to copy it into ~/.ipython/extensions/await.py. To autoload it on every start, you can set the following in the config file (probably ~/.ipython/profile_default/ipython_config.py):

c = get_config()
c.InteractiveShellApp.extensions = [
    'await'
]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment