diff --git a/wx/py/crustslices.py b/wx/py/crustslices.py index e957e3a6..7039350e 100644 --- a/wx/py/crustslices.py +++ b/wx/py/crustslices.py @@ -135,6 +135,7 @@ class CrustSlicesFrame(crust.CrustFrame): hideFoldingMargin=self.hideFoldingMargin, *args, **kwds) self.sliceshell = self.crust.sliceshell + self.shell = self.sliceshell self.buffer = self.sliceshell.buffer # Override the filling so that status messages go to the status bar. self.crust.filling.tree.setStatusText = self.SetStatusText diff --git a/wx/py/sliceshell.py b/wx/py/sliceshell.py index 32b6e632..4aa9b7cf 100755 --- a/wx/py/sliceshell.py +++ b/wx/py/sliceshell.py @@ -3715,20 +3715,28 @@ class SlicesShell(editwindow.EditWindow): def SavePySlicesFile(self,fid): addComment=False - fid.write(usrBinEnvPythonText.replace('\n',os.linesep)) - fid.write(pyslicesFormatHeaderText[-1].replace('\n',os.linesep)) + + def fid_write(s): + fid.write(s.replace('\r\n', '\n') + .replace('\n', os.linesep) + .encode('utf-8')) + + fid_write(usrBinEnvPythonText) + fid_write(pyslicesFormatHeaderText[-1]) for i in range(self.GetLineCount()): markers=self.MarkerGet(i) if markers & ( 1<