Ссылка на ту же страницу Github Markdown

100

Допустим, у меня есть две точки на одной и той же вики-странице git hub, которую для этого мы назовем place 1и place 2.

##Title

###Place 1

Hello, this is some text to fill in this, [here](place2), is a link to the second place.

###Place 2

Place one has the fun times of linking here, but I can also link back [here](place1).

Альтернативой является ToC.

##Title
[ToC]
###Place 1
###Place 2

Есть какой-либо способ сделать это? Примечание - видел это, поэтому я предполагаю, что это по теме. Кроме того, это касается перехода между файлами, это касается перехода между одним и тем же файлом.

Александр Крэггс
источник
@flyx - Спасибо, если это сработает, я отвечу в ответ =)
Александр Крэггс
2
этот ответ , вероятно, является для вас актуальным.
flyx
@flyx Немного поздно, но спасибо! Это действительно очень помогло мне :)
Александр Крэггс

Ответы:

137

Это работает на Github:

## Title

### Place 1

Hello, this is some text to fill in this, [here](#place-2), is a link to the second place.

### Place 2

Place one has the fun times of linking here, but I can also link back [here](#place-1).

### Place's 3: other example

Place one has the fun times of linking here, but I can also link back [here](#places-3-other-example).

Сводка правил конвертации:

  • знаки препинания будут удалены
  • начальные пробелы будут удалены
  • верхний регистр будет преобразован в нижний
  • пробелы между буквами будут преобразованы в -

Хорошим примером документа с множеством ссылок и форматированием является Руководство по проектированию LivingSocial API.

Феликс Энеску
источник
2
Обратите внимание, что сама ссылка ref должна быть закодирована в нижнем регистре. Если использовать приведенный выше пример, [here](#Place-2)ссылка не будет работать. Обратите внимание, как в примере заголовок называется «Место 2» и ссылка на него (правильно) называется [here](#place-2).
DaveL17
6
Если у вас есть 2 или более заголовков с тем же названием Placeссылки будет называться place, place-1, place-2и т.д. Тогда , если у вас также есть явный заголовок Place 2его связь будет place-2-1.
Кевин
1
Ответ по-прежнему полезен, поскольку он работает в Gitlab Wiki. Метод html (с использованием тега привязки в вики gitlab) не работает. Я так понимаю, что вопрос был о github.
Nditah
Похоже, что BitBucket не поддерживает его. Вместо этого я использую привязку <a name="link">.
рüффп
25

Также возможно создать именованные пользовательские привязки, если, например, у вас есть несколько (под) заголовков с одинаковыми именами. Для этого с заголовком вставьте HTML-тег:

<h4 id="login-optional-fields">
Optional Fields
</h4>

Затем сделайте ссылку на него по атрибуту ID:

[see above](#login-optional-fields)

Также работает добавление тега привязки непосредственно в документ:

<a id="my-anchor"></a>
крупный рогатый скот
источник
2
Спасибо, это решение работает, и по одной причине. Изменения в уценке GIT в прошлом году предотвращают добавление заголовков, как #my headingэто должно быть, # my headingи добавление пробела в якорь вроде (# my-heading)не работает
MitchellK
0

К сожалению, похоже, что вики GitHub удаляет все теги id = .. из настраиваемого HTML-кода, который вы добавляете на страницу вики, поэтому единственными рабочими якорями на странице являются заголовки.

cpurdy
источник