Русский
Разрешение вики-ссылок
Короткая ссылка [[Имя]] ищет цель по такому порядку: сначала та же папка, где лежит заметка со ссылкой, потом тот же язык, потом самый короткий путь от корня хранилища. Выбор всегда одинаковый, поэтому одна и та же ссылка ведёт на одну и ту же страницу.
Это важно, когда две заметки называются одинаково. На двуязычном сайте часто есть en/user/templates.md и ru/user/templates.md. Короткая ссылка [[Templates]] должна вести на язык читателя, а не прыгать в другой.
Как работает разрешение
trip2g проходит три шага и останавливается на первом совпадении:
- Та же папка. Побеждает заметка из той же папки, где стоит ссылка.
- Тот же язык. Иначе побеждает заметка на том же языке. Язык берётся из свойства
langво фронтматтере или из папки верхнего уровня (en/,ru/). - Короткий путь. Иначе побеждает заметка ближе всего к корню хранилища.
Если на каком-то шаге несколько заметок равны, берётся та, чей путь идёт первым по алфавиту. Случайности нет.
Пример. Обе страницы существуют:
en/user/templates.md
ru/user/templates.md
Короткая ссылка [[Templates]] из en/user/getting-started.md ведёт на en/user/templates.md. Та же ссылка из ru/user/Начало работы.md ведёт на ru/user/templates.md. Каждая ссылка остаётся в своём языке.
Как задать точную цель
Добавьте путь, чтобы указать конкретный файл. Это отменяет три шага выше.
[[folder/Name]]
[[en/user/Name]]
[[./Name]]
[[folder/Name]]и[[en/user/Name]]— путь от корня хранилища.[[./Name]]— путь относительно заметки со ссылкой.
Так пишут, когда специально ведут в другой язык или когда короткое имя слишком неоднозначное.
Пример. Из русской заметки вы хотите отправить читателя к английскому оригиналу:
Смотрите [[en/user/templates|английскую версию]].
Совет для многоязычных сайтов
Больше не нужно добавлять путь к каждой короткой ссылке. Тот же язык побеждает сам.
Раньше [[Templates]] была неоднозначной. И en/user/templates.md, и ru/user/templates.md лежат на одной глубине, поэтому ссылка вела на ту заметку, которую система выбрала первой. Результат мог меняться от загрузки к загрузке.
Теперь решает язык заметки со ссылкой. Короткая [[Templates]] в русской заметке ведёт на русскую страницу, в английской — на английскую. Пишите короткие ссылки и доверяйте выбор папке.
Явный путь нужен только тогда, когда вы намеренно переходите в другой язык, например [[en/user/templates]].
Старое поведение
Некоторые хранилища построены под старое правило: короткая ссылка всегда вела на самый короткий путь во всём хранилище, без учёта языка. Чтобы вернуть это поведение, задайте настройку сайта:
wikilink_resolution: global
При global trip2g пропускает шаги «та же папка» и «тот же язык» и берёт самый короткий путь от корня, как раньше. Оставьте настройку пустой (или scoped), чтобы работало разрешение с учётом языка.
Смотрите также
- Markdown — синтаксис вики-ссылок и вставок
- Мультиязычность — одно хранилище, много языков
- Свойства заметок — справочник по фронтматтеру