* feat: add navigation prefetch and progress bar
- `navigation.instant.prefetch`: Preloads pages when users hover over
links, making navigation feel instant on subsequent clicks.
- `navigation.instant.progress`: Shows a slim progress indicator at
the top of the page on slower connections, providing visual feedback
that a page is loading.
Both features build on the existing `navigation.instant` and require
no additional configuration.
* feat: add search suggestions, highlighting, and TOC follow
- `search.suggest`: Shows autocomplete suggestions in the search bar
as users type, helping them find content faster.
- `search.highlight`: Highlights matching search terms on the target
page after clicking a result, making it easy to spot relevant text.
- `toc.follow`: Automatically scrolls the table of contents sidebar
to keep the active heading visible, so users always know where they
are in long pages.
* fix: remove duplicate pymdownx.tabbed entry
The extension was listed twice: once without options (line 57) and
once with `alternate_style: true` (line 60). The duplicate bare entry
is redundant and may cause unexpected behavior. The configured entry
with `alternate_style` is the correct one per Material for MkDocs
requirements since v9.
* fix: use standard permalink icon for table of contents
Changes `permalink: ""` to `permalink: true`. The empty string
renders an invisible/empty permalink anchor on every heading, which
means the feature is technically active but users can't see or click
the link icon. Setting it to `true` uses Material's default pilcrow
(¶) icon, making heading permalinks visible and clickable for easy
sharing of direct links to specific sections.
* feat: add syntax highlighting enhancements
Adds three options to `pymdownx.highlight` and the `pymdownx.inlinehilite`
extension:
- `anchor_linenums: true`: Makes line numbers in code blocks clickable
anchors, allowing users to link directly to specific lines.
- `line_spans: __span`: Wraps each line in a span element, enabling
per-line styling (e.g., highlighting specific lines).
- `pygments_lang_class: true`: Adds the language name as a CSS class
to code blocks, allowing language-specific styling.
- `pymdownx.inlinehilite`: Enables syntax highlighting in inline code
using the `#!language code` syntax (e.g., `#!python print("hello")`).
Useful for referencing code snippets within paragraph text.
* Change toc permalink setting to an empty string
* feat(cfg): add PATH_SEPARATOR and CACHE_PATH support
- bump configuration version from 1.1.0 to 1.2.0
- add configurable `PATH_SEPARATOR` for `folders[...]` values
- document backward compatibility: defaults to space when unset
- add `CACHE_PATH` for usage with --cache flag in fclones
refactor(fclones): save group reports, add PATH_SEPARATOR support, and improve logging/validation
- bump script version from 1.0.0 to 1.1.0
- run `fclones group` once per folder group and save stdout to a temp report file
- feed saved group report into `fclones link` instead of running `group` twice
- support configurable `PATH_SEPARATOR` for `folders[...]` values (defaults to space for backward compatibility)
- allow folder groups with 1+ paths and validate parsed directory lists
- add config format warnings for quoted path values / missing PATH_SEPARATOR usage
- add cache directory setup/validation (`setup_cache_dir`)
- switch command execution to Bash arrays (safer than `eval` for paths/args)
- separate `fclones group` stdout (report file) from stderr (captured for logging)
- refactor logging to `log_msg LEVEL ...` with timestamped INFO/WARN/ERROR output
- replace several `echo` parsing calls with safer `printf`
- rename `hardlinks_created` to `successful_groups` for clearer semantics
- add warn-only config version compatibility check against `MIN_CONFIG_VERSION`
* fix(fclones):
- update error messages and documentation for folder group configuration
- spelling errors
- reset seen_files per group run
* fixed pre-commit error `Wrong indent style found (tabs instead of spaces)` using shfmt -i 4 -ci -w includes/downloaders/fclones.sh
* fix(mover-tuning): remove obsolete comment on file patterns
* Expanding start and stop scripts for multiple containers
mover-tuning.cfg — version bumped to 1.3.0
ENABLE_QBIT_MANAGE → ENABLE_DOCKER_MANAGEMENT
QBIT_MANAGE_CONTAINER (single string) → DOCKER_CONTAINERS (array)
QBIT_MANAGE_WAIT → DOCKER_WAIT
Added an inline example showing multiple containers
mover-tuning-start.sh — version bumped to 1.3.0
Validation now checks ENABLE_DOCKER_MANAGEMENT and also errors if the array is empty when the feature is enabled
The single docker stop call is replaced by a loop over DOCKER_CONTAINERS; the DOCKER_WAIT sleep only fires if all stops succeeded
Each container gets its own Unraid notification
mover-tuning-end.sh — version bumped to 1.2.0
Same validation update as the start script
The single docker start call is replaced by a loop over DOCKER_CONTAINERS; each container gets its own notification
---------
Co-authored-by: Bauke <mail@baukezwart.com>
* chore(guide-sync): Invert quality profile items to human-readable order
Quality items now ordered highest-to-lowest priority (top-to-bottom)
instead of matching API response format. Nested quality groups also
reversed. Improves maintainability for guide authors. Sync tools will
reverse before sending to APIs.
* chore(radarr): remove unused CF groups
Delete CF groups that exclude all profiles (effectively unused). Their
CFs are already embedded directly in quality profile formatItems.
* fix(radarr): correct exclude lists for French/German release groups
These CF groups incorrectly excluded their own language profiles.
French/German release groups should apply to French/German profiles.
* refactor(radarr): migrate CF groups from exclude to include semantics
Quality profile associations now use explicit include lists
instead of exclude lists. Makes the relationship between
CF groups and profiles more intuitive and maintainable.
* docs(guide-sync): update CF groups docs for include semantics
* chore(sonarr): remove unused CF groups
* refactor(sonarr): migrate CF groups from exclude to include semantics