summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Silvester2014-07-31 15:46:19 -0500
committerSteven Silvester2014-07-31 15:46:19 -0500
commitc5d8e1ebb41405929d653bb0db4df101ae1e3676 (patch)
treeba33b4f789ea9a740c48235818a13fc7e53d55c8
parent2ed10e938fc6862d07a7286880ac874c86901965 (diff)
downloadscilab_kernel-c5d8e1ebb41405929d653bb0db4df101ae1e3676.tar.gz
scilab_kernel-c5d8e1ebb41405929d653bb0db4df101ae1e3676.tar.bz2
scilab_kernel-c5d8e1ebb41405929d653bb0db4df101ae1e3676.zip
Add temporary shutdown procedure
-rw-r--r--octave_kernel.py11
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)