Skip to content

How to extract a header from a link? #400

@artkpv

Description

@artkpv

Hi, again, thank you for your tool! This is likely my configuration but the extraction of the header for a link does not work for me now. It did previously.

Example:

In index.md

[архив.md](архив.md)

In архив.md:

# Архив
:архив:
...

Steps:

  1. Open index.md
  2. Put cursor on the link
  3. Type :WikiLinkExtractHeader
  4. Result: no description updated. Expected: updated

My config: https://github.com/artkpv/kickstart.nvim/blob/master/lua/custom/plugins/wiki_vim.lua

My `:checkhealth`
==============================================================================
codecompanion: require("codecompanion.health").check()

- Neovim version: 0.10.3
- Log file: /home/art/.local/state/nvim/codecompanion.log

Dependencies: ~
- OK plenary.nvim installed
- OK nvim-treesitter installed

Tree-sitter parsers: ~
- OK markdown parser installed
- OK yaml parser installed

Libraries: ~
- OK curl installed

==============================================================================
conform: require("conform.health").check()

conform.nvim report ~
- Log file: /home/art/.local/state/nvim/conform.log
- OK black ready (python)
- OK isort ready (python)
- OK stylua ready (lua)

==============================================================================
img-clip: require("img-clip.health").check()

img-clip.nvim ~
- OK `xclip` is installed

==============================================================================
kickstart: require("kickstart.health").check()

kickstart.nvim ~
- NOTE: Not every warning is a 'must-fix' in `:checkhealth`
  
    Fix only warnings for plugins and languages you intend to use.
      Mason will give warnings for languages that are not installed.
      You do not need to install, unless you want to use those languages!
- System Information: {
    machine = "x86_64",
    release = "6.12.10-arch1-1",
    sysname = "Linux",
    version = "#1 SMP PREEMPT_DYNAMIC Sat, 18 Jan 2025 02:26:57 +0000"
  }
- OK Neovim version is: '0.10.3+v0.10.3'
- OK Found executable: 'git'
- OK Found executable: 'make'
- OK Found executable: 'unzip'
- OK Found executable: 'rg'

==============================================================================
lazy: require("lazy.health").check()

lazy.nvim ~
- {lazy.nvim} version `11.16.2`
- OK {git} `version 2.48.1`
- OK no existing packages found by other package managers
- OK packer_compiled.lua not found

luarocks ~
- checking `hererocks` installation
- OK no plugins require `luarocks`, so you can ignore any warnings below
- OK {python3} `Python 3.13.1`
- ERROR {/home/art/.local/share/nvim/lazy-rocks/hererocks/bin/luarocks} not installed
- WARNING {/home/art/.local/share/nvim/lazy-rocks/hererocks/bin/lua} version `5.1` not installed
- WARNING Lazy won't be able to install plugins that require `luarocks`.
  Here's what you can do:
   - fix your `luarocks` installation
   - disable *hererocks* with `opts.rocks.hererocks = false`
   - disable `luarocks` support completely with `opts.rocks.enabled = false`

==============================================================================
lspconfig: require("lspconfig.health").check()

LSP configs active in this session (globally) ~
- Configured servers: bashls, lua_ls, ruff, basedpyright
- OK Deprecated servers: (none)

LSP configs active in this buffer (bufnr: 1) ~
- Language client log: ~/.local/state/nvim/lsp.log
- Detected filetype: `markdown`
- 1 client(s) attached to this buffer
- Client: `GitHub Copilot` (id: 1, bufnr: [1, 40, 60, 10, 74])
  root directory:    Running in single file mode.
  filetypes:         
  cmd:               ~/mydir/notes/node /home/art/.local/share/nvim/lazy/copilot.vim/dist/language-server.js --stdio
  version:           `v23.4.0`
  executable:        true
  autostart:         false

Docs for active configs: ~
- 

==============================================================================
luasnip: require("luasnip.health").check()

luasnip ~
- OK jsregexp is installed

