Markdown 문법 총정리

coderH·2022년 4월 25일

Markdown?

마크다운이란 md 혹은 markdown확장자를 가진 마크업 언어입니다.
보통 github 저장소를 위한 README.md를 작성하기 위해 많이 사용되며
HTML과 같은 문서로 변환하기 쉽고 문법 자체가 간단합니다.

이 글에서는 velog와 github를 기준으로 적용 가능한 문법과 적용되지 않는 확장문법으로 나눠서 다뤄보겠습니다.

기본 문법

Heading

heading은 HTML의 h1~h6태그로 변환됩니다.

문자열앞에 "#"을 붙여 사용하며 "#"의 개수를 기준으로 h1~h6가 정해집니다.
"#" 뒤에는 한칸의 공백이 있어야하고 위 아래로 한줄씩의 공백이 있어야 적용됩니다.

또한 h1과 h2에 한해서 각각 ==, --로 대체할 수 있습니다.

Emphasis

- Italic

앞뒤로 1개의 애스터리스크(*) 혹은 언더바(_)로 문자열을 감싸줍니다.

- Bold

앞뒤로 2개의 애스터리스크(*) 혹은 언더바(_)로 문자열을 감싸줍니다.

- Bold and Italic

앞뒤로 3개의 애스터리스크(*) 혹은 언더바(_)로 문자열을 감싸줍니다.
**_처럼 섞어서 사용해도 적용은 되지만 가능하면 통일해주는게 좋습니다.

Strikethrough

글자의 가운데에 줄이 그어진 취소선으로 많이 사용되는 문법이며 앞 뒤로 ~를 2번씩 감싸주면 됩니다.

Blockquote

문자열앞에 ">"기호로 사용 가능하며 기호 뒤에는 한칸의 공백이 있어야 합니다.
기호의 개수를 늘려 중첩 형태로 사용할 수 있고 blockquote 내부에서 bold, URL과 같은 포멧팅을
사용할 수 있습니다.
만약 줄넘김이 필요할 경우 <br>을 사용하거나 줄 사이에 문자열 없이 기호만 사용하면 됩니다.

Line break

줄바꿈 기호이며 "<br>" "<br/>", "</br>" 형태를 지원합니다.
기호 없이 줄바꿈이 필요할 경우 2개 이상의 공백과 엔터를 통해 줄바꿈을 적용할 수 있습니다.
velog의 경우 엔터키만으로도 줄바꿈이 가능합니다.

Lists

Ordered Lists

ol태그와 li태그로 조합된 숫자형태 리스트입니다.
문자열앞에 붙는 숫자는 꼭 순서대로 사용하지 않아도 순서에 맞게 변환되며 중첩도 가능합니다.
탭공백을 숫자의 앞에 두고 사용하면 중첩 형태로 사용할 수 있습니다.
또한 사용환경에 따라 중첩 할 경우 숫자에서 로마자 형태로 출력되기도 합니다.

Unordered Lists

ul태그와 li태그의 조합으로 *, +, - 3가지의 기호로 사용이 가능합니다.

중첩이 안된 상태에서 기호를 섞게되면 문단이 나눠지기 때문에 문단을 나누는것이 목적이 아니라면 기호를 통일하는것이 좋고 Ordered Lists와 마찬가지로 중첩이 가능합니다.

Code

백틱(`) 기호 한개를 이용하여 문자열을 감싼 형태로 사용합니다.

Fenced code block

문자열의 앞뒤로 백틱 3개를 감싸 사용하며 해당하는 문단 전체를 코드형태로 보여줍니다.

Horizontal Rule

*, -, _ 3개의 기호를 3개씩 입력하여 사용합니다.
원활하게 적용되도록 위 아래로 공백을 남겨주어야 합니다.

URL 링크로 "[title](URL)"형태로 사용합니다.
velog와 github의 경우 URL만 입력하거나 <URL>형태로 입력해도 적용이 가능합니다.
또한 title에는 emphasize 적용도 가능합니다.

(URL "title")형태로 사용하면 a태그 hover시에 표시되는 title의 속성 값도 지정할 수 있습니다.

Image

Link와 비슷하지만 가장 앞쪽에 느낌표를 붙여 사용합니다. ![altName](imageURL)
여기서는 대괄호안에 문자열이 img태그의 alt속성값이 됩니다.

Task list

ul, li내부의 input:checkout으로 변환되며 실제 클릭은 불가능합니다.
체크여부는 괄호안에 x를 넣으면 체크표시된 input이 생성되고 반대의 경우에는 공백을 넣어주면 됩니다.

하이픈 뒤에 공백, 문자열과 괄호사이에 공백을 넣어주어야 합니다.

Table

표를 생성하는 문법으로 각 칸은 키보드에서 엔터키 위에 위치한 "|" 기호로 구분합니다.

head와 body부분으로 나뉘고 이 사이에 둘을 나눌 수 있는 |---|---|를 넣어주어야 합니다.
또한 이 기호를 활용하여 table의 문자열을 정렬할 수 있습니다.

:--- 왼쪽 정렬
:---: 가운데 정렬
---: 오른쪽 정렬

또한 테이블 내부에 쓰여지는 문자열에도 코드, 링크, emphasize 포맷팅을 적용할 수 있습니다.

그 외 문법

Emoji - velog X

velog에서는 지원하지 않고 github에서 지원하는 문법입니다.
같은 이모지 그림이여도 환경별로 이모지의 단어를 조금씩 다르게 사용할 수 있기 때문에 emojipedia와 같은 사이트에서 이름을 찾아보시거나 github의 경우 :를 입력하면 검색어에 따른 이모지를 추천해주고 있습니다.

또한 이모지는 소문자로 입력해주셔야 합니다.

Footnote - velog X

문서의 각주와 같은 형식이 필요할 때 사용하는 문법으로
각주가 필요한 부분은 [^string]형태로 사용하며 각주에 대한 설명은 위 아래 공백을 두고 [^string]: string 형태로 작성해줍니다.

Definition list

단어에 대한 설명을 하기위해 사용되는 문법으로 dl, dt, dd태그들로 변환됩니다.
단어: 설명 형태로 사용합니다.

Highlight

문자열에 하이라이트 효과를 주는 문법으로 mark태그로 변경됩니다.
문자열 앞뒤로 "=="을 감싸주면 적용이 가능합니다.

Subscript

화학식에서 많이 사용되는 아래 첨자를 위한 문법이며 sub태그로 변환됩니다.
문자열의 앞뒤로 "~"를 감싸줍니다.

Superscript

지수를 표기할 때 많이 사용되는 위 첨자를 위한 문법으로 sup태그로 변환됩니다.
문자열을 "^"로 감싸줍니다.

0개의 댓글