sponsor Vim development Vim logo Vim Book Ad

Idraaak Article Anchors : Check HTML article anchors with Arabic/Unicode support and quickfix navigation.

 script karma  Rating 0/0, Downloaded by 6  Comments, bugs, improvements  Vim wiki

created by
Nedal Omar
 
script type
utility
 
description
Idraaak Article Anchors is a manual checker for fragment-only links and section IDs in static HTML article source, including exported or copied Gutenberg markup.

Run :IdraaakAnchorsCheck in an article buffer, then :copen. Press Enter on a quickfix result, or use :cnext and :cprevious, to jump to the exact problem attribute. :IdraaakAnchorsClear cancels a pending check and clears this plugin's results.

Checks missing #section targets, duplicate nonempty IDs and ambiguous duplicate targets. Handles Arabic/Unicode IDs, UTF-8 percent encoding, HTML entities and legacy a-name targets, with accurate UTF-8 byte columns. It checks unsaved and read-only buffers without modifying text. A local Python child process receives a buffer snapshot; no article content is sent to a service and no network requests or tracking are used. No automatic key bindings or checks on save are installed.

This is a static source check. It does not validate external links, other-page.html#section, JavaScript-created targets, live WordPress rendering or Gutenberg block-comment pairing. Nonempty base href values produce a warning and skip destination checks. Buffers are limited to 2 MiB of UTF-8 text, checks time out after 20 seconds and reports show at most 500 issues. Neovim is not supported.

Requirements: Vim 8.2+ with +job/+channel/+timers, encoding=utf-8, and local Python 3.8+. Embedded Vim Python support and pip packages are not required. Configure g:idraaak_anchors_python as a command list if Python is not found automatically. Documentation: :help idraaak-anchors.

52 Python tests passed on Python 3.12. All 16 integration assertions passed inside native Windows Vim 9.2.1167 and MSYS Vim 9.2.1-357, including quickfix navigation, Arabic byte columns, unchanged read-only buffers, preserved unrelated lists, job cancellation and stale-result handling. The extracted release ZIP also passed the 16 native Vim checks. Python 3.8 syntax was checked; minimum-version runtimes were not execution-tested.

Source and issue tracker: https://github.com/nedal-dev/idraaak-article-anchors
Developed for article editing workflows at Idraaak: https://idraaak.com/
 
install details
Extract the ZIP into ~/.vim/pack/idraaak/start/idraaak-article-anchors/ on Linux/macOS, or ~/vimfiles/pack/idraaak/start/idraaak-article-anchors/ on Windows. Keep plugin/, autoload/, python/ and doc/ together. Restart Vim and run :helptags ALL for native help. See README for Python configuration and examples.
 

rate this script Life Changing Helpful Unfulfilling 
script versions (upload new version)

Click on the package to download.

package script version date Vim version user release notes
idraaak-article-anchors-1.0.0.zip 1.0.0 2026-10-06 8.2 Nedal Omar Initial upload
ip used for rating: 216.73.216.128

Questions about Vim should go to the maillist. Help Uganda.     Vim at Github