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)

  • 일반적인 표
  • 테이블 안에 | 파이프 기호를 사용하려면 파이프 기호 대신에 &#124; 를 입력
|제목|&#124;내용&#124;|설명|
|------|---|---|
|테스트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