1
+ Base. print (io:: IO , v:: AbstractPolynomialLike ) = show (io, MIME " text/print" (), v)
2
+
1
3
# VARIABLES
2
4
Base. show (io:: IO , v:: AbstractVariable ) = print_var (io, MIME " text/plain" (), v)
3
5
Base. show (io:: IO , mime:: MIME"text/plain" , v:: AbstractVariable ) = print_var (io, mime, v)
4
6
Base. show (io:: IO , mime:: MIME"text/latex" , v:: AbstractVariable ) = print_var (io, mime, v)
7
+ Base. show (io:: IO , mime:: MIME"text/print" , v:: AbstractVariable ) = print_var (io, mime, v)
5
8
6
9
function print_var (io:: IO , mime:: MIME , var:: AbstractVariable )
7
10
base, indices = name_base_indices (var)
@@ -12,6 +15,8 @@ function print_var(io::IO, mime::MIME, var::AbstractVariable)
12
15
print_subscript (io, mime, indices)
13
16
end
14
17
end
18
+ print_var (io:: IO , mime:: MIME"text/print" , var:: AbstractVariable ) = print (io, name (var))
19
+
15
20
function print_subscript (io:: IO , :: MIME"text/latex" , index)
16
21
print (io, " _{" , join (index, " ," ), " }" )
17
22
end
@@ -30,15 +35,23 @@ unicode_subscript(i) = unicode_subscripts[i+1]
30
35
31
36
Base. show (io:: IO , mime:: MIME"text/latex" , m:: AbstractMonomial ) = print_monomial (io, mime, m)
32
37
Base. show (io:: IO , mime:: MIME"text/plain" , m:: AbstractMonomial ) = print_monomial (io, mime, m)
38
+ Base. show (io:: IO , mime:: MIME"text/print" , m:: AbstractMonomial ) = print_monomial (io, mime, m)
33
39
Base. show (io:: IO , m:: AbstractMonomial ) = print_monomial (io, MIME " text/plain" (), m)
34
40
35
41
function print_monomial (io:: IO , mime, m:: AbstractMonomial )
36
42
if isconstant (m)
37
43
print (io, ' 1' )
38
44
else
39
- for (var, exp) in zip (variables (m), exponents (m))
45
+ printed_var = false
46
+ vars = variables (m)
47
+ n = length (vars)
48
+ for (i, var, exp) in zip (1 : n, vars, exponents (m))
40
49
if ! iszero (exp)
50
+ if mime isa MIME " text/print" && printed_var && i > 0 &&
51
+ print (io," *" )
52
+ end
41
53
print_var (io, mime, var)
54
+ printed_var = true
42
55
if ! isone (exp)
43
56
print_exponent (io, mime, exp)
44
57
end
@@ -48,6 +61,7 @@ function print_monomial(io::IO, mime, m::AbstractMonomial)
48
61
end
49
62
#
50
63
print_exponent (io:: IO , :: MIME"text/latex" , exp) = print (io, " ^{" , exp, " }" )
64
+ print_exponent (io:: IO , :: MIME"text/print" , exp) = print (io, " ^" , exp)
51
65
function print_exponent (io:: IO , mime, exp)
52
66
print (io, join (unicode_superscript .(reverse (digits (exp)))))
53
67
end
@@ -60,6 +74,7 @@ unicode_superscript(i) = unicode_superscripts[i+1]
60
74
Base. show (io:: IO , t:: AbstractTerm ) = print_term (io, MIME " text/plain" (), t)
61
75
Base. show (io:: IO , mime:: MIME"text/latex" , t:: AbstractTerm ) = print_term (io, mime, t)
62
76
Base. show (io:: IO , mime:: MIME"text/plain" , t:: AbstractTerm ) = print_term (io, mime, t)
77
+ Base. show (io:: IO , mime:: MIME"text/print" , t:: AbstractTerm ) = print_term (io, mime, t)
63
78
64
79
function print_term (io:: IO , mime, t:: AbstractTerm )
65
80
if isconstant (t)
@@ -88,6 +103,7 @@ print_coefficient(io::IO, coeff) = print(io, "(", coeff, ")")
88
103
Base. show (io:: IO , t:: AbstractPolynomial ) = print_poly (io, MIME " text/plain" (), t)
89
104
Base. show (io:: IO , mime:: MIME"text/plain" , t:: AbstractPolynomial ) = print_poly (io, mime, t)
90
105
Base. show (io:: IO , mime:: MIME"text/latex" , t:: AbstractPolynomial ) = print_poly (io, mime, t)
106
+ Base. show (io:: IO , mime:: MIME"text/print" , t:: AbstractPolynomial ) = print_poly (io, mime, t)
91
107
92
108
function print_poly (io:: IO , mime, p:: AbstractPolynomial{T} ) where T
93
109
ts = terms (p)
@@ -115,6 +131,7 @@ isnegative(x) = false
115
131
Base. show (io:: IO , t:: RationalPoly ) = print_ratpoly (io, MIME " text/plain" (), t)
116
132
Base. show (io:: IO , mime:: MIME"text/plain" , t:: RationalPoly ) = print_ratpoly (io, mime, t)
117
133
Base. show (io:: IO , mime:: MIME"text/latex" , t:: RationalPoly ) = print_ratpoly (io, mime, t)
134
+ Base. show (io:: IO , mime:: MIME"text/print" , t:: RationalPoly ) = print_ratpoly (io, mime, t)
118
135
119
136
function print_ratpoly (io:: IO , mime, p:: RationalPoly )
120
137
print (io, " (" )
0 commit comments