==============================================================================
mason: require("mason.health").check()

mason.nvim ~
- OK mason.nvim version v1.10.0
- OK PATH: prepend
- OK Providers: 
    mason.providers.registry-api
    mason.providers.client
- OK neovim version >= 0.7.0

mason.nvim [Registries] ~
- OK Registry `github.com/mason-org/mason-registry version: 2025-01-27-living-peak` is installed.

mason.nvim [Core utils] ~
- OK unzip: `UnZip 6.00 of 20 April 2009, by Info-ZIP.  Maintained by C. Spieler.  Send`
- OK wget: `GNU Wget 1.25.0 для linux-gnu.`
- OK curl: `curl 8.11.1 (x86_64-pc-linux-gnu) libcurl/8.11.1 OpenSSL/3.4.0 zlib/1.3.1 brotli/1.1.0 zstd/1.5.6 libidn2/2.3.7 libpsl/0.21.5 libssh2/1.11.1 nghttp2/1.64.0 nghttp3/1.7.0`
- OK gzip: `gzip 1.13`
- OK tar: `tar (GNU tar) 1.35`
- OK bash: `GNU bash, версия 5.2.37(1)-release (x86_64-pc-linux-gnu)`
- OK sh: `Ok`

mason.nvim [Languages] ~
- WARNING luarocks: not available
  - ADVICE:
    - spawn: luarocks failed with exit code - and signal -. luarocks is not executable
- WARNING Composer: not available
  - ADVICE:
    - spawn: composer failed with exit code - and signal -. composer is not executable
- WARNING PHP: not available
  - ADVICE:
    - spawn: php failed with exit code - and signal -. php is not executable
- OK Go: `go version go1.23.5 linux/amd64`
- OK Ruby: `ruby 3.3.5 (2024-09-03 revision ef084cc8f4) [x86_64-linux]`
- OK node: `v23.4.0`
- OK cargo: `cargo 1.83.0 (5ffbef321 2024-10-29)`
- WARNING julia: not available
  - ADVICE:
    - spawn: julia failed with exit code - and signal -. julia is not executable
- OK python: `Python 3.13.1`
- OK java: `openjdk version "11.0.25" 2024-10-15`
- OK RubyGem: `3.5.16`
- OK npm: `11.0.0`
- OK javac: `javac 11.0.25`
- OK pip: `pip 24.3.1 from /usr/lib/python3.13/site-packages/pip (python 3.13)`
- OK python venv: `Ok`

mason.nvim [GitHub] ~
- OK GitHub API rate limit. Used: 0. Remaining: 60. Limit: 60. Reset: Пн 27 янв 2025 16:39:35.
  Install and authenticate via gh-cli to increase rate limit.

==============================================================================
nvim: require("nvim.health").check()

Configuration ~
- OK no issues found

Runtime ~
- OK $VIMRUNTIME: /usr/share/nvim/runtime

Performance ~
- OK Build type: RelWithDebInfo

Remote Plugins ~
- OK Up to date

terminal ~
- key_backspace (kbs) terminfo entry: `key_backspace=\177`
- key_dc (kdch1) terminfo entry: `key_dc=\E[3~`
- $TERM_PROGRAM="WezTerm"
- $COLORTERM="truecolor"

External Tools ~
- OK ripgrep 14.1.1 (/usr/bin/rg)

==============================================================================
nvim-treesitter: require("nvim-treesitter.health").check()

Installation ~
- OK `tree-sitter` found 0.24.7 (5e8760bf462ce7b19b3d2396d5b7860f3906a297) (parser generator, only needed for :TSInstallFromGrammar)
- OK `node` found v23.4.0 (only needed for :TSInstallFromGrammar)
- OK `git` executable found.
- OK `cc` executable found. Selected from { vim.NIL, "cc", "gcc", "clang", "cl", "zig" }
  Version: cc (GCC) 14.2.1 20240910
