mirror of
https://github.com/foo-dogsquared/dotfiles.git
synced 2025-01-30 22:57:54 +00:00
171 lines
2.4 KiB
Lua
171 lines
2.4 KiB
Lua
function max_asciidoc_header(level)
|
|
return math.min(level, 6)
|
|
end
|
|
|
|
return {
|
|
parse("bf", "**$1**"),
|
|
parse("it", "__$1__"),
|
|
parse("sp", "^$1^"),
|
|
parse("sb", "~$1~"),
|
|
s(
|
|
"tt",
|
|
fmt("{}{}{}", {
|
|
c(1, { t("`"), t("`+") }),
|
|
i(2, "TEXT"),
|
|
rep(1),
|
|
})
|
|
),
|
|
|
|
parse("foot", "footnote:[$1]"),
|
|
|
|
s(
|
|
"link",
|
|
fmt("link:{}[{}]", {
|
|
i(1, "LINK"),
|
|
rep(1),
|
|
})
|
|
),
|
|
|
|
parse("var", ":$1: $2"),
|
|
|
|
parse("audio", "audio::$1[$2]"),
|
|
parse("video", "video::$1[$2]"),
|
|
|
|
s(
|
|
"img",
|
|
fmt(
|
|
[[
|
|
.{}
|
|
image::{}[{}, {}]
|
|
{}
|
|
]],
|
|
{
|
|
i(1, "CAPTION"),
|
|
i(2, "IMAGE_PATH"),
|
|
i(3, "ALT_TEXT"),
|
|
i(4, "width=100%,height=100%"),
|
|
i(0),
|
|
}
|
|
)
|
|
),
|
|
|
|
s(
|
|
"fmt",
|
|
fmt("{}{}{}", {
|
|
c(1, {
|
|
t("**"),
|
|
t("__"),
|
|
t("`"),
|
|
}),
|
|
i(2),
|
|
rep(1),
|
|
})
|
|
),
|
|
|
|
s(
|
|
"dt",
|
|
fmt(
|
|
[[
|
|
{}::
|
|
{}
|
|
]],
|
|
{
|
|
i(1, "TERM"),
|
|
i(2, "DEFINITION"),
|
|
}
|
|
)
|
|
),
|
|
|
|
s(
|
|
"src",
|
|
fmt(
|
|
[[
|
|
[source, {}]
|
|
----
|
|
{}
|
|
----
|
|
{}
|
|
]],
|
|
{
|
|
i(1, "LANGUAGE"),
|
|
i(2, "CODE"),
|
|
i(0),
|
|
}
|
|
)
|
|
),
|
|
|
|
s(
|
|
{ trig = "h(%d)", regTrig = true },
|
|
fmt(
|
|
[[
|
|
{} {}
|
|
{}
|
|
{}
|
|
]],
|
|
{
|
|
f(function(_, snip)
|
|
local level = max_asciidoc_header(snip.captures[1])
|
|
return string.rep("=", level)
|
|
end),
|
|
i(1, "CHAPTER"),
|
|
d(2, function(_, snip)
|
|
local nodes = {}
|
|
table.insert(nodes, t(""))
|
|
|
|
local level = max_asciidoc_header(snip.captures[1])
|
|
|
|
if level == 1 then
|
|
table.insert(nodes, t(":toc:"))
|
|
end
|
|
|
|
local parent = c(1, nodes)
|
|
if level > 1 then
|
|
parent = t("")
|
|
end
|
|
|
|
return sn(nil, parent)
|
|
end, {}),
|
|
i(0),
|
|
}
|
|
)
|
|
),
|
|
|
|
s(
|
|
"admon",
|
|
fmt("{}: {}", {
|
|
c(1, {
|
|
t("NOTE"),
|
|
t("TIP"),
|
|
t("IMPORTANT"),
|
|
t("CAUTION"),
|
|
t("WARNING"),
|
|
}),
|
|
i(0),
|
|
})
|
|
),
|
|
|
|
s(
|
|
"admonB",
|
|
fmt(
|
|
[[
|
|
[{}]
|
|
====
|
|
{}
|
|
====
|
|
{}
|
|
]],
|
|
{
|
|
c(1, {
|
|
t("NOTE"),
|
|
t("TIP"),
|
|
t("IMPORTANT"),
|
|
t("CAUTION"),
|
|
t("WARNING"),
|
|
}),
|
|
i(2, "BODY"),
|
|
i(0),
|
|
}
|
|
)
|
|
),
|
|
}
|