@@ -731,6 +731,109 @@ class KatexExample extends ContentExample {
731731 ]),
732732 ]),
733733 ]);
734+
735+ static final overline = KatexExample .block (
736+ r'overline: \overline{AB}' ,
737+ // https://chat.zulip.org/#narrow/channel/7-test-here/topic/Saif.20KaTeX/near/2285099
738+ r'\overline{AB}' ,
739+ '<p>'
740+ '<span class="katex-display"><span class="katex">'
741+ '<span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><semantics><mrow><mover accent="true"><mrow><mi>A</mi><mi>B</mi></mrow><mo stretchy="true">‾</mo></mover></mrow><annotation encoding="application/x-tex">\\ overline{AB}</annotation></semantics></math></span>'
742+ '<span class="katex-html" aria-hidden="true">'
743+ '<span class="base">'
744+ '<span class="strut" style="height:0.8833em;"></span>'
745+ '<span class="mord overline">'
746+ '<span class="vlist-t">'
747+ '<span class="vlist-r">'
748+ '<span class="vlist" style="height:0.8833em;">'
749+ '<span style="top:-3em;">'
750+ '<span class="pstrut" style="height:3em;"></span>'
751+ '<span class="mord">'
752+ '<span class="mord mathnormal">A</span>'
753+ '<span class="mord mathnormal" style="margin-right:0.05017em;">B</span></span></span>'
754+ '<span style="top:-3.8033em;">'
755+ '<span class="pstrut" style="height:3em;"></span>'
756+ '<span class="overline-line" style="border-bottom-width:0.04em;"></span></span></span></span></span></span></span></span></span></p>' ,[
757+ KatexSpanNode (nodes: [
758+ KatexStrutNode (heightEm: 0.8833 , verticalAlignEm: null ),
759+ KatexSpanNode (nodes: [
760+ KatexVlistNode (rows: [
761+ KatexVlistRowNode (
762+ verticalOffsetEm: - 3 + 3 ,
763+ node: KatexSpanNode (nodes: [
764+ KatexSpanNode (nodes: [
765+ KatexSpanNode (
766+ styles: KatexSpanStyles (fontFamily: 'KaTeX_Math' , fontStyle: KatexSpanFontStyle .italic),
767+ text: 'A' ),
768+ KatexSpanNode (
769+ styles: KatexSpanStyles (marginRightEm: 0.05017 , fontFamily: 'KaTeX_Math' , fontStyle: KatexSpanFontStyle .italic),
770+ text: 'B' ),
771+ ]),
772+ ])),
773+ KatexVlistRowNode (
774+ verticalOffsetEm: - 3.8033 + 3 ,
775+ node: KatexSpanNode (nodes: [
776+ KatexSpanNode (
777+ styles: KatexSpanStyles (widthEm: double .infinity, borderBottomStyle: KatexSpanBorderBottomStyle .solid, borderBottomWidthEm: 0.04 ),
778+ nodes: []),
779+ ])),
780+ ]),
781+ ]),
782+ ]),
783+ ]);
784+
785+ static final underline = KatexExample .block (
786+ r'underline: \underline{AB}' ,
787+ // https://chat.zulip.org/#narrow/channel/7-test-here/topic/Saif.20KaTeX/near/2285099
788+ r'\underline{AB}' ,
789+ '<p>'
790+ '<span class="katex-display"><span class="katex">'
791+ '<span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML" display="block"><semantics><mrow><munder accentunder="true"><mrow><mi>A</mi><mi>B</mi></mrow><mo stretchy="true">‾</mo></munder></mrow><annotation encoding="application/x-tex">\\ underline{AB}</annotation></semantics></math></span>'
792+ '<span class="katex-html" aria-hidden="true">'
793+ '<span class="base">'
794+ '<span class="strut" style="height:0.8833em;vertical-align:-0.2em;"></span>'
795+ '<span class="mord underline">'
796+ '<span class="vlist-t vlist-t2">'
797+ '<span class="vlist-r">'
798+ '<span class="vlist" style="height:0.6833em;">'
799+ '<span style="top:-2.84em;">'
800+ '<span class="pstrut" style="height:3em;"></span>'
801+ '<span class="underline-line" style="border-bottom-width:0.04em;"></span></span>'
802+ '<span style="top:-3em;">'
803+ '<span class="pstrut" style="height:3em;"></span>'
804+ '<span class="mord">'
805+ '<span class="mord mathnormal">A</span>'
806+ '<span class="mord mathnormal" style="margin-right:0.05017em;">B</span></span></span></span>'
807+ '<span class="vlist-s"></span></span>'
808+ '<span class="vlist-r">'
809+ '<span class="vlist" style="height:0.2em;"><span></span></span></span></span></span></span></span></span></span></p>' ,[
810+ KatexSpanNode (nodes: [
811+ KatexStrutNode (heightEm: 0.8833 , verticalAlignEm: - 0.2 ),
812+ KatexSpanNode (nodes: [
813+ KatexVlistNode (rows: [
814+ KatexVlistRowNode (
815+ verticalOffsetEm: - 2.84 + 3 ,
816+ node: KatexSpanNode (nodes: [
817+ KatexSpanNode (
818+ styles: KatexSpanStyles (widthEm: double .infinity, borderBottomStyle: KatexSpanBorderBottomStyle .solid, borderBottomWidthEm: 0.04 ),
819+ nodes: []),
820+ ])),
821+ KatexVlistRowNode (
822+ verticalOffsetEm: - 3 + 3 ,
823+ node: KatexSpanNode (nodes: [
824+ KatexSpanNode (nodes: [
825+ KatexSpanNode (
826+ styles: KatexSpanStyles (fontFamily: 'KaTeX_Math' , fontStyle: KatexSpanFontStyle .italic),
827+ text: 'A' ),
828+ KatexSpanNode (
829+ styles: KatexSpanStyles (marginRightEm: 0.05017 , fontFamily: 'KaTeX_Math' , fontStyle: KatexSpanFontStyle .italic),
830+ text: 'B' ),
831+ ]),
832+ ])),
833+ ]),
834+ ]),
835+ ]),
836+ ]);
734837}
735838
736839void main () async {
@@ -754,6 +857,8 @@ void main() async {
754857 testParseExample (KatexExample .bigOperators);
755858 testParseExample (KatexExample .colonEquals);
756859 testParseExample (KatexExample .nulldelimiter);
860+ testParseExample (KatexExample .overline);
861+ testParseExample (KatexExample .underline);
757862
758863 group ('parseCssHexColor' , () {
759864 const testCases = [
0 commit comments