aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--data/pandoc.lua31
-rw-r--r--src/Text/Pandoc/Lua/StackInstances.hs2
2 files changed, 19 insertions, 14 deletions
diff --git a/data/pandoc.lua b/data/pandoc.lua
index 6a4a2a8df..dfa67cdcc 100644
--- a/data/pandoc.lua
+++ b/data/pandoc.lua
@@ -166,35 +166,40 @@ end
-- @function MetaList
-- @tparam {MetaValue,...} meta_values list of meta values
---- Meta boolean
--- @function MetaBool
--- @tparam boolean bool boolean value
-
--- Meta map
-- @function MetaMap
-- @tparam table a string-index map of meta values
-
---- Meta string
--- @function MetaString
--- @tparam string str string value
M.meta_value_types = {
"MetaBlocks",
- "MetaBool",
"MetaInlines",
"MetaList",
"MetaMap",
- "MetaString"
}
for i = 1, #M.meta_value_types do
M[M.meta_value_types[i]] = M.MetaValue:create_constructor(
M.meta_value_types[i],
function(content)
- return {c = content}
- end,
- "content"
+ return content
+ end
)
end
+--- Creates string to be used in meta data.
+-- Does nothing, lua strings are meta strings.
+-- @function MetaString
+-- @tparam string str string value
+function M.MetaString(str)
+ return str
+end
+
+--- Creates boolean to be used in meta data.
+-- Does nothing, lua booleans are meta booleans.
+-- @function MetaBool
+-- @tparam boolean bool boolean value
+function M.MetaBool(bool)
+ return bool
+end
+
------------------------------------------------------------------------
-- Blocks
-- @section Block
diff --git a/src/Text/Pandoc/Lua/StackInstances.hs b/src/Text/Pandoc/Lua/StackInstances.hs
index 9ba28b58e..52151ce64 100644
--- a/src/Text/Pandoc/Lua/StackInstances.hs
+++ b/src/Text/Pandoc/Lua/StackInstances.hs
@@ -140,7 +140,7 @@ peekMetaValue :: LuaState -> Int -> IO (Maybe MetaValue)
peekMetaValue lua idx = do
-- Get the contents of an AST element.
let elementContent :: StackValue a => IO (Maybe a)
- elementContent = getTable lua idx "c"
+ elementContent = peek lua idx
luatype <- ltype lua idx
case luatype of
TBOOLEAN -> fmap MetaBool <$> peek lua idx