From ed81049ddc8fcef3ddf6f6f69d95bb52512bf698 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Thu, 18 Feb 2021 14:17:20 +0100 Subject: [PATCH] =?UTF-8?q?Show=20repr=20in=20monospace=20=F0=9F=93=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/exec/context.rs | 7 +++++++ src/exec/mod.rs | 16 +++++++++++---- src/library/extend.rs | 22 +++++++++++++++++---- src/library/mod.rs | 1 + tests/lang/ref/array.png | Bin 3609 -> 3922 bytes tests/lang/ref/call-invalid.png | Bin 3032 -> 3043 bytes tests/lang/ref/call.png | Bin 5157 -> 5661 bytes tests/lang/ref/dict.png | Bin 1836 -> 1905 bytes tests/lang/ref/if.png | Bin 1959 -> 1227 bytes tests/lang/ref/repr.png | Bin 8451 -> 9032 bytes tests/lang/typ/array.typ | 5 ++--- tests/lang/typ/call-invalid.typ | 34 ++++++++++++++++---------------- tests/lang/typ/call.typ | 20 +++++++++---------- tests/lang/typ/dict.typ | 2 +- tests/lang/typ/repr.typ | 3 +++ tests/library/ref/rgb.png | Bin 2688 -> 3068 bytes tests/typeset.rs | 4 ++-- 17 files changed, 73 insertions(+), 41 deletions(-) diff --git a/src/exec/context.rs b/src/exec/context.rs index 821a26164..5ff55c00b 100644 --- a/src/exec/context.rs +++ b/src/exec/context.rs @@ -259,6 +259,13 @@ impl<'a> ExecContext<'a> { } } + /// Set the font to monospace. + pub fn apply_monospace(&mut self) { + let families = self.state.font.families_mut(); + families.list.insert(0, "monospace".to_string()); + families.flatten(); + } + /// Apply a forced line break. pub fn apply_linebreak(&mut self) { self.end_par_group(); diff --git a/src/exec/mod.rs b/src/exec/mod.rs index cafc55cdb..3dbe82703 100644 --- a/src/exec/mod.rs +++ b/src/exec/mod.rs @@ -97,9 +97,7 @@ impl ExecWithMap for NodeHeading { impl Exec for NodeRaw { fn exec(&self, ctx: &mut ExecContext) { let prev = Rc::clone(&ctx.state.font.families); - let families = ctx.state.font.families_mut(); - families.list.insert(0, "monospace".to_string()); - families.flatten(); + ctx.apply_monospace(); let em = ctx.state.font.font_size(); let line_spacing = ctx.state.par.line_spacing.resolve(em); @@ -136,9 +134,19 @@ impl Exec for Value { fn exec(&self, ctx: &mut ExecContext) { match self { Value::None => {} + Value::Int(v) => ctx.push_text(pretty(v)), + Value::Float(v) => ctx.push_text(pretty(v)), Value::Str(s) => ctx.push_text(s), Value::Template(template) => template.exec(ctx), - other => ctx.push_text(pretty(other)), + Value::Error => {} + other => { + // For values which can't be shown "naturally", we print + // the representation in monospace. + let prev = Rc::clone(&ctx.state.font.families); + ctx.apply_monospace(); + ctx.push_text(pretty(other)); + ctx.state.font.families = prev; + } } } } diff --git a/src/library/extend.rs b/src/library/extend.rs index 6396274e0..cf69dbd0d 100644 --- a/src/library/extend.rs +++ b/src/library/extend.rs @@ -1,4 +1,5 @@ use crate::prelude::*; +use crate::pretty::pretty; /// `type`: Find out the name of a value's type. /// @@ -8,9 +9,22 @@ use crate::prelude::*; /// # Return value /// The name of the value's type as a string. pub fn type_(ctx: &mut EvalContext, args: &mut ValueArgs) -> Value { - if let Some(value) = args.require::(ctx, "value") { - value.type_name().into() - } else { - Value::Error + match args.require::(ctx, "value") { + Some(value) => value.type_name().into(), + None => Value::Error, + } +} + +/// `repr`: Get the string representation of a value. +/// +/// # Positional arguments +/// - Any value. +/// +/// # Return value +/// The string representation of the value. +pub fn repr(ctx: &mut EvalContext, args: &mut ValueArgs) -> Value { + match args.require::(ctx, "value") { + Some(value) => pretty(&value).into(), + None => Value::Error, } } diff --git a/src/library/mod.rs b/src/library/mod.rs index 48da093b2..59198846d 100644 --- a/src/library/mod.rs +++ b/src/library/mod.rs @@ -38,6 +38,7 @@ pub fn new() -> Scope { set!(func: "image", image); set!(func: "page", page); set!(func: "pagebreak", pagebreak); + set!(func: "repr", repr); set!(func: "rgb", rgb); set!(func: "type", type_); set!(func: "v", v); diff --git a/tests/lang/ref/array.png b/tests/lang/ref/array.png index 36845b5f20004d0f8c4f9acf375c5a928a54b329..5bfddeb1899c45b91ac88ec90fbcac8f97f25144 100644 GIT binary patch literal 3922 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 PAH%W{#^ih{+9~2+S)t#& literal 3609 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 Od>CC*om#Y0{J#K}s9&W3 diff --git a/tests/lang/ref/call-invalid.png b/tests/lang/ref/call-invalid.png index f6c2d67f2e9a70b147748d9628a99cef5f997507..eee20e4d2076bbeb8aefb833c33d2cff4e1bbd88 100644 GIT binary patch literal 3043 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 literal 3032 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 JrI>Tk{{am)C4~S0 diff --git a/tests/lang/ref/call.png b/tests/lang/ref/call.png index d44d7178aee4218956da05f852778da116c977db..5963d30ea361ad5616d8907230ab3b39959816e2 100644 GIT binary patch literal 5661 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 YiPA|gcdki^AaEJ#$~sCFXdCQ5035u^Hvj+t literal 5157 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 diff --git a/tests/lang/ref/dict.png b/tests/lang/ref/dict.png index 45d23ad390bb1fea116262fe0f293afd49198db9..b30f13000faa72e86daaaaf8a76746f5185cd98c 100644 GIT binary patch literal 1905 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 diff --git a/tests/lang/ref/if.png b/tests/lang/ref/if.png index 4e7f471a4a207edd4a107b4f3a26ab5912320a3b..75a20d000574802ddaf901bf527c66e6c20532b3 100644 GIT binary patch literal 1227 zcmeAS@N?(olHy`uVBq!ia0y~yU}OPec@CfeLsQZ7J_ZJsNuDl_Ar-gY-o2Rn+Crq| z;Y){C2i`fnI{<`0@?`@MJ8WmpW%ps%a#Y>Wa+AI5fKtSRTb%FGRR4W;dGgWNGw{^G zg)SV5Edov_CKskMGO`Fb0PVp+JpA8aFlU*S;HBTUpUQo<&+7u#X0O|3yLHwnOT||y*8A4~k^HFB^!7?-{r|7mvI-nO_%6P?t~PYfC#I=R z$}3N&FYB2w%dB$wRC($6Kl2QZo;SW<7WF%`QQupkfq{twJMm$;060)Me#TmuHRDtU zmiQ2_eB<+RwW?D!tPdYAF6mvd^?TH=ZIiwwpXGSDK#ym;TmDw18~avlf19~HLc2-* z?I(p-0RnUEwq3}370L2DY*t&v@=8aKcHb{|s>B}7KfCPLrG|6Yx0VN2iauOXWT26I zJSKYc%KF!P#XkE*iaSOAb6hNIvW07_;+NFF>3s{z%ENNka=6d^lyL1_S%C4zs<9Wzp_(iT9NcV=a=_(m9ji%-mD_){W(iN_s5oR zyq~s)zf}B^XlZoR;Q4-){#xC&9NT4ZqyokkdB+uBp9T0|zx=P{{Qc|MYvXo%?_PYx z59rOh6(_|Vwr;&AleIkT^Cp2`z;rNW*OV(O6fANc-M@5R>BjR*@-4HIt%?+@Lvbt;gGI5a)|P^NTfPyB7+X-VgrXVvB!Ctk>v+2*R zmz~}J+xdA>)C~{b`DC$3FXc&_)&PUc?wPK_Q?_Ww#kQ}~s^fkuKZ<0zUA*}9@#E`j^;gMAF8J`onPF}t>e@aax6V7bS y*ka%6088!_<+$@d4ioCQ8U>ty`fK`@>}Ndm{z#g#H4iVSl=5`-b6Mw<&;$U^ehu;f literal 1959 zcmaKteK^zWAIFEqx6qm6A^RQYY%?X+GJ29MGn;LcB$9EWwwfbbvNR40AsHdk&+#zS zkR#)yJTwp4;>YRoSlKU+O)g@XJSX&9=UnHH-ygc}_kCUWb^mpL-tYVK`XsozkhHh` zYa0jz(x#9JZXl2fSh;-xJd*Wbyq`@P6Y6f z8<1Ey7y;OCax9OkxVn)8e0*;+;A2x2R7^Od3Bv8@h2TpK@>XR@m_H)#9D?=Yl!NUgX5D0pF`)v zUpxRzXtyVq!q62MWRTd&KylQZ9~Q;y1wDL~WriS}BHRm|zwka?p<5?voTIdGe9<4; z)4pA4q^A8>UzEDO1DzfBEmQt-ZT5>JTypIe-)h+Yzf}VVMjq8mM+!l%Wemq#+5w_t z>QbdOMwm2#g{*^zOR@UVdOtM!$`QP%grw7Ic1ZhNLIv{07zA7W6LIB_x34pQ==wM} zGw9AI`rp~1UOR2r*&8^?sF(U=nRUjc#y2)QQTJ?_dJAc>-O!CEo?No_Mv3)*wgGli zsD`k1%f4AG5BGS;B2I<mRi7Avs-{fIyzHEBKc7Bbl>hS1^hyNx``Tp2FT~K%P5%KNBDS-)mUk2^{98E5npj`;DwVQuZ&l;$ zP^xXvT}+TiPRO{cl>zV>XV}SmzEfIAh)KeQ-zqOuKIL=7d?7m3_$9 zUS7!iM)GSYFh|prI18&TUr)SOX~6ol9pok{t2ACweZY3UEqer*WV_}hB8`B}WmC(qAt5=>!* zp7JFxxIj%|ye=9xTf9iwq^JLG`q;*}{N23!U-hTrK0{-32K*l+#Ep0WmVs=mV17cb zq8Ez?s>oI>Z(a2g2I6H1VnnK%{Ra<%+E5^$p5AjWRgVb?A>8S` zd}WPV)!P=0D32}KL1@(pOlI?zDxy?~I-JiDk{o&pVnX-}>GsQE;MlH$oF!cw+Ae52 z*+zh!qdqa2=tNbDvGg;2xrk1iY|`%#5MO5L&j2_Swco+BdOJUyMzv=-d$?;wzU(v_~mf>2usBPdo`pf zQ>Uik*W!lDLPKm8u4fpT+O5Z5&|gboixE0C`5%PGpMAHX5#5n5cOyM}fW#y*`z=gj zjw5MpM;_iRVZIu>-_+pDK8nR{-HgNkWU%HOyYg|g*Hd09WnvSbmm@O9YYO~@cLa($ zSVd4)Xep1p>g=JFY{DHM*^*9NoD^Buc?hnQx^_m7CiNs2B?u%wuge(TUQe*K&lhO5 zk%%J)E{M8PEY4Oh?pAHJC&su9zIIWPMO};@@^XrLL z9fh>qLk10`8r0aaH<#8+Jz3n#&DQVdG{NzE(~K&N>Mte)c5|6|xgrwWbbp?&THiiB z)^T;5T%kjzs%0iHaPZvEZyd!P^=)4^ih=)pivvpXMQ;6P0?eqri;VJ<9qffzjDMZL M6ru}3i1)kkKP_lef&c&j diff --git a/tests/lang/ref/repr.png b/tests/lang/ref/repr.png index 16c7ea9588e41d1e9fb5eb45f186b7cd3fd79225..13ba629722a2ce1525bda6f764a1b5172b51b164 100644 GIT binary patch literal 9032 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 ac5dvgW2lP_(Y*h7MFyp=qgJM3jrk8z8i&^a literal 8451 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 dl?9wK9gl3Eddg8>25ukue*oWodz%0N diff --git a/tests/lang/typ/array.typ b/tests/lang/typ/array.typ index b17b722c5..c93835017 100644 --- a/tests/lang/typ/array.typ +++ b/tests/lang/typ/array.typ @@ -14,9 +14,8 @@ {(true, false)} // Multiple lines and items and trailing comma. -{("one" - , 2 - , #003 +{("1" + , #002 ,)} // Error: 3 expected closing paren diff --git a/tests/lang/typ/call-invalid.typ b/tests/lang/typ/call-invalid.typ index 56b23a195..0ed5246ff 100644 --- a/tests/lang/typ/call-invalid.typ +++ b/tests/lang/typ/call-invalid.typ @@ -5,24 +5,24 @@ # --- -// Error: 4-5 expected expression, found colon -#f(:) +// Error: 7-8 expected expression, found colon +#args(:) -// Error: 7-9 expected expression, found end of block comment -#f(a:1*/) +// Error: 10-12 expected expression, found end of block comment +#args(a:1*/) -// Error: 5 expected comma -#f(1 2) +// Error: 8 expected comma +#args(1 2) -// Error: 2:4-2:5 expected identifier -// Error: 1:6 expected expression -#f(1:) +// Error: 2:7-2:8 expected identifier +// Error: 1:9 expected expression +#args(1:) -// Error: 4-5 expected identifier -#f(1:2) +// Error: 7-8 expected identifier +#args(1:2) -// Error: 4-7 expected identifier -{f((x):1)} +// Error: 7-10 expected identifier +{args((x):1)} --- #let x = "string" @@ -32,13 +32,13 @@ --- // Error: 3:1 expected closing bracket -#f[`a]` +#args[`a]` --- -// Error: 4 expected closing paren -{f(} +// Error: 7 expected closing paren +{args(} --- // Error: 3:1 expected quote // Error: 2:1 expected closing paren -#f("] +#args("] diff --git a/tests/lang/typ/call.typ b/tests/lang/typ/call.typ index 101fb99c2..213d55541 100644 --- a/tests/lang/typ/call.typ +++ b/tests/lang/typ/call.typ @@ -2,16 +2,16 @@ --- // One argument. -#f(bold) +#args(bold) // One argument and trailing comma. -#f(1,) +#args(1,) // One named argument. -#f(a:2) +#args(a:2) // Mixed arguments. -{f(1, a: (3, 4), 2, b: "5")} +{args(1, b: "2", 3)} --- // Different forms of template arguments. @@ -19,17 +19,17 @@ #let a = "a" -#f[a] \ -#f(a) \ -#f(a, [b]) \ -#f(a)[b] \ +#args[a] \ +#args(a) \ +#args(a, [b]) \ +#args(a)[b] \ // Template can be argument or body depending on whitespace. #if "template" == type[b] [Sure ] #if "template" == type [Nope.] #else [thing.] -// Should output ` (Okay.)`. -#f (Okay.) +// Should output ` (Okay.)`. +#args (Okay.) --- // Call function assigned to variable. diff --git a/tests/lang/typ/dict.typ b/tests/lang/typ/dict.typ index 076a572f0..655a32992 100644 --- a/tests/lang/typ/dict.typ +++ b/tests/lang/typ/dict.typ @@ -5,7 +5,7 @@ {(:)} // Two pairs. -{(one: 1, two: 2)} +{(a1: 1, a2: 2)} --- // Simple expression after already being identified as a dictionary. diff --git a/tests/lang/typ/repr.typ b/tests/lang/typ/repr.typ index 6229165aa..666db4285 100644 --- a/tests/lang/typ/repr.typ +++ b/tests/lang/typ/repr.typ @@ -33,6 +33,9 @@ {2.5rad} \ {45deg} \ +// Not in monospace via repr. +#repr(45deg) + --- // Colors. {#f7a20500} \ diff --git a/tests/library/ref/rgb.png b/tests/library/ref/rgb.png index 3060e42c36804bf4c21128bc27672ffae951fe7f..a6e6f7d41db9793b8dfa4ebac04a53d137905541 100644 GIT binary patch delta 2907 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 D=}uUC delta 2519 zcmV;|2`Kjb7l0LzBU%baNklv}x0(O`A4t+O+**Hv(HMhoC3 zhXla?2*PXtbm6QJNIIKAkS&~_Fy(OdeGW;sKZY=1@ZRB)&I*AX9O-(J8yv|ViCnRe zv?h1Uq5mO-v}F|jtPsN9j{Dw?dt#4Ba>G)8NN~lP2gBq_2k$M~tuGM5)wHAh_eqE4 ztPrex>UnAM-`e~lQyCg{DiAu<(*Tnpv}mRVtx#ZxgG~xw84mE|#Z!7N5G167XNKU= zlZf^sJ+E3u3<7}x6AOe3;_I9c(dMB5YzJfT6$l<=gmjsI zBpN1xV9B;l1wt$bJWY%>NYcBh#(Y)?p=;4~ExPGD!@=Rc@B4`RPX8GMD__gutP>-n zv$b=!b}QMmd3f{!A;QVT3E=ZH!N}J#m5SONKC#e%M}VCsRg+9wNC!ayJ}R6ymH3}G7p z^oe8|0H8V8uK9QGCouWX!pDi!r^h#P{Y>xAeJTB}O(7@*g`f}=f4sMboDifpS=H86@}6x?(i$@F7F<3PHn_4w zNXL+HeMP;th;Zu(LPVRmVjvlEIFau|lZq!5vOAAd)IP<*F)at02OSNb~;;zGt^1+vd#HkLl_ z<<9wlVe#~+S4T3=atPzMZ%2DT`gb94v81m_G8mwUt|TOhiX!JCZ$O1MGN)v4kTlDm zLdY4}#ge3{JQs8%Qx1DdUMkyX4+GP1>BYeFO!Y@*eAf`5>0 zWF|;%mUa6M5Z3w9&GV(3W9e3a6P4PAg=-4{?6RE87Nuig%%{mQBwBw8VX|nftr{C> zUM+@*f!?8Zj;_Ywd{HP4wdi?7m2vjrK=_=R{+{jF<8WY)F?wtw)_e7)JS&6;x$t#4iY8WR8{C9ys4>CO2j(=H^n!G|Fy>W4>vY>Z+7YI+nt=HjDBuWCoi)uGE z2v1_pvqMOJXuKa9AIRpyqS`B3t*l!U2wtW^dQ9{p>wSxfQQS#ItF>a49YWqM2m~*x z-Ml!T! z)i_^r_&6~R=)Qf7XcCzkbGw=9sFzS*JQD&rlx?4D(3FdTsfNv=ok()Bfh5-ks9hq- z)K^u1j`4OuTN11i zk_L(57r=BiQW#Rgw}2q^BFPc`V#Rc9SelZ7YAA&enc8YvY7JAWMm~3{gjnn>1SN#nSb*IxC4DziY^)Ax;aMTLNJ_28ZLm{#4Y?2X5_0M7lq9t7H9RYXcWse@BPfDG_^S}KY15`n hn>KCQv}yaK{SUl5Y)GfDkh}l@002ovPDHLkV1j+Ou`U1r diff --git a/tests/typeset.rs b/tests/typeset.rs index ac4fe9b01..3041499a3 100644 --- a/tests/typeset.rs +++ b/tests/typeset.rs @@ -312,7 +312,7 @@ struct Panic { } fn register_helpers(scope: &mut Scope, panics: Rc>>) { - pub fn f(_: &mut EvalContext, args: &mut ValueArgs) -> Value { + pub fn args(_: &mut EvalContext, args: &mut ValueArgs) -> Value { let value = args.clone().into(); args.items.clear(); value @@ -329,7 +329,7 @@ fn register_helpers(scope: &mut Scope, panics: Rc>>) { } }; - scope.def_const("f", ValueFunc::new("f", f)); + scope.def_const("args", ValueFunc::new("args", args)); scope.def_const("test", ValueFunc::new("test", test)); }