Я пишу большой документ Markdown и хотел бы вначале разместить оглавление, которое будет содержать ссылки на различные места в документе. Как я могу это сделать?
Я пытался с помощью
[a link](# MyTitle)
где MyTitle
заголовок в документе, и это не сработало.
markdown
multimarkdown
recipriversexclusion
источник
источник
Ответы:
В pandoc , если вы используете опцию
--toc
в создании html, будет создано оглавление со ссылками на разделы и обратно к оглавлению из заголовков разделов. Это похоже на другие форматы, которые пишет pandoc, например LaTeX, RTF, RST и т. Д. Так же и с командойэтот бит уценки:
выдаст это как тело HTML:
источник
git clone
-ed в самом нижнем или крайнем каталоге tmbundle,~/Library/Application\ Support/TextMate/Bundles
чтобы упростить интеграцию.-1
к первому повторению идентификатора,-2
ко второму и т. Д.Github автоматически анализирует теги привязки из ваших заголовков. Таким образом, вы можете сделать следующее:
В приведенном выше случае
Foo
заголовок сгенерировал тег привязки с именемfoo
Примечание : только один
#
для всех размеров заголовков, без пробелов между#
и именем привязки, имена тегов привязки должны быть строчными и разделяться черточками, если они состоят из нескольких слов .Обновить
Работает из коробки
pandoc
тоже.источник
[just](#like-this-one)
.## Foo
, попробуйте [это моя ссылка на Foo] (# foo) ... то есть: одиночный хеш, без пробела между хешем и строчными буквами-kebab-case-name- of-headerЭкспериментируя, я нашел решение, использующее,
<div…/>
но очевидное решение состоит в том, чтобы разместить свою собственную точку привязки на странице, где вы хотите, таким образом:до и
после строки, на которую вы хотите «дать ссылку». Тогда ссылка уценки, как:
В любом месте документа вы попадете туда.
<div…/>
Решение вставляет «фиктивный» разделение просто добавитьid
собственность, и это потенциально разрушительными для структуры страницы, но<a name="abcde"/>
решение должно быть вполне безвредным.(PS: Возможно, будет правильным поставить якорь в строке, на которую вы хотите сослаться, следующим образом:
но это зависит от того, как Markdown относится к этому. Замечу, например, что форматировщик ответов Stack Overflow этим доволен!)
источник
## headers
.<div/>
несколькими строками ниже, это затрагивает. Вместо этого я должен обернуть текст, на который я ссылаюсь, в полноеdiv
предложение тега, и мне нужно заново УКАЗАТЬ поведение с нуля, используя настоящий HTML. Бу.<a name="head1"/>
на<a id="head1"/>
.Это может быть устаревшая тема, но для создания внутренних ссылок на документы в уценке при использовании Github ...
(ПРИМЕЧАНИЕ: строчные буквы #title)
Был задан хороший вопрос, поэтому я отредактировал свой ответ;
Внутренняя связь может быть сделано в любом заголовке размера , используя -
#
,##
,###
,####
я создал быстрый пример ниже ... https://github.com/aogilvie/markdownLinkTestисточник
(#dependencies-title)
знак # in сообщает Github, что это внутренняя ссылка. Текст, который следует, может быть любого размера заголовка. Вот пример теста, который я сделал ... https://github.com/aogilvie/markdownLinkTestда, уценка делает это, но вам нужно указать имя привязки
<a name='xyx'>
.полный пример,
это создает ссылку
[tasks](#tasks)
позже в документе вы создадите именованный якорь (как бы он ни назывался).
обратите внимание, что вы также можете обернуть его вокруг заголовка.
источник
Руководство pandoc объясняет, как связать ваши заголовки, используя их идентификатор. Я не проверял поддержку этого другими парсерами, но сообщалось, что он не работает на github .
Идентификатор можно указать вручную:
или вы можете использовать автоматически сгенерированный идентификатор (в этом случае
#my-heading-text
). Оба подробно объясняются в руководстве Pandoc .ПРИМЕЧАНИЕ . Это работает только при конвертации в HTML , LaTex , ConTeXt , Textile или AsciiDoc .
источник
Некоторые дополнительные вещи, которые следует иметь в виду, если вам когда-либо нравятся символы внутри заголовков, к которым вы хотите перейти ...
... вещи , как
#
,;
,&
, и:
в товарных строках , как правило , игнорируются / полосатыми вместо спаслись, и можно также использовать Цитирование ссылку стиля , чтобы быстро использовать проще.Бонусные очки?
На всякий случай, если кому-то интересно, как изображения и другие ссылки внутри заголовка разбираются в
id
...Предостережения
Визуализация MarkDown отличается от места к месту, поэтому такие вещи, как ...
... на GitHub будет элемент с
id
таким как ...... где ванильная санитария приведет к
id
...... это означает , что писать или компиляцию уценка файлов из шаблонов либо требует ориентации в одну стороны из slugifeing , или добавления конфигураций и скриптовая логики для различных хитроумных способов , что такие места , как очистить текст данной товарной позиции в.
источник
Универсальные решения
Этот вопрос, кажется, имеет другой ответ в зависимости от реализации уценки.
На самом деле официальная документация по Markdown ничего не говорит по этой теме.
В таких случаях, и если вы хотите портативное решение, вы можете использовать HTML.
Перед любым заголовком или в той же строке заголовка определите идентификатор с помощью некоторого HTML-тега.
Например:
<a id="Chapter1"></a>
вы увидите это в своем коде, но не в отрендеренном документе.
Полный пример:
Смотрите полный пример (онлайн и редактируемый) здесь .
Чтобы проверить этот пример, вы должны добавить дополнительное пространство между списком содержимого и первой главой или уменьшить высоту окна.
Кроме того, не используйте пробелы в названии идентификаторов.
источник
## Chapter 1
нужна открытая линия над ним. (2). Ссылка не работает ...<span id="Chapter1"><span>
В спецификации Markdown такой директивы нет. Сожалею.
источник
Gitlab использует GitLab Flavored Markdown (GFM)
Здесь "все отображаемые в Markdown заголовки автоматически получают идентификаторы"
Можно использовать мышь, чтобы:
скопируйте и сохраните ссылку, щелкнув правой кнопкой мыши
Например, в файле README.md у меня есть заголовок:
## series expansion formula of the Boettcher function
который дает ссылку:
Префикс можно удалить, поэтому ссылка здесь просто
что здесь означает:
Теперь его можно использовать как:
[series expansion formula of the Boettcher function](README.md#series-expansion-formula-of-the-boettcher-function)
Можно также сделать это вручную: заменить пробелы знаком дефиса.
Живой пример здесь
источник
С помощью kramdown кажется, что это работает хорошо:
Я вижу, что было упомянуто, что
работает эффективно, но первый может быть хорошей альтернативой для элементов, кроме заголовков или заголовков с несколькими словами.
источник
Так как MultiMarkdown был упомянут как опция в комментариях.
В MultiMarkdown синтаксис для внутренней ссылки прост.
Для любого заголовка в документе просто дайте название заголовка в этом формате,
[heading][]
чтобы создать внутреннюю ссылку.Подробнее читайте здесь: MultiMarkdown-5 Перекрестные ссылки .
источник
Еще несколько спинов на
<a name="">
трюк:источник
В дополнение к вышеупомянутым ответам,
При настройке параметра
number_sections: true
в заголовке YAML:RMarkdown будет автоматически пронумеровывать ваши разделы.
Чтобы ссылаться на эти разделы с автопронумерованием, просто добавьте в файл R Markdown следующее:
[My Section]
Где
My Section
название разделаКажется, это работает независимо от уровня раздела:
# My section
## My section
### My section
источник