<div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Apr 23, 2012 at 12:34, Kevin Tran <span dir="ltr">&lt;<a href="mailto:hekevintran@gmail.com" target="_blank">hekevintran@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="im">&gt; Yes, %store is not a builtin magic but an extension, just load it when<br>
&gt; you start:<br>
&gt;<br>
&gt; %load_ext storemagic<br>
<br>
</div>I having trouble understanding the difference between embedded shells and non-embedded shells.<br>
<br>
I believe that my ipython_config.py is run when the embedded shell starts. In ipython_config.py I have `c.TerminalInteractiveShell.autocall = 1`. The autocall setting is respected by both embedded and non-embedded shells. When I remove the autocall setting, autocall doesn&#39;t work in embedded nor non-embedded shells. This makes sense to me.<br>


<br>
Why is it that by default %store is loaded in non-embedded shells (at least it is for me) and not in embedded shells? Is it because non-embedded shells have all the extension magic modules loaded and embedded shells do not?<br>

</blockquote><div><br></div><div>This is simply because Extension config is attached to the Application, rather than the Shell, <a href="https://github.com/ipython/ipython/issues/1144">which it shouldn&#39;t be</a>.  </div>

<div><br></div><div>The principal *functional* difference between an embedded shell and a non-embedded one is that regular shells are children of Applications, and embedded shells are not.  Things the Application does, then, are not included in embedded shell setup.  This includes running startup files, which makes sense, because embedded shells are initialized with a particular namespace, and startup files are an alternative method for initializing the namespace.</div>

<div><br></div><div>-MinRK</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Another strange thing about %store is that my stored values are not visible with %whos. %whos prints &quot;Interactive namespace is empty.&quot; even though I have a macro that was stored and I can run the macro. A related thing is that after I load %store in an embedded shell, the macro is visible with %whos. Why is the macro not in the output of %whos in a non-embedded shell, but is there in an embedded shell? Or did I miss something else?<br>


<br>
Where is the list of extension magic modules?<br>
<br>
Thanks for the help.<br>
<div class="HOEnZb"><div class="h5">_______________________________________________<br>
IPython-User mailing list<br>
<a href="mailto:IPython-User@scipy.org">IPython-User@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/ipython-user" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-user</a><br>
</div></div></blockquote></div><br></div>