From a48ff45a378549667fd465e1e6cb3d81ee30fe15 Mon Sep 17 00:00:00 2001 From: 8LWXpg <105704427+8LWXpg@users.noreply.github.com> Date: Sat, 21 Oct 2023 11:15:13 +0800 Subject: [PATCH] 0.5.1 --- .vscode/tasks.json | 13 ++++++++++++- CHANGELOG.md | 6 ++++++ CONTRIBUTING.md | 1 - README.md | 4 ++-- test/demo.pdf | Bin 60889 -> 59720 bytes test/demo.typ | 15 --------------- test/test.pdf | Bin 0 -> 15095 bytes test/test.typ | 19 +++++++++++++++++++ typst.toml | 2 +- 9 files changed, 40 insertions(+), 20 deletions(-) create mode 100644 test/test.pdf create mode 100644 test/test.typ diff --git a/.vscode/tasks.json b/.vscode/tasks.json index c250b17..0deceef 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -4,7 +4,7 @@ "version": "2.0.0", "tasks": [ { - "label": "watch", + "label": "watch demo", "type": "shell", "command": "typst", "args": [ @@ -18,6 +18,17 @@ "isDefault": true } }, + { + "label": "watch test", + "type": "shell", + "command": "typst", + "args": [ + "w", + "test/test.typ", + "--root", + "${workspaceFolder}" + ], + }, { "label": "compile themes", "type": "shell", diff --git a/CHANGELOG.md b/CHANGELOG.md index 2330e4a..78f96b7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # Changelog 📝 +## [0.5.1] - 2023-10-21 + +### Fixed + +* Fixed height with empty newline + ## [0.5.0] - 2023-09-29 ### Added diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e528d52..34005eb 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -8,7 +8,6 @@ Thank you for your interest in contributing to this project! This document outli 2. Add your theme to the `terminal-themes` directory. 3. Add theme preview to the `test/themes.typ` file. 4. Make sure you have `Cascadia Code` font installed and compile the `test/themes.typ` file (you can use `compile themes` task in VS Code). -5. Make sure you're not committing `ansi-render.pdf` file. ## Code formatting diff --git a/README.md b/README.md index 9f6f621..06eaab3 100644 --- a/README.md +++ b/README.md @@ -36,8 +36,8 @@ contribution is welcomed! above: relative length or fraction, below: relative length or fraction, clip: boolean, - theme: terminal-themes.theme, bold-is-bright: boolean, + theme: terminal-themes.theme, ) ``` @@ -46,8 +46,8 @@ contribution is welcomed! - `string` - string with ANSI escape sequences - `font` - font name or none, default is `Cascadia Code`, set to `none` to use the same font as `raw` - `size` - font size, default is `1em` -- `theme` - theme, default is `vscode-light` - `bold-is-bright` - boolean, whether bold text is rendered with bright colors, default is `false` +- `theme` - theme, default is `vscode-light` - parameters from [`block`](https://typst.app/docs/reference/layout/block/) function with the same default value, only affects outmost block layout: - `width` - `height` diff --git a/test/demo.pdf b/test/demo.pdf index 9d0483eb1a691b8c463e14307d3580797af526b0..ac08ac140217803a8c5d84e4b0b7adf691c65dfd 100644 GIT binary patch delta 17652 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 delta 18634 zcmZsiQ*`Igmi9Y#(y`UCejVGkZ5tgs-;Uj}JGO0gY`bII_WM6)=FG)AQ#ZA0ul>}s z>#Ay1)n|AXVr3Nql|oTeoPi0%0Z;Msp9T-l8i(qE%SOUTqO1o`Lh@bJLCxOE#KF{z zgyUba1X2j{gzuI}2}|jCap(SE?DY;{U0?~EkjQaF@Cl0yI0d=hc~k~ zbuhMuhv%s0g1mu9u%SV&=YnM>1>=fC<$zX{RTfs#Oem!h#AjmsKMa|e|Ls`IK=B{P z|43A6{lSdArxc`G
#2nB6<>ou87j)}AKAbn2#jPGjGIrn zDQ8i)&f-qti_oUYW=+~c{Q*Htmjj-lB=oQ9Y&B&Sq!d9kL0$Aolyo-l>v4l*R=J*s z_AlE|NthJ-oo{*aV2F|f*B?pCsP~F2y~xxP&|B5kS&1u?JgNJ#VJ#^H?%bP@N zfbSiGL;A26n<_P4zvlpWpMCCMGy~eS70Ir4bOq(XgSHcZVUE)VEKjq(5R_$- zFJ65lEg`xx_9QmL+I3lLLKmcu@i4>0Bgi+1D+>H1*|Ae2OZ|oY)RYu@xH-Cch$?kS zQqum)1+p5Wi7OF$t@>J(6>99%k90A#(WCZe)i>DtYWqKLz|7{eLuP;Ai7+(a%jJ_D z`*gJ=a27 z7#w+aehp-XY3z9V6hFm2T|G@+7d>5E(_H88($Pmy45L|i_SOlI(m49=yoXm692JmC zEf&N{4M>?uu_RQTIPf5&iCOp6?*2 zQLC`YQ_;UE+ExrVUQjnL>Rvp)VfKYcF2px@nus!nDK+#>A?rQtbucS#53H*c|7dt7 zS=(}=jG_;R>;r62kjy$pmC5TbZF!r_A*Dj%9_ zXdD9ihoBX1np_Po2WMnwzdd+Ck(cD>8I?N`J7nMA{Nlug8OQH;^0r7WzCWk4x8KXq z`F`HADM47SL_eZhYG_w5uwA^MTvKfbJdcd*ei`!i>?4rCiy_mag8v10zcrj$ad*A; z|3QC9Xpiak^?ALf`c=)xzxxzrqGflu9i;%s6F_lVabBNXr=tU0ZVZ#EF>J)Ez*)4( zBase(*x6T02enq)I&?rFa_QDFHuL<2xXaZx{)jJN`4=y+w?T#PH}(f!K4EuZxrr5o|;cvIaFWRypK z2+tblvieFhx@%Y5xsi7*g?*-9qq-jQA^nN1Yn688V(Hid<_Yae{isbt72%z-WBJli zB}FCU2^;NA2(Uhb$B*yJsQ+aD0Qhb`mRM}2&`?>{+;C+|5gQWEeBH<2*V$L`%D>5- z%_C6iQvF3cG(GB2)J#oWn?Rjb^)=FbjxZz;Q@qC`6*@(TW;}$8k$AD!YxxWQHt90F z_ZGzy0&9;!5^-X6BJnZw=#w8Oc=sP%@Sr%H*E)xT~%{kXQr+spUd>Koq&Jf=|{_W~|l|3;$!6iER2O1#5SI9x* zfzIKE;}`vnVpQ zn4Iv>C?7@0T4CJcyn$`A8`v|lm>!!Sv1dUddsZHiykho$qK<`dWSu10>8V(ZU{=0N z8C7i~5Q`v71;zD4mP@gT_Ml8d`Gu@XBCRP@g-VP}Fow7Ua!5glihw8fVLkC2OGE!L za-zW%yC6e}4{Zr_ICQw?cq07(ec}uJ$=*@874OOrm~y|)d;_GqLIsAhx2JA=-`M;j zfKdUBGnaJb{CV2jq~OtS`|@VBb)u~rttk1M&}R8gp-#FBf_s8l zszSw2jbW@O^k;~-G+y|gD~h1rr7f6Z#=|GX`s1lwbo1$tE1H9tp`U$lT6F#ADR`g359xg}i}Oh$@{ zo{XXl}Ie5^c9 zYB9&vkf<+*JyTwi3Cg)$jyYo)|3Or!!&tr+QVV#Z>xoqtKF;zmidPpc&EPXaXp1=X z`5bw%Dak3REHJVONB8?2Qn?AAm!&TtHrAgMyJ@tSeptuiSIO zR0pi6y0Lge<|{*$TcDWu(3&*Y5}x_7r}Ont)(F(ly3yGfKGqRLsqHd-R+`GJB%Qgj zW8F5~+k!HB?TzbKw8t0OYmsb;=**gHxKbH-7`WDk!vg;*wL5=J)CSq9cqA^3x9XCi8U;Nwp^t-vm3^Nn8g%DzcO z#rA0;)z@pYXEPWhtbnTz*_+ZWFWBPI^>Ff}=?$sZ9#{P4kM!I}ej#6%%Fa`mv#=!d zjk_rPKFxRM*_OdCVUYLAG$bJCK7(~q02&v-6vs88-5n3bP5sU%0u**no4=sHrvYNd zZt4AAHPnm26!jQbF|F3Dr=xAPs=O5abr%&>S(s?Y8h17?5a#Ftvw?Rw2Ut``222J| z_`Vrkfvtm^$L)7~FR1USegRyohj*;+0e(^fh1s>Dt6Qfh3xcgN5*!N8LjvFfLlZPb+ zH~J^&Z&*abR3#2KttT2C%_m!rH=2H}FQnb#uGiZq`hIkm{ZwTzPrUaw8xnR~z?PIx z(FrcHuao+#4s}5ZqpBVWy{v8i3nYx8(4NfVgdcOaCO@BY-Lx{2qb+YME z`2ulS%s)ZAJ>rw>6|p&tsodw%IwU7zB(u6kp>hczhTerCLf`e0Pp!#o-Cp*ZA~ zct_a$L-vGmPuL~+9*&}j|BSVfsZpAJozW5(qh_${emm)t{^H&x`krKvcX5Dn<)L4e zwKc}IpLR0l!+^5?d_t<9?>EIVU;Lz=)myEqaGTL8KwRC`bGfbe1R&l+bg9~Hi!AWH zk!JlFTZnmrue!0l$Lz`qy&XAO_33&cyR7E#Bi>*4D14zY81Q|@aV74Kl(_wN@7txx z*9TKRbv?oRE2U)U*;RL&Y(e09)f09~Wpl^vo+qp7LUnh(%eo_7ygPSu_VVa4s>Wae zj8-GGEP`9}e8^9|9jIZc&>|exJt0XdlkE(8&wJ2Na}AT$L~t(4c~J6Y!sbOZ@-R=~ zkom*H-6G%aU=eaEGgIAYByeEueZ>u_u!Z^4GXvGF53|aA9K(J<_Cn#umkn_R0MR!OYh{+Di{#h%*aFi=d28srF)4fPbKJ$g%>KOhb0w`ABag4CF6~FuQt-X8ai|Q zZVVt){h8t8bb#CWgxK*!)*ocs5DJ@EMq>=!VywFVVs6N@4HZRo%Y<+9)539~dy5<9 z$G%q!wsU zbp-+tzAol{1=MyVV&k}lP4Po&RG3_Lolf%DcNpzQoTeCPxSz9)CF^&ZUgrfP94sv^ zSC?gRxKEzZ*{LPfo2w_LBqd`QI6j-P6e-Zr{^mAw68b1u3r7bL3fP~e&g46_r3FNF zl@|0&rCNax1JN>LP(My@se zwvH)@ODU}|5nrJudt1Ydb-T>g3ao+;&R&eU!uX)Q@%|N4z#>)9wV z(p1dVwtj{4SThjirD$NV@r4!jwUP-*RDFItBk~887?y+;ykCxzrhg3*^i>QU^<;l~ zcf0s_KJYcal?hh*8kAveMeb#%o!h6&TW`rK92kETEASjWJyj=Jj?FV}W?mmir7i7@ zaJoxSu#A@9dAJYBmtc*YhWL(H|7i-w^$!NUMh30Dd1-KLAhmuSGiS^kT2^t?1p#cAEA&@b%9xZu=|_+inK}n+AAjJYMzN6lTrLtP8o78DRPav`WNWC_p!ixm zwep@5n|lp#jKtuhzy5sfSLEk1TT%d;pfTQ8i>xzya#y6T#Z>Wd8imjb5y=^i!()+A zC?FO4o36s@)7~PXY?k^{fdGl$vuIdc-kt1(y&`3SruKrDGO6_Uc7It(8u0}zx%5;! z@kTezTLdUuN5m6eYj^c2)m*&;VHvTg!V*&YiZ1SUQfg{vU0+IC=96^Qnh>-s)!)k1 zrN0$fWu^^PRnj?&#^Y6@NU&J(-*5x<%m9_~fnT#b7!~P(PAASm>WQ$HVU~)P#t=r~ zrZ|WqU5-HLj55>gwgv7nE-rFkBPvMThn|d(TzJ>3iDH#NP0hfZMhvOp0BbTLO-nVP zg-~54JWxw~kd+Z9`~gkuhs+8RBPrA)JF@E!W9bVQR^=W9)J${ zyi1?B&eROkb7Gi%iKl|XYydV+kKBI-t(Ij~*%%}N+I5R_e#WYh&!9ZOkfp15{N9|X z6Wgb5;|picGpMVMp<m^V0(HWta6Zt)x5AcjqJjBPy4%^1_8a4rM}VcKCInTy~G_b8prvh^wSBUQa&ayBl=QDw8au^2849SD1|XigX}4sI z4I4WxGO`xCk_t3i&JP){z zY!gKltWcuph>R(LSETYaHBc^L=b{_3SVRfE6gr;)vyi{khDZpKq0LZ^G6ECWo?wzu zO39%_po~JT{3coe_Cg6S`1?B$PvESK2fCHAJ&zN(Rc18|?2ky?$K-ZeC*i+=q0=bj zOdR&-q-IyRnFbhXsC#(X91-i5BD68d%rgk3g>peeTtHMR-Y!-uz>efyu!?EKG$~h| zEneM3og(mYGsH1tBq=JygEO0h^cr^FKnu1QXK9C=v}cX~hZ|(JD6uCVaStt15$iqM zo2%8LAd4YQzw^t=<$OYnSj!gGT`5j;g9ICmh5W<|sn!r1JCLwe*g)#_8ePC-538d+ z`esOCmVU5-q0|l+sCGsvo#nzV#?ECiPT@FFFJ09Wi^{K~F4WB!a7D2fkBP`?w~ZfX zFUn`r-0_)?*?yQQ8~^o&f%whIfx}vtu-p?SH;H@*oU25{3rfJp`KK8xDvID-U6dR3 z^4&Z=4+aVJnBetIBciQh7>bwoc2ofP+sw>T3TBFpKVB;$0AUgmHXkM<^eVjq`dU?* zqZn-@rfe2ZfS}^Su$YCQ%)5&aEcepFW%bqMK1)a~Pp9NqJpMyB*7)d$dgpd87R%AB z%hM>+c62=Ap+ST-I9_?UO+}s&QTcOtZEw-(X|Rn=3%#Od382jQ5K3Yd7&|P)oivXP7~O3HbUTCfE4>gAumWlSw?VH(NYKX0}quMpm#bIy^n= zwC}}Mjt9F4!-zp*Z2&f&%zi!o&4upX;qcz|E?w4l6{BNIc$4oS4nT+Z`N}V+Gak({QXiNMvffdz(ym##uVV{#Fo2zt9&Qwo)&xI6mIVs zv7#Fcc&bzO*djofCBdqhgV{;O%U2PhXO+dH9f$5QQNlZy^2QPF!u>%rr4%s?bHk}S zIz)^Dqp$rTIiB;4SA(^U|6IACl@=0MPEtZ#3MQR_?P z+vs3B{;<}2J)Pm8~Rz6cfn_ z;Ls&69iyKA0g0g@pf$*U4Wgor*u=#lMdIFW-V}Ekc@~UU??5MBI(L0`dB$ zQv*$mtsDQ_z1monfe(4a&!e?^5Bd9rId{AD`!*8g6*X<{A6^6dEYgp>k56r{KpcmP zZn0K$8*XWItsC=Gz=?xODPe%!R^*-$94>2#!lteBkFQ&8ar{zJ$sQD()F3-Sat-s5#2Mm||C*`frq6gjOFw#DZ(1Z`wwM^pdFjB9-#g(h*> ztiYZnbH*>I%z_Ux7i1;@BGC8pK%8!=5RqmqjA%Cp2iwe0IznQ$4&oh?9Jn;a28$9n zhWhE}ji}CmDH6E2YAd7)CQrh0AjQd+i(VVi2s@hw`?|ys?C*HJeY9Pye#7>$A?0eE9bZE@$76dYB#I29oM`Qyh|16 z>Zox5&-$(rSA;D1Tj2B&0IQb?Wx=LL6hi$mS$^6u1?dEg<$wabNo^T%%+5jimD}>7ek86&_esz%;Gu%%) zfSV*YbC=Fe4!qq~^AOQH zUCHV|kt?%SFlZ<9SdrYlOWB;cwb@w*Wx!_}1(wly2K;4lLOj>f~6@tQo( zlQZMuY`9BxoCYmcpclEj*{52(sAu25&hjA(vg4;S6z3z`X{9OACo=zKYGdGdPPVf41 zRVM8iVu;~yZ+&V0KJEtEuydir=7?DEyLBDiVvcPfi41p# zOBH<`V}>9dQbyP=a_06%i4Hj?A0^3iAAP1@bF<2U+e?o<1%+t6Z1ki@Q5-+Ha|s-# zB~?8>%EwZPY%kJjKqE}xh?!+;!{lo9)6}M6#WDuU+hs{ozyQ-Dr+}m)3A_ia*86Ur zR9NtsH9rX!sS>&Uti1iLYRmVc@T~i&atxI z1@9AZwb|>43;}gFQkj?*`#>uq>b8Pw|(C$CR zxFKcII(X0Tdz*m%`bhkhmxQpeIwVWtivqq>4}^`>vVQU0v*SPaTC>q$p81{oTT#FW zP-5>Hc9TC5m`TjleNW*%MS)eI8L1pPQzjx71rObh@_342+VIMhkqlr7EGw z8O*_1*1!J#3I;8AWy;3s^@Ye|I!aC}Mz*sGllTGX4oE`$kvMxp?>!qMQS|367BN6cBI`nwE{rr8g$KeWBwia#P(P z>)DWGSZ4N$V@CYX(=2cu?b)g@MpyC^ykP6K1WZ?kuh&CD95$w3%hWYBqhjzTqB5f% zB*_|G*u!38;oWWj)k|r&6FeikP7P?5GLv4DsOhYqFzh_3R!vhDAJlziv%sK07>E1)#E1d z$5#6#e=2a^czcaZX5Jf)!o(HB1vq9o60O(2)(&NRUtABlMXqzQXo9NxSi7zMu<}Z) znF!l4@w>78DSBDa%E|oEjB3M9{~*NZqAA?BRtu4`_&_tfQpXW>r(4&aU_*-v$eh2}&=h0WqrQO`}$Xy3F8&{*le z2LB3ya#Xo!C#7Vr6P+GZkQW*ighx@qwWBOfz7-VOzPcp?TfEad-^UU7o+%T> zaAp&t9x#k#5n-cZ5Pq=b;bUf9ZET`a4WY=KD&mr|IHY%!V^1J)@SZpO-{pBYz0h2s7V~RVYvpEu)Pi?C@}R}}l+8_GQ}5#=!e5=Ensh9VqUAzc*PX@> zrs{pQ+tkL?w1r{T@)0F6&)@&+L`RBv^WRlMM_1x$JoC6jVEBhr-%<>}bIHxkU#NHI zyrnKwC(BCb-Q1dPUJ9qWW3y8tccN@P8<&e0W@9?3fdo0MQL%##$-r@sRz>A;P~)Fu z%1LPLNeO-DDqi`vkl3oBOgb&$TRiReQ=|Deg5P$1E8i5N>qCN`Xw-zDPlnFRn7+*5 zxVpzv60jNH0;WZdS+;6iHLR8=GGoF;gdO?M^pcOK?5mk1te6Ap^@TfUSX#$w_mOoWD}EolQagq zty`#OtXyk1Vf6wl#j?(n4Xp5M5WmgY2_0d!>X~WsE4ew(G&8wSv5ad?>dxq?4YO{!p`N1078nwgny5{iZ zU~_&fHzC{ooNO;Yo8Q;e_AFu2%xE;8Y_iUZW3%?4&BmcK>-Y21R(LXT=7hqO&f3j+ z7JxHgO00F%z*S6(WTQ@R&~A0VK<6KuqF0YV*H653?D2G^h=P8B*RI8p|^*S0bLP-?X7ZVRG|NW*!qwJA{nbv+=D@k zN82rxrxDJHBLl^odPYO>Qc!xYbzQPN6_^co>_i1o(3TzLKf^QA&JMHoD_MO$C^JM!7ef)ay7`8k% zsey~tH{$r>Vf4Mu%t_2ihDn&rr8A7yPyYV*Fc^;7XQ8C*o`b_4KFkD=|Ge>W3Q)yR zUp_3+UFv!-SSI88icUrU78@KE z6CUJqu_%CtcC66!SS;KqXJi`VOulm4H1#Jt{VH8bKR_ceFAL5KF+EFeKx+Rkv2RMQXx*O@8~@>1iLL~MVfL8LlW^L(>H@S;y-0;EKC^-Q$P$jgcRjF zqnWsDr#8QSQ9;9-U79k(k0x8)B19ym5Ri>lo#@*~aIQeM6;9Vl0v$KfGuRvAjXTta z@2zIA2eJLr6KIKHf-bQ6DPj|9_olf=6t(+}0&s}p(rxy!fZg~8aEzBcds6u)74JblN|b$5mF1$4H$bz?*BKMj3&->_vQeA@qbwtiaw?lwBFalVu2>&_+F zFn&V8)IBBb(CC4hb_BHmsDxVBZI{2!&J2!WxO;Kg1fJY)?s#qNugebI z7`xy;n120szN-!fjIN8S^Vw>rLLR@gXo8X>_W@TSp3SoEluVNj0P6!A)5J$3!zJ)uREvVBjjbksaBUBd+fiv z&*+=#(fohSY}~2|!qW13zc__nUf;f7xa^ipJgobeTUv8l8U${#x(Au9|-BH({FWAo-R_BPzI|G zTfMRmM_*#}RicsxDX^;}mj+IE?mw>^?{{3UUw~{U|2Ox{H*ZY{I7SF=e{i8`e0Fff z#<_dJ{Y|hi3g<@Pl;)p@WPVtj+QJ1)MaL|4?Cu`oswLbf!3uqio-g5EnGk_lJJkq` z2DZr}2A%RbEVk39@Q}UeUYWvJywyv%cO;_K<%X0rUYR1`xW!AphFodIOGwkfKKV<& zq<}2k^r_#pMEKn4hyMM~Fo;p|P9oU%{Pp)9!>FvXrF>HUHqr9kkhlEmrBle>Jcqec z_+Ej6C7K{nfvP2~)2>)5p_%VTuE-%r9L4IY6J-?>`l>eHalc#N#2GLZORL||nonfw z8DpQv-I}LF;(x%JO9t}au=f=zLYWzcdIE}pkFq5LU9uG`x!U|PHO25Y&eu8iA*hV_ z-&yvIHt9?HYw=df{KsVXAqDH#LyYd8%DIX)olcJPG)X z-s!wIs$rbHRfSWUSVMU2n`}EJG1;Cww%4}cv`;&-uRolNRx_doZ^-mZ?T;``DV?KB zkgnY7x+DSWEShqeSWAy(Q75W+hMxE0n*NJ5p^`dTX_>gKnsTrC8Fu-+bR~7XYR0}k z_O5r=JhWXkp2FI6oG{+I7~F+QM-|;hqhZ+ zo#H-sSEQh5RJ{OJq$RNj&C2eJ}aJZl}VKKQtF&D9JN2QB*vPzR%Yc5_EpyJ=U$7?;Wz(E96oa5 z_jWz?EDfc*b!D(>-&8_7wIpCzV5`&qYnxOs1acg|)BId%b7Ds^9|2mE(DGL`9+I18 z7K!hYXL@+V?-HklL%qfXelekBckasvk$aOJ4jN*Nguqc3+V17)JhT#>mS0C`;}xb; zsvRwI%KYuq)pJ+gm+!X>)*vrU#A1VI z*}Nd{vd(`Q*yH5#S;SbYwz54npEZe}gd*vf>GKyq@TymMB0A80#VfWFG&sJe+*+gk zet8{3!(`H3v`RsA$)a*1Upa&li5aYb?kH2w^a4uvj>{xouj-8wp*s%$uPoV4KT-w{p7d1{M%fbi7ZbU9*{2^L-Czo7Ck_D(4p3 z>Vw3=%|aqCjyj5r|S_@Y)Phga)jq71w_a;FQ@E%(p79+!V5^tVAoR zLR#;;7akk$+kjpko7!UWA2IN-hG`o_) zRb;)*)>>`~d;;_-?dc2_YA1Z@iR)g93xlUNwL>6xhm@}7MY2ui*11;ZYytfCE51fA zgUUO%baObZMGvXD&Ma>jJj}v2zqZ{7Zw-5SOYiJ`D*!?E)@8Cuub3g5j=Y0sOpAmR z+buP8V#!&)`M%&Z%VYy;dGxXtr!yqbPAclYerWwx8t1KBaEM?Q zKNPU!rZC8b-BCYXziYTUyp%;}rp&L+uYG=9pH9xqQxiASc5nTAo?cL=c=z`r&nCb7 zh6>mP0pR#6nWz+1t#H)SgKB0}c zWQ+!lH_xCqe`RSLzg*-%I9Wog@D(n!VhtEplL)pjd0w@nwIj!)?R3T!OG=4`(nKAoM1Pfb|yct~I%HAz2w z@V`3R$ak}+JAbSlobg&^`K5F5gj!GFmr;cLbtCf5UE8)rIe4CJThn%|(kx#QO)9W# zx(GcudE<4bznz5B(XcKLJ=C7T2c%%ATAjt@CQNjLZ`rI5f4-WY^Sie236@t+Z%Ml# z1A4=g4GGl;4r{NDuek%${A1WPX3T@?9`fat*?ozpi$@PJpUYJ`QziM=Yu`wy@~Xeb z#_ot}eo;}%xZPXEIb+!kr$mt`GNeQBuCJjYBE7l4_Mj;()x^f3>NO3Q>5B_h@Nb75 zM{Cw<60;%bRS?uQwr9r}WvfHg=?WT809w8e=sS*%E^hZn$)2S}*(ni2?c6fkb;5DV zbPSDo24F?cf}c6)H8QA~>_ym*f(F!yc8DuuehIFbkn;-xWqb2D&!N!kE(b@6zhZgO zQW5sjelSnskxDq#W`$0L-$a$n#1*RW{PUF^W~i~#R0f_^$`ZqDhX;EJ>uY{&6#y<3 ztXV1;Dx1WE@j4QJJ5aW3S}ndJsyCXq5mA^jDHDy{^GTDHbi4mCG^RkfhUdgiXijr{ z?XG0C9mSKB8wT;}?}O z{VeIu-Wzj$XQ|C0Zmm-^DTGv91gxj;4S8QPs*FkxJD^piSK3U%j^sAAPoD`+Z?+*s zPm$eO6#eE=YSK326-qHGlE_0Z1Z7SnmCo+eQOv{A#Q30KI~649m#Oft$i%EU{jRXt z7DX|$dp>Q#;#dpzfJI92K5s(9cq1UKMS#EMTYDPv@P411s+)Wd2TnO~0sF90W-J>f zew{1?QF-o-xh3tf6r!%Oz^phg^DRG!mQP~LCCU}@^Uod%KbXf?nY<_OeZoZht5=zb z;$-+w+vC-$Oz2PDWB07urtTGiuYNkXXKKXY*!p!_kBMjOp8`G9?|gWEGPr>THJN&Y zp4Qk8-OaLB^ORW-!f%-Czyk$}pTkJX)JWFD$|o?TTJ1%ut4R|-WwiyGyXHBM-2c=@ z{d|-U(r8C`dzGnqT7|3|oP^ki`MBXjtT^jXoXI?>5ubbp{5%cYskqSV-?{0tD520T1vTYR#!a5te3RStY&e?F(Koec2Lx5l%8PDF>ztS zp|>(*R(HQ*UUqWItoGpB$6DSz#>&DrsyZ`fMyueOHtN+TTUaV0M?nKpaeU;S!(7)Z z8f#Zz(p%)~W6cj8W9zifG_Kb9+HFMFBzfMLv;Zi54S& z2<0N&)12f$bN!qtRskz!ZLEuCc$*7mcuS3wtW9HzbEzQET*>b-IW8^NqBHt(tAc;x zz3E1H{Nwg`?DN)m+@>W~S2;9AQFn?e+Syq}UA}|qFQP-DQ%8j8#wSVK1M|1h^CP7n znLxfpfy)ES{n5t4Jl|il6RZij5vf&KDL50ka5&eZAdnI&3%wF*(UT;x${PEeY5mBi zX@pCfv4v~q8e6Z~30jXF6Yk8+Tz-f+{qGH}`EOzjyxcs-y$#b*u_HaWLJ1-f0TJNL zZ&c;Dwsin1-3cr8k2-@8$2tY*Y*}VQC%`bSHVj)R&LPBzc|wsAzhdxPAvJ8tLRq|c z-Jnt|bJfgH633*`aOMR`IYIdIj#Vb>M2`lS;Z4JFFjCN(cEe4wPR{AD<1e=7U>-*I zQ|`JFAth!iOm;>un;A*om*RqgpMHf$u8#>GdNePbjskaZq8rmh-v-_fIXc?@x{|p~ zD{w!oKB3d*KZIAps`WJb|ANk#IO@A>vLO<_rX$zeI26(*)TL7-#L}QA zNTv(pGyh-28S{S;XG*{SW1IPJ%_5rS2^BLx!PpWQW{DC$w~-P4n-pW_VrBaW6r%uiCmaZ*FfSicAt2B! z2cmzbkI~N5WxiBd!)Z~=6F8tPy8TA!i2IJC8DvY&uB`}aJ?M`k3tbSG6n(?=-l>L_ ze1jtKZ}8rEEbA^S7AUgdb?c~LNtbn%b6t8ZdEBVpphHo>(Z6(hJH$}X8%&e`C113Z z?RU356`xlZ70=G8@{X>e;B^V7NuopEmI%$yDtK`8MtYX6A3g5NjtqZ&bkx<9JE1Bau8Fv`Kr?t2qj@ zEah~&vjJ1PIoNNE_K?G+MfDv7n&_&JgmPv-TzM<0s=Rd|S*U{I)70;MDw)=#60`;( zgky^8^DzMTze2WK=PmDrvC;^b(oI!<{v<@!3fJ37TQV2cpkL+8;V3CXc8`_HU^mKMUvH*A452S^XD>>BtA6 z4g}l|O0NElEx%5kZ~4!gr@AT1#SJdCc`R`}4Qj_~Bl9%Of4F1=J0Tcx7z!l|BNvuS zB?JKY)3K_Eaxs_V#=tHM!wbTOjDu8|%87TbpfiWA7*uIN5yPFwts~@(?ks*TNCtuI zvOOxWde8(Pk+ImM%ZelKIEeUWJZ)7 ziy0f(Yw0=G9Sxl3@Fk%)Cz{*kzH%~$4y|VEkO0Fq*z$4kL=pSk6;_CfdXh7 zhA|H9L&~|Ko%KL>zy6FuhovyH5%3RV_J1djo8TL17oadJ9WeZht_}=Df z`NF!dAj3*B5G zARZGy$gvHjIH+LgF;(ctS`6iC9<5}xpq)60MY@VfgC=9IA3zcsu6pqquc}I9kUil% z8&|d?FUC=vEYfP+q%AFNqqfz+Hd?OYhUs@I?grCFLPRb}l#UTZ~2Tn%sZn%n+p$tRt#TPW!apP?RnO@I77b~*kh;tZbBrUq; ziBdwWa@sE{d09S)!>7LtB9ux67KRPAx5eC2vvHAkWI1fLHwpI5F*LyK(6|RY2x2;W z!kqiJHA(N+YHe(6)?#tE$tKRD$!uk@% zrLB|Sq&Z!g%NR1X!Xfhy?Wj-hm%=!rpGY+~?7!Kp9#r832b^HmAAS59WcU z8P~A_icssTs|XrsByG&u@rJe$QcJlXk-g%B3}!eldP;2XC9X^s@%*T4P)^JfCs&(j zGf}(&J-J~IZ#Ffiq-+t;@}*+ZSeI<@SdaO7ck5A<2AeT%Kl%jyg^l}qnbKg!VT zEf7vfM+T%c$2f$4@AE)2s=r_PMeWmA@6uTza-_LrK1plm2!W<@q)F{)aD=511nHPy zw3SAs&;_3B-X8`$q3jLkUoIeY|2S3=+ki>qhw`TBD%NCfPXc?r4Xx;cBdDBNG{H_} z`4zZdI5)Jh9fY#+5uCK<5c))u!*~u{B)v1Y&utINg^?>Gydo$CG`2I7y|p-dGG?%T zZ!>&8^S^X~Ik*dW?Y(b__|)$cQtH_mjU(%$cR0MDZtD6loUsWtOUjwRNcU_ONS@|a zv}hmKCeLp`TL4+vVyz`KrmCE->bOK-@xREj5B@zJnoxcck@O>LLwo0ZNltm;({;$d z&zxH}RDqzDF88BL9PW7k9TD5&CVwg4*pibCi5%jK$%#Rnjoj61^Q*C5N}rF&f7gM|}4 z`hfznS;C)k(ae7G+vzU!zQCr^YyyLG-fh=A_6FUk{-jM_jfW4luzx+AeOo0m-}tV3 zntxP0NYNa2|d?ip*|4Q3z9IVA3&@#Y|)H3}A!o1Iw zD?oB!umlj!FiU~S*cbEAEIO%}teRI@u+XQ~?)ocXR&YFVv%-sBnNVosn!uCr2pT@U zK%KKC<~C8~?pS_3qC>i?pjd z6n#!*{fdO${hd0FjC!!1VQxLU8Io zl28g1uXy*C2Q#rxPDUz@N={Va;dy=M?Ifg()P~e>sp;7cYLm<;Ty)?G!9inU{ zcx*Yhk>ArsQ!b&otX{Fbg_1+G(f=}8Vr(#<(@rTMw1N9JwE5@qmm8-pxSI2=@{NXX zxpKXJEhz5jdF?v3702Sj-hr0#ec(Yx)=2<`j{pB_p&?v6qz=}T&rzNp>V3=>7Dt;e<)X3hB8LeHZ{ zY3v=!?wCD)-TOQ5d4K0U=RMDJ-t))LCBaZh+y0la!MZsjR@QTWA23uf`eVY*u87Ql zqXSord5hdV4{UvS2#&NaUfyT#Y#`_ch06-RC9xLGUV}a*&VM-B4pJQ zX5z1Z=x_dENxu;UpWl>%0wIO4sgml(qt0dA%)j5``;y^1b&KGSg z%8}L=ryR~dbJKmO;hwDJAm!mXtmV>gYdNV#PmXQCe+J>tWEJEL8l7;$MN_DoMc_LLFBo3Dp8v3N@#e)Co#9lvyKSlsra zDE)TJ=&q~k5f~|lg-+fQhDWC@b7m4Z*H8sB$*RiuA#RWOTEVwMaoe!)(2lXOHcC>Z zWOJ&@Io>4lWpC3`qrxM$Z=_@H*$h~alql#3>FHrn3hvx+&z~)OQ0x=#pF8f6*U|9q z{f1jDw3s1Rfm_Ou)oz95yKqUPq9|=#rtW(qzby3&53brc78;~1*sx6v-hW>7)q&yU zyXNB#X|Ce%fcLL0%-=UZjUNvRExN7-1k!HxtWwo(FT7kaH_OZ%SG0H%^#*Zux1tid z5jrXn2!s%K_{GAr*%s!Y;$zZ zk+n)ISn|4OHig)b!JJWFwYeag!w=loF^Y!HJsf;&_Gw5osJ=4zB)0_Bzt+;bDL`!3 zQ-;f`987%UJLyr4UdVR)vH^>>g)hZ^%KlZGE;2_-R|dKS-S2nGI$obLh@>+6J$_lx zC`dJAj%13)B&yBb&rikUIqlTXV2$p^y0{n~5I#|U0Z2t_dpHR}C!{)niRS150d%c@ z7=W}55CEd%u`(C4e_=v^1OQg9#HF2Inobmy8YW*x5+8u+xKb8|bGj_2bs!+VzsnBK z==3BLpZ8=IHrfLb=))`={ke?o8b1bIvG@=2Irt-)!F1b+a5S6~wuC=XR~#9EHEz)< zx08KSZr8{0Sq#8Fkf@j$T!4{~$lnRD89P{UYz7a{@3b+5C^QEUq7lJ@oeMSfrMcXE z#boWP(JzVO@d0Ftcr{1B<^z=fO0gga9wc8%LMu|`Uz162#f5Hb5{aV8_Etsk+>eXr z=qKP$Z~`!fyDIJ0P>sN;22d#!gaX8xOkxxa1Bq%_(*X8I37*w(*vQic4ky2vu`d0y!KagC`z^G{0-vu^d3dIw>f`<41A%NnA#(5fub!h>@M0yPwBD D#pCqv diff --git a/test/demo.typ b/test/demo.typ index 42ffda3..b09a1ba 100644 --- a/test/demo.typ +++ b/test/demo.typ @@ -54,18 +54,3 @@ ansi-render(bold-bright-test, theme: terminal-themes.vintage), ansi-render(bold-bright-test, theme: terminal-themes.vintage, bold-is-bright: true), ) - -= Render empty newlines -#ansi-render( -" - - -3 empty lines above - - - -3 empty lines below - - -" -) \ No newline at end of file diff --git a/test/test.pdf b/test/test.pdf new file mode 100644 index 0000000000000000000000000000000000000000..291d2f38a59f4430c1008c4add10fc889e280b4f GIT binary patch literal 15095 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 Tewo=AwNF}xzw2Ee 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 literal 0 HcmV?d00001 diff --git a/test/test.typ b/test/test.typ new file mode 100644 index 0000000..c2f0304 --- /dev/null +++ b/test/test.typ @@ -0,0 +1,19 @@ +#import "../ansi-render.typ": ansi-render as __ansi-render, terminal-themes + +// workaround before set is implemented +#let ansi-render = __ansi-render.with(inset: 5pt, radius: 3pt, theme: terminal-themes.vscode) + +// newline with background color +#ansi-render( +"\u{1b}[101mHello + + +World") + +// Render empty newlines +#grid( + columns: (auto, auto), + column-gutter: 1pt, + ansi-render("\n\n\n\n\n"), + ansi-render("1\n2\n3\n4\n5\n6"), +) \ No newline at end of file diff --git a/typst.toml b/typst.toml index d8edcaa..5ed0b3b 100644 --- a/typst.toml +++ b/typst.toml @@ -1,6 +1,6 @@ [package] name = "ansi-render" -version = "0.5.0" +version = "0.5.1" entrypoint = "ansi-render.typ" authors = ["8LWXpg"] license = "MIT"