- OK Neovim was compiled with tree-sitter runtime ABI version 14 (required >=13). Parsers must be compatible with runtime ABI.

OS Info:
{
  machine = "x86_64",
  release = "6.12.10-arch1-1",
  sysname = "Linux",
  version = "#1 SMP PREEMPT_DYNAMIC Sat, 18 Jan 2025 02:26:57 +0000"
} ~

Parser/Features         H L F I J
  - bash                ✓ ✓ ✓ . ✓
  - c                   ✓ ✓ ✓ ✓ ✓
  - csv                 ✓ . . . .
  - diff                ✓ . ✓ . ✓
  - gitcommit           ✓ . . . ✓
  - gitignore           ✓ . . . ✓
  - html                ✓ ✓ ✓ ✓ ✓
  - ini                 ✓ . ✓ . ✓
  - json                ✓ ✓ ✓ ✓ .
  - latex               ✓ . ✓ . ✓
  - ledger              ✓ . ✓ ✓ ✓
  - lua                 ✓ ✓ ✓ ✓ ✓
  - luadoc              ✓ . . . .
  - make                ✓ . ✓ . ✓
  - markdown            ✓ . ✓ ✓ ✓
  - markdown_inline     ✓ . . . ✓
  - python              ✓ ✓ ✓ ✓ ✓
  - query               ✓ ✓ ✓ ✓ ✓
  - requirements        ✓ . . . ✓
  - toml                ✓ ✓ ✓ ✓ ✓
  - vim                 ✓ ✓ ✓ . ✓
  - vimdoc              ✓ . . . ✓
  - xml                 ✓ ✓ ✓ ✓ ✓
  - yaml                ✓ ✓ ✓ ✓ ✓
  - zathurarc           ✓ . . . ✓

  Legend: H[ighlight], L[ocals], F[olds], I[ndents], In[j]ections
         +) multiple parsers found, only one will be used
         x) errors found in the query, try to run :TSUpdate {lang} ~

==============================================================================
provider.clipboard: require("provider.clipboard.health").check()

Clipboard (optional) ~
- OK Clipboard tool found: xclip

==============================================================================
provider.node: require("provider.node.health").check()

Node.js provider (optional) ~
- Node.js: v23.4.0
  
- WARNING Missing "neovim" npm (or yarn, pnpm) package.
  - ADVICE:
    - Run in shell: npm install -g neovim
    - Run in shell (if you use yarn): yarn global add neovim
    - Run in shell (if you use pnpm): pnpm install -g neovim
    - You may disable this provider (and warning) by adding `let g:loaded_node_provider = 0` to your init.vim

==============================================================================
provider.perl: require("provider.perl.health").check()

Perl provider (optional) ~
- WARNING "Neovim::Ext" cpan module is not installed
  - ADVICE:
    - See :help |provider-perl| for more information.
    - You may disable this provider (and warning) by adding `let g:loaded_perl_provider = 0` to your init.vim
- WARNING No usable perl executable found

==============================================================================
provider.python: require("provider.python.health").check()

Python 3 provider (optional) ~
- `g:python3_host_prog` is not set. Searching for python3 in the environment.
- Executable: /usr/bin/python3
- Python version: 3.13.1
- pynvim version: 0.5.2
- OK Latest pynvim is installed.

Python virtualenv ~
- OK no $VIRTUAL_ENV

==============================================================================
provider.ruby: require("provider.ruby.health").check()

Ruby provider (optional) ~
- Ruby: ruby 3.3.5 (2024-09-03 revision ef084cc8f4) [x86_64-linux]
- WARNING `neovim-ruby-host` not found.
  - ADVICE:
    - Run `gem install neovim` to ensure the neovim RubyGem is installed.
    - Run `gem environment` to ensure the gem bin directory is in $PATH.
    - If you are using rvm/rbenv/chruby, try "rehashing".
    - See :help |g:ruby_host_prog| for non-standard gem installations.
    - You may disable this provider (and warning) by adding `let g:loaded_ruby_provider = 0` to your init.vim

