diff options
author | Jesse Rosenthal <jrosenthal@jhu.edu> | 2019-11-03 21:25:56 -0500 |
---|---|---|
committer | Jesse Rosenthal <jrosenthal@jhu.edu> | 2019-11-03 21:25:56 -0500 |
commit | 11945ea5ec0a9ed42b0c24f6f9ecff69e86784a1 (patch) | |
tree | 97491b87f6523b618eac3c6df88cbfe218c65f20 /src/Text/Pandoc/Readers/Docx | |
parent | a6612b35c8852adb34e1e9a574f29a682122b0ff (diff) | |
download | pandoc-11945ea5ec0a9ed42b0c24f6f9ecff69e86784a1.tar.gz |
Docx reader: Only use LTR when it is overriding BiDi setting
The left-to-right direction setting in docx is used in the spec only
for overriding an explicit right-to-left setting. We only process it
when it happens in a paragraph set with BiDi.
This is especially important for docs exported from Google Docs, which
explicitly (and unnecessarily) set "rtl=0" for every paragraph.
Closes: #5723
Diffstat (limited to 'src/Text/Pandoc/Readers/Docx')
-rw-r--r-- | src/Text/Pandoc/Readers/Docx/Parse.hs | 3 | ||||
-rw-r--r-- | src/Text/Pandoc/Readers/Docx/Parse/Styles.hs | 1 |
2 files changed, 4 insertions, 0 deletions
diff --git a/src/Text/Pandoc/Readers/Docx/Parse.hs b/src/Text/Pandoc/Readers/Docx/Parse.hs index 8c5c94bb9..889bd80fc 100644 --- a/src/Text/Pandoc/Readers/Docx/Parse.hs +++ b/src/Text/Pandoc/Readers/Docx/Parse.hs @@ -224,6 +224,7 @@ data ParagraphStyle = ParagraphStyle { pStyle :: [ParStyle] , indentation :: Maybe ParIndentation , dropCap :: Bool , pChange :: Maybe TrackedChange + , pBidi :: Maybe Bool } deriving Show @@ -232,6 +233,7 @@ defaultParagraphStyle = ParagraphStyle { pStyle = [] , indentation = Nothing , dropCap = False , pChange = Nothing + , pBidi = Just False } @@ -998,6 +1000,7 @@ elemToParagraphStyle ns element sty isElem ns "w" "moveFrom" e ) >>= getTrackedChange ns + , pBidi = checkOnOff ns pPr (elemName ns "w" "bidi") } elemToParagraphStyle _ _ _ = defaultParagraphStyle diff --git a/src/Text/Pandoc/Readers/Docx/Parse/Styles.hs b/src/Text/Pandoc/Readers/Docx/Parse/Styles.hs index c2d27e7fb..ac2d6fa07 100644 --- a/src/Text/Pandoc/Readers/Docx/Parse/Styles.hs +++ b/src/Text/Pandoc/Readers/Docx/Parse/Styles.hs @@ -40,6 +40,7 @@ module Text.Pandoc.Readers.Docx.Parse.Styles ( , getNumInfo , elemToRunStyle , defaultRunStyle + , checkOnOff ) where import Prelude import Codec.Archive.Zip |