diff --git a/doc/snacks-animate.txt b/doc/snacks-animate.txt index f476bf0f..7275d953 100644 --- a/doc/snacks-animate.txt +++ b/doc/snacks-animate.txt @@ -1,4 +1,4 @@ -*snacks-animate.txt* snacks.nvim +*snacks-animate* snacks_animate ============================================================================== Table of Contents *snacks-animate-table-of-contents* diff --git a/doc/snacks-bigfile.txt b/doc/snacks-bigfile.txt index c5b5d8e3..8267738c 100644 --- a/doc/snacks-bigfile.txt +++ b/doc/snacks-bigfile.txt @@ -1,4 +1,4 @@ -*snacks-bigfile.txt* snacks.nvim +*snacks-bigfile* snacks_bigfile ============================================================================== Table of Contents *snacks-bigfile-table-of-contents* diff --git a/doc/snacks-bufdelete.txt b/doc/snacks-bufdelete.txt index 739bd122..ef634052 100644 --- a/doc/snacks-bufdelete.txt +++ b/doc/snacks-bufdelete.txt @@ -1,4 +1,4 @@ -*snacks-bufdelete.txt* snacks.nvim +*snacks-bufdelete* snacks_bufdelete ============================================================================== Table of Contents *snacks-bufdelete-table-of-contents* diff --git a/doc/snacks-dashboard.txt b/doc/snacks-dashboard.txt index 8fe2d168..ddcd6ee3 100644 --- a/doc/snacks-dashboard.txt +++ b/doc/snacks-dashboard.txt @@ -1,4 +1,4 @@ -*snacks-dashboard.txt* snacks.nvim +*snacks-dashboard* snacks_dashboard ============================================================================== Table of Contents *snacks-dashboard-table-of-contents* diff --git a/doc/snacks-debug.txt b/doc/snacks-debug.txt index 2f8a5a08..a5379b7e 100644 --- a/doc/snacks-debug.txt +++ b/doc/snacks-debug.txt @@ -1,4 +1,4 @@ -*snacks-debug.txt* snacks.nvim +*snacks-debug* snacks_debug ============================================================================== Table of Contents *snacks-debug-table-of-contents* @@ -7,6 +7,7 @@ Table of Contents *snacks-debug-table-of-contents* 2. Module |snacks-debug-module| - Snacks.debug() |snacks-debug-module-snacks.debug()| - Snacks.debug.backtrace() |snacks-debug-module-snacks.debug.backtrace()| + - Snacks.debug.cmd() |snacks-debug-module-snacks.debug.cmd()| - Snacks.debug.inspect() |snacks-debug-module-snacks.debug.inspect()| - Snacks.debug.log() |snacks-debug-module-snacks.debug.log()| - Snacks.debug.metrics() |snacks-debug-module-snacks.debug.metrics()| @@ -73,6 +74,14 @@ Show a notification with a pretty backtrace < +`Snacks.debug.cmd()` *Snacks.debug.cmd()* + +>lua + ---@param opts {cmd: string|string[], args?: string[], cwd?: string} + Snacks.debug.cmd(opts) +< + + `Snacks.debug.inspect()` *Snacks.debug.inspect()* Show a notification with a pretty printed dump of the object(s) with lua diff --git a/doc/snacks-dim.txt b/doc/snacks-dim.txt index cde04b60..992dca70 100644 --- a/doc/snacks-dim.txt +++ b/doc/snacks-dim.txt @@ -1,4 +1,4 @@ -*snacks-dim.txt* snacks.nvim +*snacks-dim* snacks_dim ============================================================================== Table of Contents *snacks-dim-table-of-contents* diff --git a/doc/snacks-explorer.txt b/doc/snacks-explorer.txt index 63fa13fc..b2a4b1e8 100644 --- a/doc/snacks-explorer.txt +++ b/doc/snacks-explorer.txt @@ -1,4 +1,4 @@ -*snacks-explorer.txt* snacks.nvim +*snacks-explorer* snacks_explorer ============================================================================== Table of Contents *snacks-explorer-table-of-contents* diff --git a/doc/snacks-git.txt b/doc/snacks-git.txt index 9d37b5d5..875cce73 100644 --- a/doc/snacks-git.txt +++ b/doc/snacks-git.txt @@ -1,4 +1,4 @@ -*snacks-git.txt* snacks.nvim +*snacks-git* snacks_git ============================================================================== Table of Contents *snacks-git-table-of-contents* diff --git a/doc/snacks-gitbrowse.txt b/doc/snacks-gitbrowse.txt index 0ada758f..29346284 100644 --- a/doc/snacks-gitbrowse.txt +++ b/doc/snacks-gitbrowse.txt @@ -1,4 +1,4 @@ -*snacks-gitbrowse.txt* snacks.nvim +*snacks-gitbrowse* snacks_gitbrowse ============================================================================== Table of Contents *snacks-gitbrowse-table-of-contents* diff --git a/doc/snacks-health.txt b/doc/snacks-health.txt index f75d609c..86c047d8 100644 --- a/doc/snacks-health.txt +++ b/doc/snacks-health.txt @@ -1,4 +1,4 @@ -*snacks-health.txt* snacks.nvim +*snacks-health* snacks_health ============================================================================== Table of Contents *snacks-health-table-of-contents* diff --git a/doc/snacks-image.txt b/doc/snacks-image.txt index abe9bc7f..38f2adb3 100644 --- a/doc/snacks-image.txt +++ b/doc/snacks-image.txt @@ -1,4 +1,4 @@ -*snacks-image.txt* snacks.nvim +*snacks-image* snacks_image ============================================================================== Table of Contents *snacks-image-table-of-contents* @@ -10,6 +10,7 @@ Table of Contents *snacks-image-table-of-contents* 4. Types |snacks-image-types| 5. Module |snacks-image-module| - Snacks.image.hover() |snacks-image-module-snacks.image.hover()| + - Snacks.image.langs() |snacks-image-module-snacks.image.langs()| - Snacks.image.supports() |snacks-image-module-snacks.image.supports()| - Snacks.image.supports_file()|snacks-image-module-snacks.image.supports_file()| - Snacks.image.supports_terminal()|snacks-image-module-snacks.image.supports_terminal()| @@ -44,6 +45,17 @@ In order to automatically display the image when opening an image file, or to have imaged displayed in supported document formats like `markdown` or `html`, you need to enable the `image` plugin in your `snacks` config. +Supported document formats are: + +- markdown +- html +- norg +- tsx +- javascript +- css +- vue +- angular + ImageMagick is required to convert images to the supported formats (all except PNG). @@ -90,7 +102,6 @@ In case of issues, make sure to run `:checkhealth snacks`. -- a treesitter parser must be available for the enabled languages. -- supported language injections: markdown, html enabled = true, - lang = { "markdown", "html", "norg", "tsx", "javascript", "css", "vue", "angular" }, -- render the image inline in the buffer -- if your env doesn't support unicode placeholders, this will be disabled -- takes precedence over `opts.float` on supported terminals @@ -101,6 +112,7 @@ In case of issues, make sure to run `:checkhealth snacks`. max_width = 80, max_height = 40, }, + img_dirs = { "img", "images", "assets", "static", "public", "media", "attachments" }, -- window options applied to windows displaying image buffers -- an image buffer is a buffer with `filetype=image` wo = { @@ -114,6 +126,12 @@ In case of issues, make sure to run `:checkhealth snacks`. spell = false, statuscolumn = "", }, + cache = vim.fn.stdpath("cache") .. "/snacks/image", + debug = { + request = false, + convert = false, + placement = false, + }, env = {}, } < @@ -145,8 +163,6 @@ SNACKS_IMAGE *snacks-image-styles-snacks_image* ============================================================================== 4. Types *snacks-image-types* -TODO: - tsx / jsx - url decode? - look for all images? - >lua ---@alias snacks.image.Size {width: number, height: number} ---@alias snacks.image.Pos {[1]: number, [2]: number} @@ -191,6 +207,7 @@ TODO: - tsx / jsx - url decode? - look for all images? ---@field util snacks.image.util ---@field buf snacks.image.buf ---@field doc snacks.image.doc + ---@field convert snacks.image.convert Snacks.image = {} < @@ -204,6 +221,14 @@ Show the image at the cursor in a floating window < +`Snacks.image.langs()` *Snacks.image.langs()* + +>lua + ---@return string[] + Snacks.image.langs() +< + + `Snacks.image.supports()` *Snacks.image.supports()* Check if the file format is supported and the terminal supports the kitty diff --git a/doc/snacks-indent.txt b/doc/snacks-indent.txt index 92c704d9..bcd5fb96 100644 --- a/doc/snacks-indent.txt +++ b/doc/snacks-indent.txt @@ -1,4 +1,4 @@ -*snacks-indent.txt* snacks.nvim +*snacks-indent* snacks_indent ============================================================================== Table of Contents *snacks-indent-table-of-contents* diff --git a/doc/snacks-init.txt b/doc/snacks-init.txt index 0978cbc6..c5ad08e3 100644 --- a/doc/snacks-init.txt +++ b/doc/snacks-init.txt @@ -1,4 +1,4 @@ -*snacks-init.txt* snacks.nvim +*snacks-init* snacks_init ============================================================================== Table of Contents *snacks-init-table-of-contents* diff --git a/doc/snacks-input.txt b/doc/snacks-input.txt index f2baa71e..452a297a 100644 --- a/doc/snacks-input.txt +++ b/doc/snacks-input.txt @@ -1,4 +1,4 @@ -*snacks-input.txt* snacks.nvim +*snacks-input* snacks_input ============================================================================== Table of Contents *snacks-input-table-of-contents* diff --git a/doc/snacks-layout.txt b/doc/snacks-layout.txt index b23cabf8..4e0e3f53 100644 --- a/doc/snacks-layout.txt +++ b/doc/snacks-layout.txt @@ -1,4 +1,4 @@ -*snacks-layout.txt* snacks.nvim +*snacks-layout* snacks_layout ============================================================================== Table of Contents *snacks-layout-table-of-contents* diff --git a/doc/snacks-lazygit.txt b/doc/snacks-lazygit.txt index 1220fa9d..570d1b6d 100644 --- a/doc/snacks-lazygit.txt +++ b/doc/snacks-lazygit.txt @@ -1,4 +1,4 @@ -*snacks-lazygit.txt* snacks.nvim +*snacks-lazygit* snacks_lazygit ============================================================================== Table of Contents *snacks-lazygit-table-of-contents* diff --git a/doc/snacks-meta.txt b/doc/snacks-meta.txt index 5f6a41bd..76d14275 100644 --- a/doc/snacks-meta.txt +++ b/doc/snacks-meta.txt @@ -1,4 +1,4 @@ -*snacks-meta.txt* snacks.nvim +*snacks-meta* snacks_meta ============================================================================== Table of Contents *snacks-meta-table-of-contents* diff --git a/doc/snacks-notifier.txt b/doc/snacks-notifier.txt index 78fd14f9..c4fe141b 100644 --- a/doc/snacks-notifier.txt +++ b/doc/snacks-notifier.txt @@ -1,4 +1,4 @@ -*snacks-notifier.txt* snacks.nvim +*snacks-notifier* snacks_notifier ============================================================================== Table of Contents *snacks-notifier-table-of-contents* diff --git a/doc/snacks-notify.txt b/doc/snacks-notify.txt index fe79a8b0..9b5ccacb 100644 --- a/doc/snacks-notify.txt +++ b/doc/snacks-notify.txt @@ -1,4 +1,4 @@ -*snacks-notify.txt* snacks.nvim +*snacks-notify* snacks_notify ============================================================================== Table of Contents *snacks-notify-table-of-contents* diff --git a/doc/snacks-picker.txt b/doc/snacks-picker.txt index ecf731a7..201a6150 100644 --- a/doc/snacks-picker.txt +++ b/doc/snacks-picker.txt @@ -1,4 +1,4 @@ -*snacks-picker.txt* snacks.nvim +*snacks-picker* snacks_picker ============================================================================== Table of Contents *snacks-picker-table-of-contents* @@ -793,6 +793,23 @@ TROUBLE *snacks-picker-examples-trouble* ---@field notify? boolean < +>lua + ---@alias snacks.Picker.ref (fun():snacks.Picker?)|{value?: snacks.Picker} +< + +>lua + ---@class snacks.picker.Last + ---@field cursor number + ---@field topline number + ---@field opts? snacks.picker.Config + ---@field selected snacks.picker.Item[] + ---@field filter snacks.picker.Filter +< + +>lua + ---@alias snacks.picker.history.Record {pattern: string, search: string, live?: boolean} +< + >lua ---@alias snacks.picker.Extmark vim.api.keyset.set_extmark|{col:number, row?:number, field?:string} ---@alias snacks.picker.Text {[1]:string, [2]:string?, virtual?:boolean, field?:string} @@ -871,23 +888,6 @@ that shows a preview based on the item data. ---@field preview? snacks.win.Config|{} preview window config < ->lua - ---@alias snacks.Picker.ref (fun():snacks.Picker?)|{value?: snacks.Picker} -< - ->lua - ---@class snacks.picker.Last - ---@field cursor number - ---@field topline number - ---@field opts? snacks.picker.Config - ---@field selected snacks.picker.Item[] - ---@field filter snacks.picker.Filter -< - ->lua - ---@alias snacks.picker.history.Record {pattern: string, search: string, live?: boolean} -< - ============================================================================== 7. Module *snacks-picker-module* diff --git a/doc/snacks-profiler.txt b/doc/snacks-profiler.txt index eb7f09b9..de9928b5 100644 --- a/doc/snacks-profiler.txt +++ b/doc/snacks-profiler.txt @@ -1,4 +1,4 @@ -*snacks-profiler.txt* snacks.nvim +*snacks-profiler* snacks_profiler ============================================================================== Table of Contents *snacks-profiler-table-of-contents* diff --git a/doc/snacks-quickfile.txt b/doc/snacks-quickfile.txt index 8c8cc398..4fb567cc 100644 --- a/doc/snacks-quickfile.txt +++ b/doc/snacks-quickfile.txt @@ -1,4 +1,4 @@ -*snacks-quickfile.txt* snacks.nvim +*snacks-quickfile* snacks_quickfile ============================================================================== Table of Contents *snacks-quickfile-table-of-contents* diff --git a/doc/snacks-rename.txt b/doc/snacks-rename.txt index e4405b18..da6eb8e7 100644 --- a/doc/snacks-rename.txt +++ b/doc/snacks-rename.txt @@ -1,4 +1,4 @@ -*snacks-rename.txt* snacks.nvim +*snacks-rename* snacks_rename ============================================================================== Table of Contents *snacks-rename-table-of-contents* diff --git a/doc/snacks-scope.txt b/doc/snacks-scope.txt index 3c0e55cd..35a98b02 100644 --- a/doc/snacks-scope.txt +++ b/doc/snacks-scope.txt @@ -1,4 +1,4 @@ -*snacks-scope.txt* snacks.nvim +*snacks-scope* snacks_scope ============================================================================== Table of Contents *snacks-scope-table-of-contents* diff --git a/doc/snacks-scratch.txt b/doc/snacks-scratch.txt index 2b5674f4..54b75155 100644 --- a/doc/snacks-scratch.txt +++ b/doc/snacks-scratch.txt @@ -1,4 +1,4 @@ -*snacks-scratch.txt* snacks.nvim +*snacks-scratch* snacks_scratch ============================================================================== Table of Contents *snacks-scratch-table-of-contents* diff --git a/doc/snacks-scroll.txt b/doc/snacks-scroll.txt index 2433ec40..76d6f548 100644 --- a/doc/snacks-scroll.txt +++ b/doc/snacks-scroll.txt @@ -1,4 +1,4 @@ -*snacks-scroll.txt* snacks.nvim +*snacks-scroll* snacks_scroll ============================================================================== Table of Contents *snacks-scroll-table-of-contents* diff --git a/doc/snacks-statuscolumn.txt b/doc/snacks-statuscolumn.txt index fd55de5f..aa3c29c3 100644 --- a/doc/snacks-statuscolumn.txt +++ b/doc/snacks-statuscolumn.txt @@ -1,4 +1,4 @@ -*snacks-statuscolumn.txt* snacks.nvim +*snacks-statuscolumn* snacks_statuscolumn ============================================================================== Table of Contents *snacks-statuscolumn-table-of-contents* diff --git a/doc/snacks-styles.txt b/doc/snacks-styles.txt index e8559907..6fd8c4ba 100644 --- a/doc/snacks-styles.txt +++ b/doc/snacks-styles.txt @@ -1,4 +1,4 @@ -*snacks-styles.txt* snacks.nvim +*snacks-styles* snacks_styles ============================================================================== Table of Contents *snacks-styles-table-of-contents* diff --git a/doc/snacks-terminal.txt b/doc/snacks-terminal.txt index a8f29747..e5fb9b89 100644 --- a/doc/snacks-terminal.txt +++ b/doc/snacks-terminal.txt @@ -1,4 +1,4 @@ -*snacks-terminal.txt* snacks.nvim +*snacks-terminal* snacks_terminal ============================================================================== Table of Contents *snacks-terminal-table-of-contents* diff --git a/doc/snacks-toggle.txt b/doc/snacks-toggle.txt index 54dbc734..41273965 100644 --- a/doc/snacks-toggle.txt +++ b/doc/snacks-toggle.txt @@ -1,4 +1,4 @@ -*snacks-toggle.txt* snacks.nvim +*snacks-toggle* snacks_toggle ============================================================================== Table of Contents *snacks-toggle-table-of-contents* diff --git a/doc/snacks-util.txt b/doc/snacks-util.txt index e9d0d7a4..8eba354b 100644 --- a/doc/snacks-util.txt +++ b/doc/snacks-util.txt @@ -1,4 +1,4 @@ -*snacks-util.txt* snacks.nvim +*snacks-util* snacks_util ============================================================================== Table of Contents *snacks-util-table-of-contents* @@ -63,7 +63,7 @@ Set buffer-local options. `Snacks.util.color()` *Snacks.util.color()* >lua - ---@param group string hl group to get color from + ---@param group string|string[] hl group to get color from ---@param prop? string property to get. Defaults to "fg" Snacks.util.color(group, prop) < diff --git a/doc/snacks-win.txt b/doc/snacks-win.txt index 3479f02d..2ccb6835 100644 --- a/doc/snacks-win.txt +++ b/doc/snacks-win.txt @@ -1,4 +1,4 @@ -*snacks-win.txt* snacks.nvim +*snacks-win* snacks_win ============================================================================== Table of Contents *snacks-win-table-of-contents* diff --git a/doc/snacks-words.txt b/doc/snacks-words.txt index 6829cc7a..3621ecbc 100644 --- a/doc/snacks-words.txt +++ b/doc/snacks-words.txt @@ -1,4 +1,4 @@ -*snacks-words.txt* snacks.nvim +*snacks-words* snacks_words ============================================================================== Table of Contents *snacks-words-table-of-contents* diff --git a/doc/snacks-zen.txt b/doc/snacks-zen.txt index 0f743cf6..f2227705 100644 --- a/doc/snacks-zen.txt +++ b/doc/snacks-zen.txt @@ -1,4 +1,4 @@ -*snacks-zen.txt* snacks.nvim +*snacks-zen* snacks_zen ============================================================================== Table of Contents *snacks-zen-table-of-contents* diff --git a/doc/snacks.nvim.txt b/doc/snacks.nvim.txt index 265adbe6..8a8fa4d0 100644 --- a/doc/snacks.nvim.txt +++ b/doc/snacks.nvim.txt @@ -1,4 +1,4 @@ -*snacks.nvim.txt* For Neovim Last change: 2025 February 17 +*snacks* For Neovim Last change: 2025 February 17 ============================================================================== Table of Contents *snacks.nvim-table-of-contents* diff --git a/lua/snacks/meta/docs.lua b/lua/snacks/meta/docs.lua index d332fd63..2f972628 100644 --- a/lua/snacks/meta/docs.lua +++ b/lua/snacks/meta/docs.lua @@ -674,6 +674,7 @@ function M.fix_titles() for file, t in vim.fs.dir("doc", { depth = 1 }) do if t == "file" and file:find("%.txt$") then local lines = vim.fn.readfile("doc/" .. file) --[[@as string[] ]] + lines[1] = lines[1]:gsub("%.txt", ""):gsub("%.nvim", "") for i, line in ipairs(lines) do -- Example: SNACKS.GIT.BLAME_LINE() *snacks-git-module-snacks.git.blame_line()* local func = line:gsub("^SNACKS.*module%-snacks(.+%(%))%*$", "Snacks%1") diff --git a/scripts/docs b/scripts/docs index 761e9e8e..d1bb0d0f 100755 --- a/scripts/docs +++ b/scripts/docs @@ -13,9 +13,11 @@ fi PANVIMDOC=~/projects/panvimdoc for f in docs/*.md; do + plugin=$(basename "$f" .md) + desc="snacks_$plugin" $PANVIMDOC/panvimdoc.sh \ - --project-name "snacks-$(basename "$f" .md)" \ - --description "snacks.nvim" \ + --project-name "snacks-$plugin" \ + --description "$desc" \ --input-file "$f" \ --vim-version "Neovim" \ --demojify "true" \