<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7226.0">
<TITLE>Exception embedding IPython - help please</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->
<BR>

<P><FONT SIZE=2 FACE="Verdana">Hi,</FONT>
</P>

<P><FONT SIZE=2 FACE="Verdana">Python 2.3.4</FONT>

<BR><FONT SIZE=2 FACE="Verdana">IPython 0.6.15 for Python 2.3 from the src rpm</FONT>

<BR><FONT SIZE=2 FACE="Verdana">Embedding in a wxPython app, wxPython 2.4.2.4</FONT>
</P>

<P><FONT SIZE=2 FACE="Verdana">First time user.</FONT>
</P>

<P><FONT SIZE=2 FACE="Verdana">My code:</FONT>
</P>

<P><FONT SIZE=2 FACE="Courier New">import IPython</FONT>

<BR><FONT SIZE=2 FACE="Courier New">from IPython.Shell import IPShellEmbed</FONT>

<BR><FONT SIZE=2 FACE="Courier New">args = ['-pdb', '-pprint', '-debug', '-colors', 'Linux']</FONT>
</P>

<P><FONT SIZE=2 FACE="Courier New">ipshell = IPShellEmbed(args, banner = 'Entering IPython', exit_msg = 'Going back to main program')</FONT>

<BR><FONT SIZE=2 FACE="Courier New">ipshell(&quot;Here we go&quot;)</FONT>

<BR><FONT SIZE=2 FACE="Courier New">print 'Back in main program'</FONT>
</P>
<BR>

<P><FONT SIZE=2 FACE="Verdana">An exception is generated in shell.py ln 705 in fixLineEndings(): lines = text.split('\r\n'),</FONT>
</P>

<P><FONT SIZE=2 FACE="Verdana">from write(): text = self.fixLineEndings(text),</FONT>
</P>

<P><FONT SIZE=2 FACE="Verdana">from raw_input(): write(prompt).</FONT>
</P>

<P><FONT SIZE=2 FACE="Verdana">Well, prompt is a prompt object, not a string, so split() naturally does not work on it.</FONT>
</P>

<P><FONT SIZE=2 FACE="Verdana">Please tell me how to get around this.</FONT>
</P>
<BR>

<P><FONT SIZE=2 FACE="Verdana">Secondly, I would like to have the IPython shell available all the time in a wxPython window w/o it being an either/or situation (run my wxPython app or IPython but not both at once). I.e. Have a notebook control with tabs for my app's functionality and a tab for IPython so the user can select any tab and use what is on it at any time. Any way to do this? The IPython doc made it look like the app its embedded in is suspended while in ipshell()....</FONT></P>

<P><FONT SIZE=2 FACE="Verdana">Thanks,</FONT>
</P>

<P><FONT SIZE=2 FACE="Verdana">Bruce</FONT>
</P>
<BR>

</BODY>
</HTML>