From c74c5fdd97e8bf4c160a42dff72e3a521294bcda Mon Sep 17 00:00:00 2001 From: Hubert Plociniczak Date: Tue, 18 Oct 2016 10:50:37 +0200 Subject: [PATCH] Issue 3143: Don't duplicate text for anchors When creating an anchor element we were adding its representation as well as the original content, leading to text duplication. --- src/Text/Pandoc/Readers/Odt/ContentReader.hs | 5 ++--- tests/odt/native/referenceToText.native | 2 +- tests/odt/odt/referenceToText.odt | Bin 10179 -> 10208 bytes 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/Text/Pandoc/Readers/Odt/ContentReader.hs b/src/Text/Pandoc/Readers/Odt/ContentReader.hs index 8c475eefc..ffd2f61d1 100644 --- a/src/Text/Pandoc/Readers/Odt/ContentReader.hs +++ b/src/Text/Pandoc/Readers/Odt/ContentReader.hs @@ -713,9 +713,8 @@ maybeAddAnchorFrom anchorReader = >>> proc (inlines, fAnchorElem) -> do case fAnchorElem of - Right anchorElem -> - arr (anchorElem <>) -<< inlines - Left _ -> returnA -< inlines + Right anchorElem -> returnA -< anchorElem + Left _ -> returnA -< inlines where toAnchorElem :: Anchor -> Inlines toAnchorElem anchorID = spanWith (anchorID, [], []) mempty diff --git a/tests/odt/native/referenceToText.native b/tests/odt/native/referenceToText.native index 1d80e2d0d..a2c3e588d 100644 --- a/tests/odt/native/referenceToText.native +++ b/tests/odt/native/referenceToText.native @@ -1 +1 @@ -[Para [Span ("an anchor",[],[]) [],Str "Some",Space,Str "text."],Para [Str "A",Space,Str "reference",Space,Str "to",Space,Link ("",[],[]) [Str "Some",Space,Str "text"] ("#an anchor",""),Str "."]] +[Para [Span ("an anchor",[],[]) [],Str "Some",Space,Str "text."],Para [Str "A",Space,Str "reference",Space,Str "to",Space,Link ("",[],[]) [Str "Some",Space,Str "text"] ("#an anchor",""),Str "."],Para [Str "Some",Space,Str "text",LineBreak,Str "Another",Space,Str "one",Space,Str "with",Space,Str "a",Space,Str "link",Span ("anchor",[],[]) []]] diff --git a/tests/odt/odt/referenceToText.odt b/tests/odt/odt/referenceToText.odt index 281055aa0fa17d563498495ff129ef0446be283a..19237e6f179ac80ec482c73b0b82527e45568c81 100644 GIT binary patch delta 1269 zcmZ`(e>jtS6o2>5+CF7eou>#AJTBdsgSEhM6nRTEQsp3;5wf9E{UInVi=&pGF>^J&>OxD8m@kk!RJ z@EAi>r{F;wn#^)QfQew0gB57Tkbnpi2&ga(W%z+FC5eW5F4z*Q;9nK@P3srbXN_x4$SnH)cAGL?y1kBHmNDl=%it+TBgaP+FjW28 zjAeyH4eyE2Tos&|(GAr1_5`X1VhQ)D@xqC{X2}R8^nUVqm-FqhsrJ;QrXSvlA$?v) zkZbV5T0^3YS2{Em$a#==($9#;+@^3F9#38#vaYy0ewis~I#yJ7Rf*Qi)@bUn-=Di z#G`98)!g$#X&I8XDhlIWID4-u*SP6bqw<*h3sa3VX(|3lsX3xO34Z{8=Qn}MrFhuI zYk+h9%_W7XChKNGc8ZaU7u!oS20W(;55)q-S|fM8b91cb#4pA9VWUT$db0Z)9+%JD zb(&cf)aG57LvwoGZwJ5EGK&Z21*h}PEsDYnS;Wm>m-`v5*ws6|1ZQ50nqC!(-U$T1 zj~It;T$aI~tH1xwPv+@i^Af)UPv1sXHanc-oKl3ZojG~)nshnWg2;~^_BZHTZBjHU zhKZU_R<}9-wRB6-88&h+`s1Myi8jrYUPPaY>$2>YQz)O!Kfk(>EeX5=CEyaIA?$mZ z8y|H(KHeqGI}w#x{!EG-ogR<$>T5;vGJA@8pH^R$Gv}v|kS6fHZ_EcSjJDU@FZqL2 zhvg|SK#e2UsqGP*+7bbUIAR@P?m=77NL`76)Fljnr`dx7DjvfFB~&WV(ujaT!(;Nm zI$8jH2Lf5Nwcv>Z9s>b8hjpL{ZLz^!+EzFY0~WwbK^cwwb-EISIrv}((YOc*;5k6D zV&!5I3_*y`j*ZS+12_K^vrj6H6w1FoJeW&oz^Pb}4wId@{up=zmiSGbK&1k;Wk+@C zT1${Zr+|4Y$S`9bps!$CiBTbm5ytPE6%pV;Wmx49P(X}Ahh;*bM2|co03Dr8Guc6q bJpQmmD4(Tr{c)DFOBbLnvw)yI)YWT+3|8Jdstjo|}PzAvr&8-Jtz7ONRN{FXgSWO#k;Kx3e5p6X-mxS8;E4G+S#f0?VUWxHj}(hTCz%5|Eu<%2!bHj~WMxku|;r>#8H zHZvs2(KpL;RgqS9nADMM^&o)Eo}XPxz_LoDG-y_o*;xC@K&b=qycMK9{S-+Puz_S4j$-VpZ{d@H6~S5^Gz zTJ@fB*B&l?)6F651x2EM2I{`Yre=6cJ!s<);JmxjELZBj>Y)+=w-rX_36o2A{o7qp zA2~@^^ao4Y_Jf?0k0n)}>M3)5ap$G^lFW5ma)ma(vo}~6wb2h)8B9>!LCPn zhKQ+)LEQ>n!(He8GfPLy9r5}oCf@k5ZMOW3%~R8K?fj-qc$ags&Fh4sjAF1+a$al2 zHJO&cd+YdqQIp)Gn9)5!-y-~3HTO27nCTS; z)4Hln_-@$kWCI+0Cevk{XoBMT#w2*c!l zekn0venSGenYpPYl?ADjFQ~{&j#J@d^qqW5S$T4jvJzwSL}{(b>y>5r<&o4gFx;A~ zpyIb zRk6vhRQV=1GfMy+3InN3ljGIoOhp((7&tgM7*vZ+x*_`qR6ZcUL{^m2VseDK7SmUb z$t~&@Ts#5{48ik|L~Z RAVUR#uz-bu!B!c>0|1$g?u7sV