diff options
author | Steven Silvester | 2014-07-31 15:46:19 -0500 |
---|---|---|
committer | Steven Silvester | 2014-07-31 15:46:19 -0500 |
commit | c5d8e1ebb41405929d653bb0db4df101ae1e3676 (patch) | |
tree | ba33b4f789ea9a740c48235818a13fc7e53d55c8 | |
parent | 2ed10e938fc6862d07a7286880ac874c86901965 (diff) | |
download | scilab_kernel-c5d8e1ebb41405929d653bb0db4df101ae1e3676.tar.gz scilab_kernel-c5d8e1ebb41405929d653bb0db4df101ae1e3676.tar.bz2 scilab_kernel-c5d8e1ebb41405929d653bb0db4df101ae1e3676.zip |
Add temporary shutdown procedure
-rw-r--r-- | octave_kernel.py | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/octave_kernel.py b/octave_kernel.py index a6e87be..1c5666d 100644 --- a/octave_kernel.py +++ b/octave_kernel.py @@ -52,7 +52,9 @@ class OctaveKernel(Kernel): if (code == 'exit' or code.startswith('exit(') or code == 'quit' or code.startswith('quit(')): # TODO: exit gracefully here - pass + self.do_shutdown(False) + return {'status': 'abort', 'execution_count': self.execution_count} + if code.endswith('?'): code = 'help("' + code[:-1] + '")' interrupted = False @@ -105,6 +107,13 @@ class OctaveKernel(Kernel): 'cursor_end': cursor_pos, 'metadata': dict(), 'status': 'ok'} + def do_shutdown(self, restart): + if restart: + self.octavewrapper.restart() + else: + self.octavewrapper.close() + return Kernel.do_shutdown(self, restart) + if __name__ == '__main__': from IPython.kernel.zmq.kernelapp import IPKernelApp IPKernelApp.launch_instance(kernel_class=OctaveKernel) |