Skip to content

[BUG] Markdown-plus breaks Autocompletion after running markdown-preview #101

@j-steinbach

Description

@j-steinbach

Description

Autocompletion breaks after opening a markdown preview with MarkdownPreview.

Steps to Reproduce

  1. Install LazyVim with Markdown extras and blink.cmp for completion
    a. https://github.com/iamcco/markdown-preview.nvim
    b. https://github.com/saghen/blink.cmp
  2. Install https://github.com/YousefHadder/markdown-plus.nvim
  3. Open a Markdown file
  4. Autocomplete something. For example datetime for the date time snippet. It works.
  5. Run :MardownPreview (start, toggle)
  6. Return to the Markdown buffer.
  7. Autocomplete something. Autocomplete doesn't work anymore. (Pressing <ret> on the popup menu doesn't select the snippet).
  8. Move to a different markdown buffer. Autocomplete works as expected.
  9. Remove markdown-plus. Try again. The issue doesn't appear anymore.

I disabled everything and narrowed it down to markdown-plus. Removing markdown-plus from my config enabled the autocompletion to work as expected.

Expected Behavior

Auto completion should work the same as before I ran MarkdownPreview.

Actual Behavior

I can't autocomplete anymore.

Environment

  • Neovim version: v.0.11.4
  • Plugin version: (commit hash or tag) I guess 15240bfd54a345e009f1a9943b249f3b9a2b4903
  • OS: (macOS, Linux, Windows, etc.) Linux

Additional Context

Any other information, screenshots, or error messages.

My markdownplus config, in case it helps.

{
        "yousefhadder/markdown-plus.nvim",
        enabled = true,
        ft = "markdown", -- Load on markdown files by default
        config = function()
            require("markdown-plus").setup({
                -- Configuration options (all optional)
                enabled = true,
                features = {
                    list_management = true, -- Enable list management features
                    text_formatting = true, -- Enable text formatting features
                    headers_toc = true, -- Enable headers and TOC features
                    links = true, -- Enable link management features
                },
                keymaps = {
                    enabled = true, -- Enable default keymaps
                },
                filetypes = { "markdown" }, -- Filetypes to enable the plugin for
            })
        end,
    },

Autocmds

vim.api.nvim_create_autocmd({ "BufNewFile", "BufRead" }, {
    pattern = "*.njk",
    callback = function()
        vim.bo.filetype = "html"
    end,
})

-- Save folds on write
vim.api.nvim_create_autocmd("BufWritePost", {
    callback = function()
        vim.cmd("mkview!")
    end,
})

-- Restore folds on load
vim.api.nvim_create_autocmd("BufRead", {
    callback = function()
        vim.cmd("silent! loadview")
    end,
})

Keymaps

vim.keymap.set("n", "<Tab>", ">>_", { noremap = true, silent = true, desc = "Indent line" })

-- Unindent with Shift+Tab in normal mode
vim.keymap.set("n", "<S-Tab>", "<<_", { noremap = true, silent = true, desc = "Unindent line" })

-- Indent wjth Tab in visual mode
vim.keymap.set("v", "<Tab>", ">gv", { noremap = true, silent = true, desc = "Indent selected lines" })

-- Unindent with Shift+Tab in visual mode
vim.keymap.set("v", "<S-Tab>", "<gv", { noremap = true, silent = true, desc = "Unindent selected lines" })

Options

vim.opt.list = true
vim.opt.listchars = {
    space = "_",
    tab = "·┈",
    trail = "",
    nbsp = "",
}
-- set listchars=tab:·┈,trail:○,multispace:○,lead:\ ,extends:▶,precedes:◀,nbsp:‿

vim.opt.ignorecase = true
vim.opt.smartcase = true

vim.opt.number = true
vim.opt.cursorline = true
vim.opt.showmode = true

vim.opt.ignorecase = true
vim.opt.smartcase = true

vim.opt.clipboard = "unnamedplus"
vim.opt.completeopt = { "menu", "menuone", "noselect" }
vim.opt.mouse = "a"

vim.opt.tabstop = 4
vim.opt.softtabstop = 4
vim.opt.shiftwidth = 4
vim.opt.expandtab = false
vim.opt.smartindent = true

-- vim.opt.spelllang = 'en_us'
-- vim.opt.spell = true

-- vim.cmd('syntax enable')
-- vim.cmd('filetype plugin indent on')

-- Enable folding with Tree-sitter
vim.opt.foldmethod = "expr"
vim.opt.foldexpr = "nvim_treesitter#foldexpr()"
vim.opt.foldenable = true -- Enable folding by default
vim.opt.foldlevel = 99 -- Start with most folds open (high number = more open)

LazyLock

