Sisukorra generaator
Kleepige Markdown või HTML ja hankige pesastatud, klõpsatav sisukord, millel on tõelised GitHubi-stiilis kokkupõrkekindlad ankrud ja algne sisu koos sisestatud pealkirja ID-dega.
Tulemus
Sisukord on sama kasulik kui selle all olevad ankurlingid ja ankurlingid on usaldusväärsed ainult siis, kui iga pealkiri saab ainulaadse, etteaimatava näpunäite. See generaator analüüsib päised välja kleebitavast tekstist (Markdown või HTML) ja määrab igaühele tõelise GitHubi-stiilis ankru: väiketähtedega tekst, tühikud ja kirjavahemärgid on asendatud või eemaldatud ning kriitilise tähtsusega ehtne kokkupõrkekindel järelliide alati, kui kaks pealkirja tekitaksid muidu sama näpu. Dokumendi teine "sissejuhatus" muutub sissejuhatuseks-1, kolmas sissejuhatus-2, mida jälgitakse jooksva sündmuste kaardiga täpselt nii, nagu GitHubi enda slugger töötab – mitte otsetee, mis kirjutab vaikselt üle varasemad lingid, kui pealkirjad korduvad, mis on kõige levinum viis käsitsi veeretud sisutabeli skriptide katkemiseks.
Markdowni sõelumine on reapõhine eesmärgi järgi, kuna naiivse rakenduse klassikaline tõrkerežiim käsitleb piiratud koodiploki sisse kirjutatud "#" päisena. See tööriist jälgib, kas piirdeaed ``` või ~~~ on parajasti avatud, kui see dokumenti rida-realt läbib, ja tuvastab väljaspool avatud piirdeid ainult ATX-pealkirjad (# kuni ######) – nii et shelli kommentaare või Pythoni "# kommentaar" ei saasta kunagi teie sisukorda. HTML-sisend kasutab teistsugust, sama reaalset teed: seda sõelutakse brauseri enda DOMParseriga, pealkirjad valitakse sildi nime järgi ja iga id-atribuut seatakse otse tegelikule elemendile, enne kui dokument järjestatakse tagasi stringiks.
Teisest otsast tuleb välja kaks asja. Esiteks, sisukord ise, eksporditud nii pesastatud märgistusloendina (- [pealkiri](#slug), taandega pealkirja taseme järgi) kui ka pesastatud HTML-loendina (<ul><li><a href="#slug">), millest igaühel on oma kopeerimisnupp. Teiseks, teie algne sisu, mille ankrud on tegelikult sisse lülitatud: Markdowni sisendiks saate valida laialdaselt toetatud päiseatribuudi {#slug} süntaksi, mida kasutavad kramdown, Pandoc, MkDocs ja GitHub Pages'i Jekyll, või pöörduda tagasi tavaliste HTML-i päisemärgendite juurde koos id="slug"-iga, kui teie sihtrenderdaja ei mõista atribuuti id="slug". HTML-i sisendiks sisestatakse ID otse sõelutud pealkirja elementi – eraldi "režiimi" valida pole, kuna sildid on juba olemas.
Kõik töötab teie brauseris lokaalselt: sõelumine, sluug matemaatika ja dokumendi uuesti kokkupanemine toimuvad kõik JavaScriptis sellel lehel, mida praegu vaatate, ilma midagi üles laadimata. See on oluline dokumentatsiooni mustandite, sisemiste wikide või avaldamata ajaveebipostituse puhul, mida te ei ole valmis kleepima kolmanda osapoole teenusesse lihtsalt toimiva sisukorra saamiseks.