==============================================================================
render-markdown: require("render-markdown.health").check()

render-markdown.nvim [version] ~
- OK plugin 7.8.9
- OK neovim >= 0.10

render-markdown.nvim [configuration] ~
- OK valid

render-markdown.nvim [nvim-treesitter] ~
- OK installed
- OK markdown: parser installed
- OK markdown: highlight enabled
- OK markdown_inline: parser installed
- OK markdown_inline: highlight enabled
- OK latex: parser installed

render-markdown.nvim [icons] ~
- OK using: mini.icons

render-markdown.nvim [executables] ~
- WARNING latex2text: not installed
  - ADVICE:
    - Disable LaTeX support to avoid this warning by setting { latex = { enabled = false } }

render-markdown.nvim [conflicts] ~
- OK headlines: not installed
- OK obsidian: not installed

==============================================================================
telescope: require("telescope.health").check()

Checking for required plugins ~
- OK plenary installed.
- OK nvim-treesitter installed.

Checking external dependencies ~
- OK rg: found ripgrep 14.1.1
- OK fd: found fd 10.2.0

===== Installed extensions ===== ~

Telescope Extension: `fzf` ~
- OK lib working as expected
- OK file_sorter correctly configured
- OK generic_sorter correctly configured

Telescope Extension: `ui-select` ~
- No healthcheck provided

==============================================================================
vim.lsp: require("vim.lsp.health").check()

- LSP log level : WARN
- Log path: /home/art/.local/state/nvim/lsp.log
- Log size: 28619 KB

vim.lsp: Active Clients ~
- GitHub Copilot (id: 1)
    Root directory: nil
    Command: node /home/art/.local/share/nvim/lazy/copilot.vim/dist/language-server.js --stdio
    Settings: {
      ["github-enterprise"] = {
        uri = vim.NIL
      },
      http = {
        proxy = vim.NIL,
        proxyStrictSSL = vim.NIL
      }
    }
    Attached buffers: 1, 40, 60, 10, 74

vim.lsp: File Watcher ~
- file watching "(workspace/didChangeWatchedFiles)" disabled on all clients

vim.lsp: Position Encodings ~
- No buffers contain mixed position encodings

==============================================================================
vim.treesitter: require("vim.treesitter.health").check()

- Nvim runtime ABI version: 14
- OK Parser: bash                 ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/bash.so
- OK Parser: c                    ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/c.so
- OK Parser: csv                  ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/csv.so
- OK Parser: diff                 ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/diff.so
- OK Parser: gitcommit            ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/gitcommit.so
- OK Parser: gitignore            ABI: 13, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/gitignore.so
- OK Parser: html                 ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/html.so
- OK Parser: ini                  ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/ini.so
- OK Parser: json                 ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/json.so
- OK Parser: latex                ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/latex.so
- OK Parser: ledger               ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/ledger.so
- OK Parser: lua                  ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/lua.so
- OK Parser: luadoc               ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/luadoc.so
- OK Parser: make                 ABI: 13, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/make.so
- OK Parser: markdown             ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/markdown.so
- OK Parser: markdown_inline      ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/markdown_inline.so
- OK Parser: python               ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/python.so
- OK Parser: query                ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/query.so
- OK Parser: requirements         ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/requirements.so
- OK Parser: toml                 ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/toml.so
- OK Parser: vim                  ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/vim.so
- OK Parser: vimdoc               ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/vimdoc.so
- OK Parser: xml                  ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/xml.so
- OK Parser: yaml                 ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/yaml.so
- OK Parser: zathurarc            ABI: 14, path: /home/art/.local/share/nvim/lazy/nvim-treesitter/parser/zathurarc.so
- OK Parser: bash                 ABI: 14, path: /usr/share/nvim/runtime/parser/bash.so
- OK Parser: c                    ABI: 14, path: /usr/share/nvim/runtime/parser/c.so
- OK Parser: lua                  ABI: 14, path: /usr/share/nvim/runtime/parser/lua.so
- OK Parser: markdown             ABI: 14, path: /usr/share/nvim/runtime/parser/markdown.so
- OK Parser: markdown_inline      ABI: 14, path: /usr/share/nvim/runtime/parser/markdown_inline.so
- OK Parser: python               ABI: 14, path: /usr/share/nvim/runtime/parser/python.so
- OK Parser: query                ABI: 14, path: /usr/share/nvim/runtime/parser/query.so
- OK Parser: vim                  ABI: 14, path: /usr/share/nvim/runtime/parser/vim.so
- OK Parser: vimdoc               ABI: 14, path: /usr/share/nvim/runtime/parser/vimdoc.so

==============================================================================
vimtex: health#vimtex#check

VimTeX ~
- OK Vim version should have full support!
- WARNING biber is not executable!
  - ADVICE:
    - Biber is often required so this may give unexpected problems.
- OK Zathura should work properly!
- OK Compiler should work!

==============================================================================
which-key: require("which-key.health").check()

- OK Most of these checks are for informational purposes only.
  WARNINGS should be treated as a warning, and don't necessarily indicate a problem with your config.
  Please |DON'T| report these warnings as an issue.

Checking your config ~
- OK |mini.icons| is installed
- OK |nvim-web-devicons| is installed

Checking for issues with your mappings ~
- OK No issues reported

checking for overlapping keymaps ~
- WARNING In mode `n`, <sd> overlaps with <sdn>, <sdl>:
  - <sd>: Delete surrounding
  - <sdn>: Delete next surrounding
  - <sdl>: Delete previous surrounding
- WARNING In mode `n`, <sr> overlaps with <srn>, <srl>:
  - <sr>: Replace surrounding
  - <srn>: Replace next surrounding
  - <srl>: Replace previous surrounding
- WARNING In mode `n`, <sF> overlaps with <sFn>, <sFl>:
  - <sF>: Find left surrounding
  - <sFn>: Find next left surrounding
  - <sFl>: Find previous left surrounding
- WARNING In mode `n`, <sh> overlaps with <shn>, <shl>:
  - <sh>: Highlight surrounding
  - <shn>: Highlight next surrounding
  - <shl>: Highlight previous surrounding
- WARNING In mode `n`, <sf> overlaps with <sfn>, <sfl>:
  - <sf>: Find right surrounding
  - <sfn>: Find next right surrounding
  - <sfl>: Find previous right surrounding
- WARNING In mode `n`, <gc> overlaps with <gcc>:
  - <gc>: Toggle comment
  - <gcc>: Toggle comment line
- WARNING In mode `n`, <,wp> overlaps with <,wpr>:
  - <,wpr>: Rename wiki page
- WARNING In mode `n`, <,ws> overlaps with <,wsr>, <,wss>, <,wsn>, <,wsl>:
  - <,ws>: LSP: [W]orkspace [S]ymbols
- WARNING In mode `x`, <a> overlaps with <at>, <an>, <a%>, <al>, <au>:
  - <a>: Around textobject
  - <at>: tag block
  - <an>: Around next textobject
  - <al>: Around last textobject
- WARNING In mode `x`, <i> overlaps with <it>, <in>, <il>, <iu>:
  - <i>: Inside textobject
  - <it>: inner tag block
  - <in>: Inside next textobject
  - <il>: Inside last textobject
- WARNING In mode `o`, <a> overlaps with <at>, <an>, <al>, <au>:
  - <a>: Around textobject
  - <at>: tag block
  - <an>: Around next textobject
  - <al>: Around last textobject
- WARNING In mode `o`, <i> overlaps with <it>, <in>, <il>, <iu>:
  - <i>: Inside textobject
  - <it>: inner tag block
  - <in>: Inside next textobject
  - <il>: Inside last textobject
- OK Overlapping keymaps are only reported for informational purposes.
  This doesn't necessarily mean there is a problem with your config.

Checking for duplicate mappings ~
- OK No duplicate mappings found

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions