Se você olhar aqui: http://en.wikipedia.org/wiki/Stack_Overflow
Você notará que há uma pequena seção de "Conteúdo", se você clicar em um dos links, será direcionado para uma seção específica na página.
Como faço isso no wiki do GitHub? Com Markdown ou o que quer que eles usem?
Respostas:
É bem demonstrado no Índice da folha de referência do Markdown .
Se você passar o mouse sobre um cabeçalho em um arquivo GitHub Markdown, verá um pequeno link simples à esquerda dele, você também pode usar esse link. O formato desse link é
<project URL#<header name>
. O<header name>
deve estar todo em minúsculas.fonte
__TOC__
diretamente. Claramente, a lógica de geração automática subjacente está lá. Mas a funcionalidade não parece estar exposta em seu estilo de edição Markdown. Muito lamentável. Vamos todos começar a enviar solicitações de recursos para ele e talvez eles o ativem.#Headers
vez de#headers
. Achei que era um erro de digitação na sua resposta. Talvez você possa adicionar esta informação à sua resposta.Uma solução possível (semiautomática) é a de Eugene Kalinin
github-markdown-toc
. Essa ferramenta essencialmenteREADME.md
analisa seu arquivo e identifica os#
cabeçalhos para criar um sumário.Alimente seu
README.md
roteiro (conforme observado no de EugeneREADME.md
)cat README.md | bash github-markdown-toc
Recorte e cole o TOC gerado e coloque-o no topo do seu
README.md
arquivoObserve que esta
bash
implementação só funciona no Linux (pelo que posso dizer).Como uma observação lateral, há uma implementação golang e provavelmente é mais trabalhoso para começar a trabalhar.
fonte
Uma vez que o github não pode ser usado
TOC
diretamente, temos outras alternativas.Você pode gerar TOC automaticamente por meio da ferramenta Online:
Gerar índice de sumário de GitHub Markdown ou Wiki Online
ou via ferramenta local:
github-markdown-toc
fonte
https://github.com/jonschlinkert/markdown-toc
git clone your-repo.wiki.git
(adicione o.wiki
direito antes.git
de clonar o wikinpm i -g markdown-toc
<!-- toc -->
( diferencia maiúsculas de minúsculas) na marcação do seu wikimarkdown-toc -i my-wiki-markdown.md
(-i
irá editá-lo no local)Atualização: acho que https://github.com/thlorenz/doctoc é mais popular agora.
fonte
Atualmente não é possível fazer isso usando a sintaxe de redução (
.md
). Há uma discussão não oficial em andamento sobre a geração automática de índice TOC em arquivos de markdown renderizados, como oREADME.md
qual lista algumas das ideias.No entanto, existem algumas outras soluções alternativas, como:
Use em
AsciiDoc
vez de acordo com a sugestão deste comentário . Por exemplo:Verifique o exemplo em
littlebits/react-popover
(README.adoc
) .Tabela de conteúdo online gerador ( raychenon / play-table-of-contents )
fonte
Se você não estiver em posição de manter o Markdown , faça o seguinte:
No entanto, usando arquivos Markdown no GitHub / repo , você pode obtê-lo nas páginas do GitHub como na Wikipedia
fonte
Código Visual Studio
Se acontecer de você usar o Visual Studio Code , há uma extensão fácil de usar chamada Markdown All in One que pode fazer o sumário para qualquer arquivo .md em um instante.
Basta abrir a Paleta de Comandos (
Ctrl-Shift-P
) ->Markdown: Create Table of Contents
A atualização automática atrapalha seu sumário editado?
Como uma dica adicional, você pode desativar as "atualizações automáticas do TOC ao salvar" usando
nas configurações do Visual Studio (Paleta de comandos -> Preferências: Abrir configurações (JSON)).
fonte
Você pode escolher o modo de edição "MediaWiki", que irá gerar um toc para os cabeçalhos, por exemplo
fonte
Devido ao fato de que o github tem sua própria maneira de gerar atributos id = ".." em h1, h2, h3, etc ... cabeçalhos na versão html após o processamento do Markdown (por exemplo, o Bitbucket usa um padrão pouco diferente de lentidão no título dos cabeçalhos para id = "slug") é útil não reinventar a roda e usar a biblioteca que fez a engenharia reversa desse processo.
Encontrei uma biblioteca muito boa para essa tarefa chamada markdown-toc .
Para mim parece a melhor solução porque sempre instalei o node na minha máquina.
Basta executar npx remarcação-toc -i file.md .
E parece que é uma das ferramentas mais populares para essa tarefa - pelo menos no ecossistema node.js.
resultado:
fonte