Markdown (마크다운) 문법 총정리
Markdown 이란?
Markdown은 텍스트 서식을 지정하는 데 사용되는 경량 마크업 언어입니다. 2004년 John Gruber와 Aaron Swartz가 읽기 쉽고 쓰기 쉬운 Web용 콘텐츠를 작성하는 간단한 방법을 제공한다는 목표로 만들었습니다.
Markdown은 HTML로 쉽게 변환할 수 있는 간단한 일반 텍스트 구문을 사용하므로 웹사이트, 웹 애플리케이션용 콘텐츠를 만드는 데 널리 사용되며 Jupyter Notebook, Github등에서도 사용됩니다. 사용자는 HTML 또는 기타 마크업 언어에 대한 지식 없이도 일반 텍스트 문자를 사용하여 제목, 굵게 및 기울임꼴 텍스트, 목록, 링크 및 이미지와 같은 서식 요소를 추가할 수 있습니다.
더보기
Jupyter Notebook에서 Markdown을 사용하기 위해서는 Cell의 설정을 Code에서 Markdown으로 변경해야 합니다.
또는 Command Mode에서 단축키 M을 누르시면 됩니다.
Markdown 문법
#1. 목차
- 괄호 안에 #이동할 헤드(제목) 를 써주면 웹페이지에서 아래와 같이 해당 제목이 있는 곳으로 이동
- 띄어쓰기는 - 로 연결
**목차**
[1. 헤더 (Headers)](#1.-헤더-(Headers))
[2. 줄바꿈 (Line Breaks)](#2.-줄바꿈-(Line-Breaks))
[3. 목록 (List)](#3.-목록-(List))
[4. 인용문 (BlockQuote)](#4.-인용문-(BlockQuote))
[5. 코드(Code)블럭](#5.-코드(Code)블럭)
[6. 수평선 (Horizontal Rule)](#6.-수평선-(Horizontal-Rule))
[7. 강조 (Emphasis)](#7.-강조-(Emphasis))
[8. 링크 (Links)](#8.-링크-(Links))
[9. 이미지 (Image)](#9.-이미지-(Image))
[10. 표 (Table)](#10.-표-(Table))
[11. 각주 (Footnote)](#11.-각주-(Footnote))
[12. 접기 (Fold)](#12.-접기-(Fold))
[13. 이스케이프 (Backslash Escapes)](#13.-이스케이프-(Backslash-Escapes))
#2. 헤더 (Headers)
- 6가지의 제목을 나타내는 문법이 있는데 #을 사용 (글머리는 1 ~ 6까지만 지원)
# 제목 1
## 제목 2
### 제목 3
#### 제목 4
##### 제목 5
###### 제목 6
####### 제목 7 (지원 않됨)
#3. 줄바꿈 (Line Breaks)
- <br> 태그를 이용해서 줄바꿈을 사용할 수 있는데, 간단하게 띄어쓰기 두 번을 하고 enter을 누르면 줄을 바꿀 수 있음
첫번째 문장입니다. <br>
두번째 문장입니다.
세번째 문장입니다.
네번째 문장입니다.
#4. 목록 (List)
- 순서가 있는 목록(번호)
- 순서가 있는 목록은 숫자와 점을 사용
1. 첫번째
2. 두번째
3. 세번째
- 순서가 없는 목록
- 순서가 없는 목록은 글머리 기호( *, +, - ) 를 사용
+ 첫번째
+ 두번째
+ 세번째
- 첫번째
- 두번째
- 세번째
* 첫번째
* 두번째
* 세번째
+ 첫번째
+ 두번째
+ 세번째
* 1단계
- 2단계
+ 3단계
+ 4단계
#5. 인용문 (BlockQuote)
- >을 사용하여 블럭인용문자를 삽입 할 수 있음
> 첫번째 인용구입니다.
>> 두번째 인용구입니다.
>>> 세번째 인용구입니다.
#6. 코드(Code)블럭
- <pre><code>{code}</code></pre> 이용
<pre>
<code>
def print_text():
print("Hello Wolrd!!")
</code>
</pre>
- "```" 을 이용
- 코드블럭코드("```") 시작점에 사용하는 언어를 선언하여 문법강조(Syntax highlighting)이 가능
```python
def print_text():
print("Hello Wolrd!!")
```
#7. 수평선 (Horizontal Rule)
- 각 기호를 3개 이상 입력
- 마크다운 문서를 미리보기로 출력할 때 페이지 나누기 용도로 많이 사용
* * *
***
*****
- - -
---------------------------------------
#8. 강조 (Emphasis)
*기울어진 글씨*
_기울어진 글씨_
**굵은 글씨**
__굵은 글씨__
~~취소선 글씨~~
#9. 링크 (Links)
- 참조링크
Link: [Google][googlelink]
[googlelink]: https://google.com "Go google"
- 자동연결
- 일반적인 URL 혹은 이메일주소인 경우 적절한 형식으로 링크를 형성
* 외부링크: <http://example.com/>
* 이메일링크: <address@example.com>
#10. 이미지 (Image)
![Markdown Image](asset/images/test_image.jpg "Tooltip Message")
이미지의 크기나 정렬은 html 문법을 이용
<img width="" height=""></img>를 이용하며, 정렬을 위해서는 추가적으로 <div align="center"> </div> 을 이용
width, height에 직접 사이즈를 지정하거나 비율(%)로 지정 할 수 있음
<img src="asset/images/test_image.jpg" width="450px" height="300px" title="px(픽셀) 크기 설정" alt="Markdown Image"></img><br/>
<div align="center">
<img src="asset/images/test_image.jpg" width="20%">
#11. 표 (Table)
- 일반적인 표
- 테이블 안에 | 파이프 기호를 사용하려면 파이프 기호 대신에 | 를 입력
|제목||내용||설명|
|------|---|---|
|테스트1|테스트2|테스트3|
|테스트1|테스트2|테스트3|
|테스트1|테스트2|테스트3|
- 셀 정렬
- : 문자로 정렬을 정의
|제목|내용|설명|
|:---|---:|:---:|
|왼쪽정렬|오른쪽정렬|중앙정렬|
|왼쪽정렬|오른쪽정렬|중앙정렬|
|왼쪽정렬|오른쪽정렬|중앙정렬|
- 셀 확장
- 사이가 비어있으면 자동으로 확장
- 셀 강조
- 일반적인 text와 마찬가지로 * 와 ** 를 통해 이탤릭/강조를 표시할 수 있습니다. span tag를 사용하면 컬러도 표시 가능
|제목|내용|설명|
|---|---|---|
|테스트1|*강조1*|테스트3|
|테스트1|**강조2**|테스트3|
|테스트1|<span style="color:red">강조3</span>|테스트3|
#12. 각주 (Footnote)
각주<sup>[1](#각주 이름)</sup>
<a name="각주 이름">1</a>: 각주에 대한 설명
#13. 접기 (Fold)
<details><summary>Click Me</summary>
Good!!
</details>
#14. 이스케이프 (Backslash Escapes)
- 마크다운으로 글을 작성하다 보면 * 문자나 _ 문자 등을 사용하고 싶은 경우 \ 문자로 회피
반응형
'Tech & Development > Programming Languages' 카테고리의 다른 글
[ PyQt ] Signal & Slot (0) | 2021.01.30 |
---|---|
Python 패키지 설치 (0) | 2021.01.29 |
Jupyter Notebook 추가기능 (0) | 2021.01.29 |
Jupyter Notebook 단축키 (0) | 2021.01.29 |
Jupyter Notebook 기본 사용법 (0) | 2021.01.29 |
댓글
이 글 공유하기
다른 글
-
[ PyQt ] Signal & Slot
[ PyQt ] Signal & Slot
2021.01.30 -
Python 패키지 설치
Python 패키지 설치
2021.01.29 -
Jupyter Notebook 추가기능
Jupyter Notebook 추가기능
2021.01.29 -
Jupyter Notebook 단축키
Jupyter Notebook 단축키
2021.01.29