return { -- Mask .env values in the buffer { "laytan/cloak.nvim", event = "BufReadPre", opts = { enabled = true, cloak_character = "*", patterns = { { file_pattern = ".env*", cloak_pattern = "=.+", }, }, }, }, -- Terminal image rendering via Kitty backend { "3rd/image.nvim", opts = { backend = "kitty", integrations = { markdown = { enabled = true, clear_in_insert_mode = false, download_remote_images = true, only_render_image_at_cursor = false, filetypes = { "markdown", "vimwiki" }, }, typst = { enabled = true, filetypes = { "typst" } }, }, max_height_window_percentage = 50, window_overlap_clear_enabled = false, window_overlap_clear_ft_ignore = { "cmp_menu", "cmp_docs", "" }, }, }, -- Paste images into markdown/typst from clipboard or drag-and-drop { "HakonHarnes/img-clip.nvim", event = "BufEnter", opts = { default = { embed_image_as_base64 = false, prompt_for_file_name = false, drag_and_drop = { insert_mode = true, }, use_absolute_path = false, }, }, }, -- Render markdown formatting in-buffer { "MeanderingProgrammer/render-markdown.nvim", opts = {}, }, -- Live preview for Typst documents { "chomosuke/typst-preview.nvim", lazy = false, version = "1.*", build = function() require("typst-preview").update() end, }, -- LeetCode integration { "kawre/leetcode.nvim", cmd = "Leet", opts = { lang = "typescript", }, }, }