마크다운
1. 개요
마크다운 (Markdown)은 마크업 언어의 일종으로, 존 그루버(John Gruber)[1] 와 아론 스워츠(Aaron Swartz)[2] 가 만들었다. 온갖 태그로 범벅된 HTML 문서 등과 달리, 읽기도 쓰기도 쉬운 문서 양식을 지향한다. 그루버는 마크다운으로 작성한 문서를 HTML로 변환하는 펄 스크립트도 만들었다.[3] 확장자는 .md 또는 .markdown을 쓰지만, 전자가 압도적으로 많이 쓰인다.
2. 문법
여기서 언급하는 '위키문법'은 나무마크가 기준입니다.
2.1. 문단 제목
위키 문법의
== 개요 ==
에 대응하는 문법이다. 6단계까지 할 수 있다.# 1단계 제목
## 2단계 제목
또는 다음과 같이 쓸 수도 있다.1단계 제목
=======
2단계 제목
------
2.2. 문단
줄바꿈을 두 번 하면 된다.
첫째 문단입니다. 문장이 두개죠.
둘째 문단입니다. 저도
문장이 두개입니다.
마크다운은 기본적으로 강제개행을 인식하지 않기 때문에, 두 번째 예시를 html 등으로 변환할 경우 줄바꿈이 없는 "둘째 문단입니다. 저도 문장이 두개입니다."로 변환된다. 강제개행을 인식하게 하는 문법은 따로 있지만 가독성 문제로 권장되지 않으므로 여기에 적지 않는다.2.3. 목록
위키 문법과 같으나 첫번째 칸을 띄어쓰지 않아도 된다.
* 목록 하나
* 목록 두울
* 목록 세엣
- 이렇게 써도
- 된답니다.
순서가 있는 목록은 다음과 같이 쓴다. 숫자는 반드시 맞춰 쓸 필요는 없다. 어차피 마크다운 기본문법에서는 각 행이 HTML의
태그로 변환되는 것일 뿐이라 번호 정보가 사라지기 때문.1. 첫째입니다.
2. 둘째입니다.
3. 셋째입니다.
5. 넷째입니다. 다섯째 아닙니다.
6. 이게 다섯째입니다.
4. 이건 여섯째.
2.4. 글자모양
굵은 글자는 다음과 같이 쓴다. 위키 문법
'''굵게'''
에 대응하는 문법이다.**굵게** 쓰거나 __두껍게__ 쓰거나
결과: '''굵게''' 쓰거나 '''두껍게''' 쓰거나기울임꼴 글자는 다음과 같이 쓴다. 위키 문법
''기울게''
에 대응하는 문법이다.*기울게* 쓰면서 _기울게_ 쓴다
결과: ''기울게'' 쓰면서 ''기울게'' 쓴다2.5. 코드
(특히 프로그래밍 관련 문서에서) 코드를 입력할 필요가 있을 땐 다음과 같이 쓴다. 고정폭 글꼴로 출력되며 위키 문법
{{{ code }}}
에 대응하는 문법이다.문장 중간에 표시할 땐 다음과 같이 쓴다.[4]
예를들어`import antigravity`이렇게요.
여러 줄의 코드는 다음과 같이 줄 첫부분을 공백 4칸이상 띄어서 쓴다. [5]다음은 Clojure의 예시 코드다.
clojure
#!/usr/bin/env clojure
(println "Hello, World!")
2.6. 인용문
줄 첫번째마다 >를 쓰면 된다. 위키 문법에도 동일하게 쓴다.
> 빛이 있으라.
>> 하니 빛이 있었다.
결과: 빛이 있으라.
하니 빛이 있었다.
2.7. 링크
링크는 다음과 같이 쓴다. 위키 문법에 대응하는 문법이다.
[나무위키](https://namu.wiki/w/나무위키:대문)
또는 다음과 같이 써서 주석형태로 링크를 쓸 수 있다.출처는 [위키백과][wiki]입니다.
[wiki]: http://en.wikipedia.org/wiki/Markdown#Syntax_examples "위키백과 Markdown 항목"
2.8. 그림 넣기
그림을 넣을 땐 다음과 같이 쓴다.
![세피로트](https://cdn.namu.wiki/r/http%3A%2F%2Fi.imgur.com%2F2megHz2.png "툴팁 메시지. 이 부분은 생략해도 됩니다.")
또는 다음과 같이 써서 주석형태로 그림을 넣을 수 있다.![세피로트][SD]
[SD]: https://cdn.namu.wiki/r/http%3A%2F%2Fi.imgur.com%2F2megHz2.png "툴팁 메시지. 이 부분은 생략해도 됩니다."
"세피로트" 부분은 HTML img태그의 alt속성에, "툴팁 메시지" 부분은 title속성에 해당한다.
2.9. 가로줄
가로줄을 넣는 문법은 여러가지가 있다. 위키 문법의
----
에 대응하는 문법이다.* * *
***
*****
- - -
------------
3. 마크다운을 사용하는 곳
- 텀블러
- 레딧
- GitHub [6]
- Stack Overflow
- 도쿠위키 : 플러그인을 사용하여 마크다운 문법을 사용할 수 있다.
- 모니위키 : 버전 1.1.3부터 마크다운 프로세서 플러그인을 기본 내장하고 있다.
- Notion
- Trello
- Steemit
- Jupyter notebook
- Discord
- velog
- Simple Note
- 티스토리 : 에디터에서 기본,마크다운,HTML 모드중 선택해 작성가능
- jekyll
4. 마크다운 변형판
4.1. Github-Flavored Markdown
Github-Flavored Markdown
GitHub에서 쓰이며 다음과 같은 차이점이 있다.
- 취소선을 쓸 수 있다.[7] (
)~~취소선~~
- 표를 만들 수 있다.
- do_this_and_do_that과 같은 형태의 단어를 기울임꼴 글자로 처리하지 않는다.
- URL을 자동으로 링크로 변환해준다.
- 코드를 입력할 때
로 감싸주는 문법이 추가되었다.```
- 여러 줄의 코드는 다음과 같이 쓴다. [8]
```Python
print('hello world')
```
- 문법 강조가 적용이 된다. Linguist를 이용하여 처리한다.
- 작업 목록(Task lists) 문법이 추가되었다.
- Git관련 링크를 자동으로 처리해준다. (SHA, 사용자, 이슈 등)
4.2. MultiMarkdown
MultiMarkdown
기존 마크다운에 없는 기능(주석, 표 등)이 추가되어있다.
4.3. Haroopad Flavored Markdown
하루패드에서 쓰이며 다음과 같은 차이점이 있다.
- 강조 문법이 추가되었다. 사용 방법은
처럼 쓰면 된다.== 강조 ==
- 목차 기능이 추가되었다. 사용 방법은
처럼 쓰면 된다.[TOC]
-
처럼 유튜브 영상 등을 추가할 수 있다.@[](http://www.youtube.com/watch?v=jo_B4LTHi3I)
- 다이어그램 기능이 추가되었다.
5. 관련 문서
[1] 유명한 애플 관련 블로거 로 Daring Fireball의 운영자다. 애플이 아이폰의 성공으로 초메이저 회사가 되기 전에는 존 그루버 같은 유명 애플 블로거의 글들을 번역해 돌려 읽는 것이 국내 맥 유저들의 주 일과 중 하나였다...[2] 레딧의 공동설립자이자 RSS를 고안하고 정보자유를 중점적으로 주장한 인터넷 활동가이자 프로그래머. 게릴라 오픈 액세스 매니페스토 선언에서 천명한 것처럼 재판기록 같은 각종 공공정보를 무료로 대중에게 공개해야한다는 신념으로 활동하던 중 유료 저널 검색엔진 및 저장소인 JSTOR의 논문들을 다운받아 공개하려한 건으로 FBI 수사로 기소되어 재판과정 중에 자살로 생을 마감했다.[3] 다만 요즘에는 범용성이 높은 pandoc을 더 많이 쓰는 듯.[4] 파이썬의 이스터 에그 중 하나. 웹 브라우저로 xkcd의 만화 PYTHON을 띄운다.[5] 첫줄의 설명 "다음은 ... 코드다."는 물론 마크다운 문법상 필요하지 않다. 다만 위키 문법의 한계인지 첫줄 들여쓰기가 제대로 표시되지 않아, 들여쓰기 없는 한 줄이 부득이 예시에 추가되었다.[6] 마크다운을 변형한 Github-Flavored Markdown을 쓴다.[7] 쉽게 간과되는 사실인데, 취소선 기능은 순수 마크다운 문법이 아니다.[8] 파이썬의 간단한 코드