{
  "LazyVim": { "branch": "main", "commit": "28db03f958d58dfff3c647ce28fdc1cb88ac158d" },
  "SchemaStore.nvim": { "branch": "main", "commit": "e5ca2c40986f415398dd5711625f0099b80b28b0" },
  "auto-save.nvim": { "branch": "main", "commit": "5fbcaac0a2698c87a9a1bd2083cb6949505cca12" },
  "blink.cmp": { "branch": "main", "commit": "327fff91fe6af358e990be7be1ec8b78037d2138" },
  "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
  "catppuccin": { "branch": "main", "commit": "234fc048de931a0e42ebcad675bf6559d75e23df" },
  "conform.nvim": { "branch": "master", "commit": "26c02e1155a4980900bdccabca4516f4c712aae9" },
  "dial.nvim": { "branch": "master", "commit": "f0404ec1f83a03f2c3457e60087c6331d1cbb83f" },
  "flash.nvim": { "branch": "main", "commit": "fcea7ff883235d9024dc41e638f164a450c14ca2" },
  "friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
  "gitsigns.nvim": { "branch": "main", "commit": "20ad4419564d6e22b189f6738116b38871082332" },
  "grug-far.nvim": { "branch": "main", "commit": "3e72397465f774b01aa38e4fe8e6eecf23d766d9" },
  "lazy.nvim": { "branch": "main", "commit": "202d8e92b3a74ac88eb3a7f1e40fb59b4c2a6535" },
  "lazydev.nvim": { "branch": "main", "commit": "371cd7434cbf95606f1969c2c744da31b77fcfa6" },
  "lualine.nvim": { "branch": "master", "commit": "3946f0122255bc377d14a59b27b609fb3ab25768" },
  "markdown-plus.nvim": { "branch": "main", "commit": "15240bfd54a345e009f1a9943b249f3b9a2b4903" },
  "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
  "markdown_indent.nvim": { "branch": "main", "commit": "c09c3a556c61dbb1600b7506058f7f037e13938f" },
  "mason-lspconfig.nvim": { "branch": "main", "commit": "d7b5feb6e769e995f7fcf44d92f49f811c51d10c" },
  "mason.nvim": { "branch": "main", "commit": "ad7146aa61dcaeb54fa900144d768f040090bff0" },
  "mini.ai": { "branch": "main", "commit": "0d3c9cf22e37b86b7a0dfbe7ef129ee7a5f4f93c" },
  "mini.hipatterns": { "branch": "main", "commit": "267920874e98262ad7fe9ddc70d4ba5eae9f990b" },
  "mini.icons": { "branch": "main", "commit": "ff2e4f1d29f659cc2bad0f9256f2f6195c6b2428" },
  "mini.pairs": { "branch": "main", "commit": "b316e68f2d242d5bd010deaab645daa27ed86297" },
  "mini.surround": { "branch": "main", "commit": "88c52297ed3e69ecf9f8652837888ecc727a28ee" },
  "noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" },
  "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
  "nvim-lint": { "branch": "master", "commit": "8c694e1a1ee2ac14df931679cd54e6b8d402c2c2" },
  "nvim-lspconfig": { "branch": "master", "commit": "a89bfcfd0e44f898341ac8a80ba83ccf6218bef3" },
  "nvim-treesitter": { "branch": "main", "commit": "65a266bf693d3fc856dd341c25edea1a0917a30f" },
  "nvim-treesitter-textobjects": { "branch": "main", "commit": "2e5b8735a61d3cfaa65d9a8ff787a7b0a0a81b70" },
  "nvim-ts-autotag": { "branch": "main", "commit": "c4ca798ab95b316a768d51eaaaee48f64a4a46bc" },
  "persistence.nvim": { "branch": "main", "commit": "b20b2a7887bd39c1a356980b45e03250f3dce49c" },
  "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
  "render-markdown.nvim": { "branch": "main", "commit": "10126effbafb74541b69219711dfb2c631e7ebf8" },
  "smark.nvim": { "branch": "main", "commit": "b367db9d6b2514937b6dda7b0fedcbf94a5a8ca8" },
  "snacks.nvim": { "branch": "main", "commit": "53d8012e5e4b2115ade2c15d040223ef97ffb05c" },
  "todo-comments.nvim": { "branch": "main", "commit": "411503d3bedeff88484de572f2509c248e499b38" },
  "tokyonight.nvim": { "branch": "main", "commit": "b13cfc1286d2aa8bda6ce137b79e857d5a3d5739" },
  "trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" },
  "ts-comments.nvim": { "branch": "main", "commit": "123a9fb12e7229342f807ec9e6de478b1102b041" },
  "venv-selector.nvim": { "branch": "main", "commit": "0241027095d7efd111b84ff4e980b3d1cce2335c" },
  "which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" },
  "yanky.nvim": { "branch": "main", "commit": "04775cc6e10ef038c397c407bc17f00a2f52b378" }
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions