Markdown Guide
Hvad er Markdown?
Markdown er et letvægts markup-sprog, som du kan bruge til at tilføje formateringselementer til almindelige tekstdokumenter. Det giver dig mulighed for at oprette formateret tekst ved hjælp af en simpel, letlæselig syntaks, der kan konverteres til HTML og andre formater.
Tænk på Markdown som en måde at skrive formaterede dokumenter på uden at skulle bruge komplekse tekstbehandlingsprogrammer. Du tilføjer blot særlige tegn til almindelig tekst for at angive formatering som fed, kursiv ellerkode
.
Hvorfor bruge Markdown?
Markdown er utrolig simpelt og let at lære. Du kan mestre det grundlæggende på kun 10 minutter. Formateringssymbolerne er intuitive - stjerner for fremhævelse, hashtags for overskrifter. Du skriver bare og tilføjer simple symboler for at formatere din tekst.
Markdown virker på enhver platform og i enhver teksteditor. Da filerne er almindelig tekst, vil de altid være læsbare, selv årtier fra nu. Filerne er lette og indlæses hurtigt.
Markdown har bred support på tværs af platforme. GitHub, Reddit, Discord og Slack bruger alle Markdown. Populære apps som Obsidian, Notion og VS Code understøtter det indbygget. Dette gør det perfekt til dokumentation, notattagen og webindhold.
Markdown fungerer perfekt med versionskontrolsystemer som Git. Du kan fokusere på indhold uden formateringsafledninger. Teamsamarbejde er lettere, fordi alle kan redigere filer uden særlig software.
Markdown Udviklingshistorie
Begyndelsen: Vanilla Markdown (2004)
Markdown blev oprindeligt skabt af John Gruber i 2004, med betydelig input fra Aaron Swartz. Gruber designede det til at være en simpel måde at skrive på ved hjælp af et letlæseligt og letskrivbart almindeligt tekstformat, der kunne konverteres til strukturelt gyldigt HTML. Dette er "kernen", som John Gruber oprindeligt designede og implementerede, der indeholder den mest grundlæggende formateringssyntaks - det vi kalder "grundlæggende vanilla-smag".
Grundlæggende syntaks (Vanilla Markdown inkluderer):
- •Overskrifter: Brug
#
symbol (# Overskrift
) - •Fremhævelse:
- •Kursiv: Brug
*
eller_
til at omgive tekst (*kursiv*
eller_kursiv_
) - •Fed: Brug
**
eller__
til at omgive tekst (**fed**
eller__fed__
) - •Lister:
- •Usorterede lister: Brug
*
,-
eller+
(- element
) - •Sorterede lister: Brug tal med punktum (
1. element
) - •Links: Brug
[link tekst](link adresse)
- •Billeder: Brug

- •Kodeblokke: Indryk med mellemrum (normalt 4 mellemrum eller 1 Tab)
- •Blokcitater: Brug
>
symbol (> Dette er et citat
) - •Horisontale linjer: Brug
---
eller***
Problemet: Inkonsistente implementeringer
Dog manglede Vanilla Markdown en streng, formel specifikation. Dette førte til inkonsistent adfærd på tværs af forskellige Markdown-parsere ved håndtering af edge cases.
Mellemrumshåndtering: For eksempel, i listeelementer, hvor mange mellemrums indrykning tæller som en under-liste? Er det 2 mellemrum, 3 mellemrum eller 4 mellemrum? Forskellige parsere kan have forskellige vurderinger.
Linjebrudshåndtering: I visse situationer, skal et almindeligt linjebrud(\n
) parses som et <br>
(linjebrud) tag, eller skal det simpelthen behandles som et mellemrum i teksten? Dette kan også variere afhængigt af parseren.
HTML blandet brug: Markdown tillader indlejret HTML. Men i nogle komplekse HTML-strukturer præsenterer hvordan Markdown-parsere håndterer Markdown-syntaks inden for dem også tvetydige områder.
Løsningen: CommonMark (2014)
I september 2014 blev CommonMark introduceret for at løse disse inkonsistensproblemer. Ledet af John MacFarlane giver det en stringent specifikation for Markdown.
CommonMark giver en præcis specifikation, hvor hver edge case er klart defineret. Det inkluderer en omfattende testsuite med over 600 testcases for at sikre konsistens på tværs af implementeringer. Specifikationen giver en referenceimplementering, der tjener som standard for andre parsere at følge. Den opretholder bagudkompatibilitet med de fleste eksisterende Markdown-dokumenter, mens den sikrer utvetydig parsing, hvor det samme input altid producerer det samme output på tværs af alle kompatible parsere.
Udvidede varianter og yderligere funktioner
Da brugere havde forskellige behov, opstod forskellige udvidede varianter af Markdown for at opfylde specifikke krav.
GitHub Flavored Markdown (GFM) Yderligere syntaks:
- •Tabeller: Brug pipe-syntaks til at oprette tabeller
| Overskrift 1 | Overskrift 2 | Overskrift 3 |
|-------------|-------------|-------------|
| Celle 1 | Celle 2 | Celle 3 |
| Celle 4 | Celle 5 | Celle 6 |
- •Gennemstregning: Brug
~~
til at omgive tekst (~~slettet tekst~~
) - •Opgavelister: Opret interaktive checkboxe
- [x] Afsluttet opgave
- [ ] Ufuldstændig opgave
- •Afgrænsede kodeblokke: Brug tredobbelte backticks med sprogspecifikation
```javascript
function hello() {
console.log("Hello World!");
}
```
- •Automatisk linking: URL'er og e-mailadresser bliver automatisk klikbare
- •Fodnoter: Brug
[^1]
syntaks til akademisk skrivning
Dette er en sætning med en fodnote[^1].
[^1]: Dette er fodnoteindholdet.
Resultat: Dette er en sætning med en fodnote¹.
- •Matematiske udtryk: Brug
$E=mc^2$
til videnskabelige dokumenter - •Emoji-genveje: Brug
:smile:
bliver 😊 - •Definitionslister: Til ordlister og teknisk dokumentation
Begreb 1
: Definition for begreb 1
Begreb 2
: Definition for begreb 2
: Endnu en definition for begreb 2
Resultat: Opretter formaterede lister med fremhævede begreber og indrykket definitioner
Hvordan virker det?
Markdown følger en simpel tre-trins workflow:
Trin 1: Opret en Markdown-fil
Først opretter du en almindelig tekstfil med en.md
eller .markdown
udvidelse ved hjælp af enhver teksteditor. Du skriver dit indhold ved hjælp af simple formateringssymboler:
Trin 2: Behandl med Markdown-værktøjer
Din.md
fil behandles derefter af Markdown-konverteringsværktøjer eller -processorer. Disse værktøjer læser din Markdown-fil og konverterer den til det ønskede outputformat.
Trin 3: Output til forskellige formater
Markdown-processoren kan konvertere din fil til flere formater:
Til webvisning:
- •Konverterer til HTML til hjemmesider, blogs og webapplikationer
- •Viser formateret indhold i browsere med korrekt styling
- •Konverterer til PDF til udskrivbare dokumenter og rapporter
- •Genererer Word-dokumenter (.docx) til kontorbrug
- •Opretter LaTeX til akademiske papirer og publikationer
- •Genererer e-bøger (EPUB-format)
- •Opretter præsentationsslides
- •Producerer dokumentationshjemmesider
Yderligere ressourcer
Væsentlig dokumentation
- •John Grubers Markdown-dokumentation :Den oprindelige guide skrevet af skaberen af Markdown. Væsentlig læsning for at forstå filosofien og grundlæggende syntaks.
- •Wikipedia - Markdown :Omfattende oversigt over Markdowns historie, variationer og tekniske detaljer.
- •Markdown Guide :En omfattende, begyndervenlig guide med eksempler og bedste praksisser for alle færdighedsniveauer.