Skip to content

Commit 085a2cb

Browse files
committed
Add init_printing
1 parent 246baa8 commit 085a2cb

File tree

3 files changed

+15
-2
lines changed

3 files changed

+15
-2
lines changed

symengine/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
)
2020
from .utilities import var, symbols
2121
from .functions import *
22+
from .printing import init_printing
2223

2324
if have_mpfr:
2425
from .lib.symengine_wrapper import RealMPFR

symengine/lib/symengine_wrapper.pyx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -774,6 +774,8 @@ cdef list vec_pair_to_list(symengine.vec_pair& vec):
774774
return result
775775

776776

777+
repr_latex=[False]
778+
777779
cdef class Basic(object):
778780

779781
def __str__(self):
@@ -783,9 +785,9 @@ cdef class Basic(object):
783785
return self.__str__()
784786

785787
def _repr_latex_(self):
786-
try:
788+
if repr_latex[0]:
787789
return "${}$".format(latex(self))
788-
except:
790+
else:
789791
return None
790792

791793
def __hash__(self):

symengine/printing.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from symengine.lib.symengine_wrapper import ccode, sympify, Basic
2+
import symengine.lib.symengine_wrapper
23

34
class CCodePrinter:
45

@@ -22,3 +23,12 @@ def doprint(self, expr, assign_to=None):
2223
code_line = '{}[{}] = {};'.format(assign_to, i, element)
2324
code_lines.append(code_line)
2425
return '\n'.join(code_lines)
26+
27+
28+
def init_printing(pretty_print=True, use_latex=True):
29+
if pretty_print:
30+
if not use_latex:
31+
raise RuntimeError("Only latex is supported for pretty printing")
32+
symengine.lib.symengine_wrapper.repr_latex[0] = True
33+
else:
34+
symengine.lib.symengine_wrapper.repr_latex[0] = False

0 commit comments

Comments
 (0)