34 lines
1.1 KiB
Python
34 lines
1.1 KiB
Python
############################################################
|
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
|
# http://flatcam.org #
|
|
# Author: Juan Pablo Caram (c) #
|
|
# Date: 2/5/2014 #
|
|
# MIT Licence #
|
|
############################################################
|
|
|
|
import termwidget
|
|
|
|
|
|
class FCShell(termwidget.TermWidget):
|
|
def __init__(self, sysShell, *args):
|
|
termwidget.TermWidget.__init__(self, *args)
|
|
self._sysShell = sysShell
|
|
|
|
def is_command_complete(self, text):
|
|
def skipQuotes(text):
|
|
quote = text[0]
|
|
text = text[1:]
|
|
endIndex = str(text).index(quote)
|
|
return text[endIndex:]
|
|
while text:
|
|
if text[0] in ('"', "'"):
|
|
try:
|
|
text = skipQuotes(text)
|
|
except ValueError:
|
|
return False
|
|
text = text[1:]
|
|
return True
|
|
|
|
def child_exec_command(self, text):
|
|
self._sysShell.exec_command(text)
|