@@ -111,10 +111,28 @@ def read_line(self, prompt):
111111 return input (prompt )
112112
113113 def print_result (self , result , no_out_prompt = False ):
114- if result is not None and result .result is not None :
115- output = self .to_output (str (result .result ))
116- mess = self .get_out_prompt () if not no_out_prompt else ""
117- print (mess + output + "\n " )
114+ if result is None :
115+ # FIXME decide what to do here
116+ return
117+
118+ last_eval = result .last_eval
119+
120+ if last_eval is not None :
121+ try :
122+ eval_type = last_eval .get_head_name ()
123+ except :
124+ print (sys .exc_info ()[1 ])
125+ return
126+
127+ out_str = str (result .result )
128+ if eval_type == "System`String" :
129+ out_str = '"' + out_str .replace ('"' , r'\"' ) + '"'
130+ if eval_type == "System`Graph" :
131+ out_str = "-Graph-"
132+
133+ output = self .to_output (out_str )
134+ mess = self .get_out_prompt () if not no_out_prompt else ""
135+ print (mess + output + "\n " )
118136
119137 def rl_read_line (self , prompt ):
120138 # Wrap ANSI colour sequences in \001 and \002, so readline
@@ -186,10 +204,9 @@ def main() -> int:
186204 prog = "mathics" ,
187205 usage = "%(prog)s [options] [FILE]" ,
188206 add_help = False ,
189- description = "Mathics is a general-purpose computer algebra system." ,
190- epilog = """Please feel encouraged to contribute to Mathics! Create
191- your own fork, make the desired changes, commit, and make a pull
192- request.""" ,
207+ description = "A simple command-line interface to Mathics" ,
208+ epilog = """For a more extensive command-line interface see "mathicsscript".
209+ Please contribute to Mathics!""" ,
193210 )
194211
195212 argparser .add_argument (
0 commit comments