Решаю я, значит, вкатиться в #markdown-тусовку, и сходу налетаю на какие-то неразрешимые проблемы мирового масштаба. Вики-ссылки. Они везде и всюду пишутся в виде `[[ссылка|описание]]`. Везде, кроме wiki на github, там в обратном порядке (пример использования https://github.com/ranger/ranger/wiki). И эту очерёдность нельзя настроить ни в https://github.com/Feel-ix-343/markdown-oxide, ни в https://github.com/artempyanykh/marksman (либо я не понял, как). Единственное, что нашлось — параметр markdown-wiki-link-alias-first в https://github.com/jrblevin/markdown-mode, но в Емакс я ещё не умею! Пользователи markdown, как вы с этим живёте?
Home

A VIM-inspired filemanager for the console. Contribute to ranger/ranger development by creating an account on GitHub.

GitHub
Короче мусор этот ваш #markdown. После всяческих надругательств над ссылками обнаружился лишь один способ сослаться на произвольный файл в файловой системе: `[[../../../../../../../../../../../../../../file.txt]]`.

@mintbug Погоди, а в чём проблема-то?

[hello](file:///etc/passwd)

базовый маркдаун, любая реализация должна понимать, Pandoc понимает

@trigrax markor понимает, а оба языковых сервера, упомянутые в первом посте, почему-то не понимают (потому что кривые, почему). А я надеялся за счёт них поддержку md к nvim'у прикрутить.

Использование схемы file не очень удобно, поскольку необходимо указывать абсолютный путь. Я синхронизирую заметки с телефоном под android, и там открываю в nvim'е через termux. Также я синхронизирую музыку, картинки, книги, ещё какие-то штуки. (В ~/Pictures подпапка ~/Pictures/sync, ~/Music целиком, не суть.) В итоге имеем, что на компе имеется условный файл /home/username/Pictures/sync/какой-то.jpg, а на телефоне путь к нему — /storage/emulated/0/Pictures/sync/какой-то.jpg. И тут применяется хак: в домашней директории termux'а создаётся символическая ссылка Pictures, ведущая в общее хранилище. Таким образом, относительные пути вида ~/Pictures/sync/какой-то.jpg работают, абсолютные — нет. В том же #norg можно указывать ссылки в виде {/ ~/Pictures/sync/какой-то.jpg}.

@trigrax спустя десятилетия в возвращаюсь в этот тред, чтобы сказать, что поддержка ссылок к nvim'у прикручивается не языковым сервером, а treesitter'ом. Примерно так:
```query
;; extends

; ~/.config/nvim/queries/typst/highlights.scm

((url) @markup.link.url
(#set! @markup.link.url url @markup.link.url))

(call
item: (ident) @_link
(#eq? @_link "link")
(group
.
(string) @markup.link.url
(#offset! @markup.link.url 0 1 0 -1)
(#set! @markup.link.url url @markup.link.url)))
```
И после этого можно либо открывать ссылки штатными средствами эмулятора терминала (где-то через метки реализовано, где-то просто мышью можно тыкать), либо использовать https://codeberg.org/andyg/leap.nvim + `gx`.

#nvim #neovim #treesitter #typst #uri

leap.nvim

Neovim's answer to the mouse

Codeberg.org