140 lines
7.7 KiB
Lua
140 lines
7.7 KiB
Lua
require('render-markdown').setup({
|
|
link = {
|
|
-- Turn on / off inline link icon rendering.
|
|
enabled = true,
|
|
-- Additional modes to render links.
|
|
render_modes = false,
|
|
-- How to handle footnote links, start with a '^'.
|
|
footnote = {
|
|
-- Turn on / off footnote rendering.
|
|
enabled = true,
|
|
-- Replace value with superscript equivalent.
|
|
superscript = true,
|
|
-- Added before link content.
|
|
prefix = '',
|
|
-- Added after link content.
|
|
suffix = '',
|
|
},
|
|
-- Inlined with 'image' elements.
|
|
image = ' ',
|
|
-- Inlined with 'email_autolink' elements.
|
|
email = ' ',
|
|
-- Fallback icon for 'inline_link' and 'uri_autolink' elements.
|
|
hyperlink = ' ',
|
|
-- Applies to the inlined icon as a fallback.
|
|
highlight = 'RenderMarkdownLink',
|
|
-- Applies to WikiLink elements.
|
|
wiki = {
|
|
icon = ' ',
|
|
body = function()
|
|
return nil
|
|
end,
|
|
highlight = 'RenderMarkdownWikiLink',
|
|
},
|
|
-- Define custom destination patterns so icons can quickly inform you of what a link
|
|
-- contains. Applies to 'inline_link', 'uri_autolink', and wikilink nodes. When multiple
|
|
-- patterns match a link the one with the longer pattern is used.
|
|
-- The key is for healthcheck and to allow users to change its values, value type below.
|
|
-- | pattern | matched against the destination text |
|
|
-- | icon | gets inlined before the link text |
|
|
-- | kind | optional determines how pattern is checked |
|
|
-- | | pattern | @see :h lua-patterns, is the default if not set |
|
|
-- | | suffix | @see :h vim.endswith() |
|
|
-- | priority | optional used when multiple match, uses pattern length if empty |
|
|
-- | highlight | optional highlight for 'icon', uses fallback highlight if empty |
|
|
custom = {
|
|
web = { pattern = '^http', icon = ' ' },
|
|
github = { pattern = 'github%.com', icon = ' ' },
|
|
gitlab = { pattern = 'gitlab%.com', icon = ' ' },
|
|
stackoverflow = { pattern = 'stackoverflow%.com', icon = ' ' },
|
|
wikipedia = { pattern = 'wikipedia%.org', icon = ' ' },
|
|
youtube = { pattern = 'youtube%.com', icon = ' ' },
|
|
},
|
|
},
|
|
callout = {
|
|
-- Callouts are a special instance of a 'block_quote' that start with a 'shortcut_link'.
|
|
-- The key is for healthcheck and to allow users to change its values, value type below.
|
|
-- | raw | matched against the raw text of a 'shortcut_link', case insensitive |
|
|
-- | rendered | replaces the 'raw' value when rendering |
|
|
-- | highlight | highlight for the 'rendered' text and quote markers |
|
|
-- | quote_icon | optional override for quote.icon value for individual callout |
|
|
-- | category | optional metadata useful for filtering |
|
|
|
|
note = { raw = '[!NOTE]', rendered = ' Note', highlight = 'RenderMarkdownInfo'},
|
|
tip = { raw = '[!TIP]', rendered = ' Tip', highlight = 'RenderMarkdownSuccess'},
|
|
important = { raw = '[!IMPORTANT]', rendered = ' Important', highlight = 'RenderMarkdownHint'},
|
|
warning = { raw = '[!WARNING]', rendered = ' Warning', highlight = 'RenderMarkdownWarn'},
|
|
caution = { raw = '[!CAUTION]', rendered = ' Caution', highlight = 'RenderMarkdownError'},
|
|
abstract = { raw = '[!ABSTRACT]', rendered = ' Abstract', highlight = 'RenderMarkdownInfo'},
|
|
summary = { raw = '[!SUMMARY]', rendered = ' Summary', highlight = 'RenderMarkdownInfo'},
|
|
tldr = { raw = '[!TLDR]', rendered = ' Tldr', highlight = 'RenderMarkdownInfo'},
|
|
info = { raw = '[!INFO]', rendered = ' Info', highlight = 'RenderMarkdownInfo'},
|
|
todo = { raw = '[!TODO]', rendered = ' Todo', highlight = 'RenderMarkdownInfo'},
|
|
hint = { raw = '[!HINT]', rendered = ' Hint', highlight = 'RenderMarkdownSuccess'},
|
|
success = { raw = '[!SUCCESS]', rendered = ' Success', highlight = 'RenderMarkdownSuccess'},
|
|
check = { raw = '[!CHECK]', rendered = ' Check', highlight = 'RenderMarkdownSuccess'},
|
|
done = { raw = '[!DONE]', rendered = ' Done', highlight = 'RenderMarkdownSuccess'},
|
|
question = { raw = '[!QUESTION]', rendered = ' Question', highlight = 'RenderMarkdownWarn'},
|
|
help = { raw = '[!HELP]', rendered = ' Help', highlight = 'RenderMarkdownWarn'},
|
|
faq = { raw = '[!FAQ]', rendered = ' Faq', highlight = 'RenderMarkdownWarn'},
|
|
attention = { raw = '[!ATTENTION]', rendered = ' Attention', highlight = 'RenderMarkdownWarn'},
|
|
failure = { raw = '[!FAILURE]', rendered = ' Failure', highlight = 'RenderMarkdownError'},
|
|
fail = { raw = '[!FAIL]', rendered = ' Fail', highlight = 'RenderMarkdownError'},
|
|
missing = { raw = '[!MISSING]', rendered = ' Missing', highlight = 'RenderMarkdownError'},
|
|
danger = { raw = '[!DANGER]', rendered = ' Danger', highlight = 'RenderMarkdownError'},
|
|
error = { raw = '[!ERROR]', rendered = ' Error', highlight = 'RenderMarkdownError'},
|
|
bug = { raw = '[!BUG]', rendered = ' Bug', highlight = 'RenderMarkdownError'},
|
|
example = { raw = '[!EXAMPLE]', rendered = ' Example', highlight = 'RenderMarkdownHint' },
|
|
quote = { raw = '[!QUOTE]', rendered = ' Quote', highlight = 'RenderMarkdownQuote'},
|
|
cite = { raw = '[!CITE]', rendered = ' Cite', highlight = 'RenderMarkdownQuote'},
|
|
},
|
|
checkbox = {
|
|
enabled = true,
|
|
render_modes = false,
|
|
bullet = false,
|
|
right_pad = 1,
|
|
unchecked = {
|
|
icon = ' ',
|
|
highlight = 'RenderMarkdownUnchecked',
|
|
scope_highlight = nil,
|
|
},
|
|
checked = {
|
|
icon = ' ',
|
|
highlight = 'RenderMarkdownChecked',
|
|
scope_highlight = nil,
|
|
},
|
|
custom = {
|
|
todo = { raw = '[-]', rendered = ' ', highlight = 'RenderMarkdownTodo', scope_highlight = nil },
|
|
},
|
|
},
|
|
bullet = {
|
|
enabled = true,
|
|
render_modes = false,
|
|
icons = { '●', '○', '◆', '◇' },
|
|
ordered_icons = function(ctx)
|
|
local value = vim.trim(ctx.value)
|
|
local index = tonumber(value:sub(1, #value - 1))
|
|
return ('%d.'):format(index > 1 and index or ctx.index)
|
|
end,
|
|
left_pad = 0,
|
|
right_pad = 0,
|
|
highlight = 'RenderMarkdownBullet',
|
|
scope_highlight = {},
|
|
},
|
|
quote = { icon = '▋' },
|
|
anti_conceal = {
|
|
enabled = true,
|
|
-- Which elements to always show, ignoring anti conceal behavior. Values can either be
|
|
-- booleans to fix the behavior or string lists representing modes where anti conceal
|
|
-- behavior will be ignored. Valid values are:
|
|
-- head_icon, head_background, head_border, code_language, code_background, code_border,
|
|
-- dash, bullet, check_icon, check_scope, quote, table_border, callout, link, sign
|
|
ignore = {
|
|
code_background = true,
|
|
sign = true,
|
|
},
|
|
above = 0,
|
|
below = 0,
|
|
},
|
|
})
|