autoload/lsp/markdown.vim | 6 +++--- ftplugin/lspgfm.vim | 2 +- diff --git a/autoload/lsp/markdown.vim b/autoload/lsp/markdown.vim index 47a70f448a259ffea4430c5059cc276899cc8d02..330a69456ac1c8af2f49289ea8c8aa828e0cf279 100644 --- a/autoload/lsp/markdown.vim +++ b/autoload/lsp/markdown.vim @@ -545,7 +545,7 @@ endif endfor enddef -export def ParseMarkdown(data: list): dict> +export def ParseMarkdown(data: list, width: number = 80): dict> var document: dict> = {content: [], syntax: []} var open_blocks: list> = [] @@ -618,9 +618,9 @@ # a themaic break close all previous blocks if line =~ thematic_break CloseBlocks(document, open_blocks) if &g:encoding == "utf-8" - document.content->add({text: "\u2500"->repeat(80)}) + document.content->add({text: "\u2500"->repeat(width)}) else - document.content->add({text: "-"->repeat(80)}) + document.content->add({text: "-"->repeat(width)}) endif last_block = "hr" continue diff --git a/ftplugin/lspgfm.vim b/ftplugin/lspgfm.vim index 52b63ddaebd2737e1a6c71db0e827f30153597dd..75d7fd14d3b4d730766eb572dbcc502a4bfd2b91 100644 --- a/ftplugin/lspgfm.vim +++ b/ftplugin/lspgfm.vim @@ -8,7 +8,7 @@ var document: dict> try popup_id = bnr->getbufinfo()[0].popups[0] - document = md.ParseMarkdown(bnr->getbufline(1, '$')) + document = md.ParseMarkdown(bnr->getbufline(1, '$'), winwidth(popup_id)) catch /.*/ b:markdown_fallback = v:true finish