마크다운

김찬우
∙∙조회 5

1. 마크다운이란?

1-1 개념

마크다운은 일반 텍스트에 몇 가지 기호를 섞어 문서의 구조를 표현하는 표기 방식 입니다.

1-2 문법 형식

마크다운 문서는 확장자가 .md인 텍스트 파일이다. 특별한 프로그램 없이 메모장으로 열고 쓸 수 있다.

markdown
**굵은 문자** 와 `코드` 

이 파일을 마크다운을 이해하는 프로그램(GitHub, Obsidian 등)에서 열면 기호가 실제 서식으로 바뀌어 보이는데 이 변환 과정을

렌더링(rendering)이라 하고, 변환하는 프로그램을 렌더러(renderer) 라고 부른다.

2. 제목

2-1 개념

제목은 문서를 단계로 나누는 표시입니다. 글자를 크게 만드는 기능이 아니라 문서의 뼈대를 만드는 표시 입니다.

2-2 문법 형식

줄 맨 앞에 #을 놓고 공백을 하나 넣은 뒤 제목을 씁니다. #의 개수가 단계를 뜻하며 1개부터 6개까지 쓸 수 있다.

shell
# 1단계 제목 -> <h1>
## 2단게 제목 -> <h2>
### 3단계 제목 -> <h3>
.....

#뒤의 공백은 생략할 수 없다.

공백을 빼먹으면 제목이 되지않고 환경에 따라 다르지만 #제목 이라는 글자가 그대로 나온다.

입력결과
# 제목제목으로 인식이 된다
#제목#제목이 표시된다

밑줄을 그어 제목을 만드는 방식도 있다. 글 아래 줄에 =를 이어 쓰면 1단계, -를 이어쓰면 2단계가 된다.

이 방식은 2단계까지만 가능하고, -가 다른 문법과 헷갈리기 쉬워 잘 쓰이지 않는다.

markdown
1단계 제목
==========
2단계 제목
----------

3. 문단과 줄바꿈

3-1 개념

GitHub 기준으로 줄을 그냥 바꾸면 줄이 바뀌지않는다. 편집기에서 엔터를 눌러 줄을 나누고 저장하는데, 렌더링된 결과에서는 한 줄로 이어져 있는 경우가 여기에 해당합니다. 마크다운은 빈 줄을 문단의 경계로 삼고, 빈 줄 없이 이어진 줄들은 한 문단의 내용으로 취급하기 때문입니다.

3-2 문법 형식

문단 나누기

빈 줄 하나를 넣습니다

plain text
첫 번째 문단입니다.

두번째 문단입니다.

문단 안에서 줄 바꿈

세 가지 방법

css
줄 끝에 공백을 두개 넣습니다.··
이 줄은 위 줄 바로 아래 붙습니다.

줄 끝에 백슬래시를 넣습니다.|
이 줄도 위 줄 바로 아래에 붙습니다.

HTML 태그를 씁니다.|
이 줄도 마찬가지입니다.

위 예시의 ·· 은 실제로는 공백 두 칸을 보이도록 표시한 것이다.

이 세 방법의 차이

방법표기특징
공백 두 개줄 끝에 공백 2칸가장 널리 쓰이지만 눈에 보이지는 않는다
백슬래시줄 끝에 ||눈에 보여서 실수를 줄일 수 있다
HTML 태그줄 끝에 <br>마크다운 문법이 아니므로 HTML태그를 허용하는 곳에서만 동작한다.

4. 강조

4-1 개념

강조는 문장 안의 일부를 굵게 하거나 기울여 표시 하는것이다. 마크다운은 별표(*)나 밑줄(_ )로 감싸는 방식을 사용한다.

하나로 감싸면 기울임, 두 개로 감싸면 굵게 표시가 된다.

4-2 문법 형식

markdown
*기울임* 또는 _기울임_
**굵게** 또는 __굵게__
***굵은 기울임*** 또는  ___굵은 기울임___

밑줄은 앞뒤가 글자로 둘러싸인 자리에선 강조로 인식되지 않지만, 별표는 그런 제약이 없다.

기호를 글자 그대로 쓰기

강조 기호를 문자 그대로 보이려면 앞에 백슬래시를 붙입니다.

입력

결과

\*별표\*

\

강조는 문서에서 실제로 중요한 곳에만 쓰기 때문에 여러 곳에 강조를 하지 않는다.

5. 목록

5-1 개념

목록은 여러 항목을 나열하는 표시입니다. 순서가 의미를 갖는지에 따라 두 종류로 나뉜다.

  • 순서 없는 목록
    • 항목 사이에 순서가 없습니다. 준비물이나 특징을 나열할 때 씁니다.
  • 순서가 있는 목록
    • 항목의 순서가 의미를 갖습니다. 절차나 단계를 적을 때 씁니다.

5-2 문법형식

순서가 없는 목록

줄 앞에 -, +, *중 하나를 높고 공백을 넣으면

  • 가나다

이런 결과가 나온다.

순서가 있는 목록

줄 앞에 숫자와 마침표를 놓고 공백을 넣으면 다음과 같은 결과가 나온다.

  1. 가나다
  2. 다나가

실제로는 첫번째 숫자를 기준으로 자동으로 번호가 매겨지며, 시작번호를 5.로 시작하면 5부터 시작한다.

중첩 목록

중첩 목록
목록 안에 하위 목록을 넣으려면 상위 항목의 내용 시작 위치에 맞춰 들여 씁니다.

  • 상위 항목
    • 하위 항목

순서 있는 목록은 마커가 더 길기 때문에 보통 3칸을 들여씁니다.

목록 안에 다른 내용 넣기

문단이나 코드 블록을 목록 안에 넣을 때도 목록 내용에 맞춰 들여씁니다.

들여쓰기가 부족하면 목록이 중간에 끊기고 새 목록으로 인식될 수 있습니다.

6. 코드

6-1 개념

  • 문서 안의 코드는 일반 문장과 구분해 표시해야 합니다.
  • 코드의 기호가 마크다운 문법으로 해석되는 것을 막고, 코드의 범위를 쉽게 알아보기 위해 사용합니다.
  • 코드 표현 방식은 두 가지입니다.
    • 인라인 코드: 문장 안에 짧은 코드 삽입
    • 코드 블록: 여러 줄의 코드를 묶어 표시

6-2 문법 형식

인라인 코드

백틱(```)으로 감쌉니다. 백틱은 키보드에서 숫자 1 왼쪽, 물결표(~)와 같은 자리에 있습니다.

설정 파일은 config.json 이며 Assets 폴더 아래에 둡니다.

코드 블록

백틱 세 개로 시작하고 세 개로 닫습니다. 이 표시를 펜스(fence)라고 부릅니다.

언어 지정

여는 펜스 뒤에 언어 이름을 적으면 그 언어의 문법에 맞게 색이 입혀집니다.

백틱 개수

코드 블록 안에 백틱 세 개짜리 코드 블록을 넣어야 할 때가 있습니다. 이 교재가 마크다운 예시를 보이는 자리가 그렇습니다. 이때는 바깥 펜스의 백틱을 안쪽보다 많게 합니다.