Org reader: fix planning elements in headers level 3 and higher

Planning info is now always placed before the subtree contents.
Previously, the planning info was placed after the content if the
header's subtree was converted to a list, which happens with headers of
level 3 and higher per default.

Fixes: #5494
This commit is contained in:
Albert Krewinkel 2019-05-13 22:44:53 +02:00
parent 00ef03827e
commit 8b00bc6029
No known key found for this signature in database
GPG key ID: 388DC0B21F631124
2 changed files with 25 additions and 1 deletions

View file

@ -235,8 +235,8 @@ headlineToHeaderWithList hdln = do
else flattenHeader header
return . mconcat $
[ headerText
, headlineContents hdln
, planningBlock
, headlineContents hdln
, listBlock
]
where

View file

@ -236,5 +236,29 @@ tests =
, " :END:"
] =?>
headerWith ("look", [], []) 1 "important"
, "third and forth level headers" =:
T.unlines [ "#+OPTIONS: p:t h:3"
, "*** Third"
, " CLOSED: [2018-09-05 Wed 13:58]"
, " Text 3"
, "**** Fourth"
, "SCHEDULED: <2019-05-13 Mon 22:42>"
, "Text 4"
] =?>
mconcat
[ headerWith ("third", [], mempty) 3 "Third"
, plain $
strong "CLOSED:" <> space <> emph (str "[2018-09-05 Wed 13:58]")
, para "Text 3"
, orderedList [
mconcat
[ para "Fourth"
, plain $ strong "SCHEDULED:"
<> space
<> emph (str "<2019-05-13 Mon 22:42>")
, para "Text 4"
]]
]
]
]