diff --git a/.config/nvim/lua/plugins/render-markdown.lua b/.config/nvim/lua/plugins/render-markdown.lua deleted file mode 100644 index c14ccbc..0000000 --- a/.config/nvim/lua/plugins/render-markdown.lua +++ /dev/null @@ -1,398 +0,0 @@ -return { - "MeanderingProgrammer/render-markdown.nvim", - dependencies = { - "nvim-treesitter/nvim-treesitter", - "nvim-tree/nvim-web-devicons", - }, - ft = { "markdown" }, - ---@module 'render-markdown' - ---@type render.md.UserConfig - opts = { - enabled = true, - max_file_size = 10.0, -- Max filesize to be rendered (in MB) - debounce = 100, - preset = "none", -- 'obsidian', 'lazy', or 'none' - log_level = "error", - log_runtime = false, - file_types = { "markdown" }, - injections = { - gitcommit = { - enabled = true, - query = [[ - ((message) @injection.content - (#set! injection.combined) - (#set! injection.include-children) - (#set! injection.language "markdown")) - ]], - }, - }, - render_modes = { "n", "c" }, - anti_conceal = { - enabled = true, -- This enables hiding any added text on the line the cursor is on - ignore = { - code_background = true, - sign = true, - }, - above = 0, -- Number of lines above cursor to show - below = 0, -- Number of lines below cursor to show - }, - padding = { - highlight = "Normal", - }, - latex = { - enabled = true, - converter = "latex2text", - highlight = "RenderMarkdownMath", - top_pad = 0, - bottom_pad = 0, - }, - on = { - attach = function() end, - }, - heading = { - enabled = true, - sign = true, - position = "inline", -- 'inline' or 'overlay' - icons = { "󰲡 ", "󰲣 ", "󰲥 ", "󰲧 ", "󰲩 ", "󰲫 " }, - signs = { "󰫎 " }, - width = "block", -- 'full' or 'block' - --left_margin = 5.0, - left_pad = 3.0, - right_pad = 3.0, - min_width = 0, - border = false, - border_virtual = false, - -- Highlight the start of the border using the foreground highlight - border_prefix = false, - -- Used above heading for border - above = "▄", - -- Used below heading for border - below = "▀", - -- The 'level' is used to index into the list using a clamp - -- Highlight for the heading icon and extends through the entire line - backgrounds = { - "RenderMarkdownH1bg", - "RenderMarkdownH2Bg", - "RenderMarkdownH3Bg", - "RenderMarkdownH4Bg", - "RenderMarkdownH5Bg", - "RenderMarkdownH6Bg", - }, - -- The 'level' is used to index into the list using a clamp - -- Highlight for the heading and sign icons - foregrounds = { - "RenderMarkdownH1", - "RenderMarkdownH2", - "RenderMarkdownH3", - "RenderMarkdownH4", - "RenderMarkdownH5", - "RenderMarkdownH6", - }, - }, - paragraph = { - -- Turn on / off paragraph rendering - enabled = true, - -- Amount of margin to add to the left of paragraphs - -- If a floating point value < 1 is provided it is treated as a percentage of the available window space - left_margin = 0, - -- Minimum width to use for paragraphs - min_width = 0, - }, - code = { - -- Turn on / off code block & inline code rendering - enabled = true, - -- Turn on / off any sign column related rendering - sign = true, - -- Determines how code blocks & inline code are rendered: - -- none: disables all rendering - -- normal: adds highlight group to code blocks & inline code, adds padding to code blocks - -- language: adds language icon to sign column if enabled and icon + name above code blocks - -- full: normal + language - style = "full", - -- Determines where language icon is rendered: - -- right: right side of code block - -- left: left side of code block - position = "left", - -- Amount of padding to add around the language - -- If a floating point value < 1 is provided it is treated as a percentage of the available window space - language_pad = 0, - -- Whether to include the language name next to the icon - language_name = true, - -- A list of language names for which background highlighting will be disabled - -- Likely because that language has background highlights itself - disable_background = { "diff" }, - -- Width of the code block background: - -- block: width of the code block - -- full: full width of the window - width = "full", - -- Amount of margin to add to the left of code blocks - -- If a floating point value < 1 is provided it is treated as a percentage of the available window space - -- Margin available space is computed after accounting for padding - left_margin = 0, - -- Amount of padding to add to the left of code blocks - -- If a floating point value < 1 is provided it is treated as a percentage of the available window space - left_pad = 0, - -- Amount of padding to add to the right of code blocks when width is 'block' - -- If a floating point value < 1 is provided it is treated as a percentage of the available window space - right_pad = 0, - -- Minimum width to use for code blocks when width is 'block' - min_width = 0, - -- Determines how the top / bottom of code block are rendered: - -- thick: use the same highlight as the code body - -- thin: when lines are empty overlay the above & below icons - border = "thin", - -- Used above code blocks for thin border - above = "▄", - -- Used below code blocks for thin border - below = "▀", - -- Highlight for code blocks - highlight = "RenderMarkdownCode", - -- Highlight for inline code - highlight_inline = "RenderMarkdownCodeInline", - -- Highlight for language, overrides icon provider value - highlight_language = nil, - }, - dash = { - -- Turn on / off thematic break rendering - enabled = true, - -- Replaces '---'|'***'|'___'|'* * *' of 'thematic_break' - -- The icon gets repeated across the window's width - icon = "─", - -- Width of the generated line: - -- : a hard coded width value - -- full: full width of the window - width = "full", - -- Highlight for the whole line generated from the icon - highlight = "RenderMarkdownDash", - }, - bullet = { - -- Turn on / off list bullet rendering - enabled = true, - -- Replaces '-'|'+'|'*' of 'list_item' - -- How deeply nested the list is determines the 'level' which is used to index into the list using a cycle - -- The item number in the list is used to index into the value using a clamp if the value is also a list - -- If the item is a 'checkbox' a conceal is used to hide the bullet instead - icons = { "●", "○", "◆", "◇" }, - -- Replaces 'n.'|'n)' of 'list_item' - -- How deeply nested the list is determines the 'level' which is used to index into the list using a cycle - -- The item number in the list is used to index into the value using a clamp if the value is also a list - ordered_icons = {}, - -- Padding to add to the left of bullet point - left_pad = 0, - -- Padding to add to the right of bullet point - right_pad = 0, - -- Highlight for the bullet icon - highlight = "RenderMarkdownBullet", - }, - -- Checkboxes are a special instance of a 'list_item' that start with a 'shortcut_link' - -- There are two special states for unchecked & checked defined in the markdown grammar - checkbox = { - -- Turn on / off checkbox state rendering - enabled = true, - -- Determines how icons fill the available space: - -- inline: underlying text is concealed resulting in a left aligned icon - -- overlay: result is left padded with spaces to hide any additional text - position = "inline", - unchecked = { - -- Replaces '[ ]' of 'task_list_marker_unchecked' - icon = "󰄱 ", - -- Highlight for the unchecked icon - highlight = "RenderMarkdownUnchecked", - -- Highlight for item associated with unchecked checkbox - scope_highlight = nil, - }, - checked = { - -- Replaces '[x]' of 'task_list_marker_checked' - icon = "󰱒 ", - -- Highlight for the checked icon - highlight = "RenderMarkdownChecked", - -- Highlight for item associated with checked checkbox - scope_highlight = nil, - }, - -- Define custom checkbox states, more involved as they are not part of the markdown grammar - -- As a result this requires neovim >= 0.10.0 since it relies on 'inline' extmarks - -- Can specify as many additional states as you like following the 'todo' pattern below - -- The key in this case 'todo' is for healthcheck and to allow users to change its values - -- 'raw': Matched against the raw text of a 'shortcut_link' - -- 'rendered': Replaces the 'raw' value when rendering - -- 'highlight': Highlight for the 'rendered' icon - -- 'scope_highlight': Highlight for item associated with custom checkbox - custom = { - todo = { raw = "[-]", rendered = "󰥔 ", highlight = "RenderMarkdownTodo", scope_highlight = nil }, - }, - }, - quote = { - -- Turn on / off block quote & callout rendering - enabled = true, - -- Replaces '>' of 'block_quote' - icon = "▋", - -- Whether to repeat icon on wrapped lines. Requires neovim >= 0.10. This will obscure text if - -- not configured correctly with :h 'showbreak', :h 'breakindent' and :h 'breakindentopt'. A - -- combination of these that is likely to work is showbreak = ' ' (2 spaces), breakindent = true, - -- breakindentopt = '' (empty string). These values are not validated by this plugin. If you want - -- to avoid adding these to your main configuration then set them in win_options for this plugin. - repeat_linebreak = false, - -- Highlight for the quote icon - highlight = "RenderMarkdownQuote", - }, - pipe_table = { - -- Turn on / off pipe table rendering - enabled = true, - -- Pre configured settings largely for setting table border easier - -- heavy: use thicker border characters - -- double: use double line border characters - -- round: use round border corners - -- none: does nothing - preset = "none", - -- Determines how the table as a whole is rendered: - -- none: disables all rendering - -- normal: applies the 'cell' style rendering to each row of the table - -- full: normal + a top & bottom line that fill out the table when lengths match - style = "full", - -- Determines how individual cells of a table are rendered: - -- overlay: writes completely over the table, removing conceal behavior and highlights - -- raw: replaces only the '|' characters in each row, leaving the cells unmodified - -- padded: raw + cells are padded to maximum visual width for each column - -- trimmed: padded except empty space is subtracted from visual width calculation - cell = "padded", - -- Amount of space to put between cell contents and border - padding = 1, - -- Minimum column width to use for padded or trimmed cell - min_width = 0, - -- Characters used to replace table border - -- Correspond to top(3), delimiter(3), bottom(3), vertical, & horizontal - -- stylua: ignore - border = { - '┌', '┬', '┐', - '├', '┼', '┤', - '└', '┴', '┘', - '│', '─', - }, - -- Gets placed in delimiter row for each column, position is based on alignment - alignment_indicator = "━", - -- Highlight for table heading, delimiter, and the line above - head = "RenderMarkdownTableHead", - -- Highlight for everything else, main table rows and the line below - row = "RenderMarkdownTableRow", - -- Highlight for inline padding used to add back concealed space - filler = "RenderMarkdownTableFill", - }, - -- Callouts are a special instance of a 'block_quote' that start with a 'shortcut_link' - -- Can specify as many additional values as you like following the pattern from any below, such as 'note' - -- The key in this case 'note' is for healthcheck and to allow users to change its values - -- '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 - callout = { - 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" }, - -- Obsidian: https://help.obsidian.md/Editing+and+formatting/Callouts - 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" }, - }, - link = { - -- Turn on / off inline link icon rendering - enabled = true, - -- Inlined with 'image' elements - image = "󰥶 ", - -- Inlined with 'email_autolink' elements - email = "󰀓 ", - -- Fallback icon for 'inline_link' elements - hyperlink = "󰌹 ", - -- Applies to the fallback inlined icon - highlight = "RenderMarkdownLink", - -- Applies to WikiLink elements - wiki = { icon = "󱗖 ", highlight = "RenderMarkdownWikiLink" }, - -- Define custom destination patterns so icons can quickly inform you of what a link - -- contains. Applies to 'inline_link' and wikilink nodes. - -- Can specify as many additional values as you like following the 'web' pattern below - -- The key in this case 'web' is for healthcheck and to allow users to change its values - -- 'pattern': Matched against the destination text see :h lua-pattern - -- 'icon': Gets inlined before the link text - -- 'highlight': Highlight for the 'icon' - custom = { - web = { pattern = "^http[s]?://", icon = "󰖟 ", highlight = "RenderMarkdownLink" }, - }, - }, - sign = { - -- Turn on / off sign rendering - enabled = true, - -- Applies to background of sign text - highlight = "RenderMarkdownSign", - }, - -- Mimic org-indent-mode behavior by indenting everything under a heading based on the - -- level of the heading. Indenting starts from level 2 headings onward. - indent = { - -- Turn on / off org-indent-mode - enabled = false, - -- Amount of additional padding added for each heading level - per_level = 2, - -- Heading levels <= this value will not be indented - -- Use 0 to begin indenting from the very first level - skip_level = 1, - -- Do not indent heading titles, only the body - skip_heading = false, - }, - -- Window options to use that change between rendered and raw view - win_options = { - -- See :h 'conceallevel' - conceallevel = { - -- Used when not being rendered, get user setting - default = vim.api.nvim_get_option_value("conceallevel", {}), - -- Used when being rendered, concealed text is completely hidden - rendered = 3, - }, - -- See :h 'concealcursor' - concealcursor = { - -- Used when not being rendered, get user setting - default = vim.api.nvim_get_option_value("concealcursor", {}), - -- Used when being rendered, disable concealing text in all modes - rendered = "", - }, - }, - -- More granular configuration mechanism, allows different aspects of buffers - -- to have their own behavior. Values default to the top level configuration - -- if no override is provided. Supports the following fields: - -- enabled, max_file_size, debounce, render_modes, anti_conceal, padding, - -- heading, paragraph, code, dash, bullet, checkbox, quote, pipe_table, - -- callout, link, sign, indent, win_options - overrides = { - -- Overrides for different buftypes, see :h 'buftype' - buftype = { - nofile = { - padding = { highlight = "NormalFloat" }, - sign = { enabled = false }, - }, - }, - -- Overrides for different filetypes, see :h 'filetype' - filetype = {}, - }, - -- Mapping from treesitter language to user defined handlers - -- See 'Custom Handlers' document for more info - custom_handlers = {}, - }, -}