diff --git a/mcstasscript/interface/instr.py b/mcstasscript/interface/instr.py index fd28ca4f..d8bda104 100644 --- a/mcstasscript/interface/instr.py +++ b/mcstasscript/interface/instr.py @@ -6,6 +6,7 @@ import subprocess import copy import warnings +import re from IPython.display import IFrame @@ -731,6 +732,15 @@ def add_parameter(self, *args, **kwargs): raise NameError(f"A parameter or variable with name '{par.name}'" f" already exists!") + # Sanitize and quote strings + if par.type == 'string': + if not par.value[0]=='"': + par.value = '"' + par.value + if not par.value[-1]=='"': + par.value = par.value + '"' + par.value = re.sub(";","\;",par.value); + par.value = re.sub("\n","\\n;",par.value); + self.parameters.add(par) return par