YAML Ainโt Markup Language
์ธ ์์ ์ค์์๋ YAML์ ๋ํด์ ์กฐ๊ธ ๋ ์ด์ผ๊ธฐ๋ฅผ ๋๋ ๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. YAML์ Y et A nother M arkup L anguage๋ผ๋ ๋ป์ ๊ฐ์ง ๋งํฌ์
์ธ์ด์
๋๋ค. [์ผ๋ฏ], [์ผ๋ฉ] ๋ฑ์ผ๋ก ์ฝ์ ์ ์๊ฒ ์ต๋๋ค. YAML์ 2001๋
ํด๋ผํฌ ์๋ฐ์ค๊ฐ ๊ณ ์ํ ์ธ์ด๋ก ๊ธฐ์กด์ JSON์ด ๊ฐ์ง๊ณ ์๋ ๋จ์ (์ฃผ์์ ๋ฌ ์ ์๋ค, ๋ฌธ๋ฒ์ด ์ ์ฐํ์ง ์๋ค)๋ค์ ํด์ํ๊ธฐ ์ํด ๋ง๋ค์ด์ก์ต๋๋ค.
YAML์ ๋งํฌ์
์ธ์ด์ง๋ง ์ค์ค๋ก ๋งํฌ์
์ธ์ด๊ฐ ์๋๋ผ๊ณ ์ด์ผ๊ธฐํฉ๋๋ค. YAML์ ๋ ๋ค๋ฅด๊ฒ ํ์ด๋ณด๋ฉด Y AML A inโt M arkup L anguage๋ผ๊ณ ๋ ํ ์ ์๊ฑฐ๋ ์. โYAML์ ๋งํฌ์
๋ฌธ์๊ฐ ์๋๋คโ๋ผ๊ณ ์ด์ผ๊ธฐํ๋ ์ด์ ๋ ๋ฐ๋ก YAML์ ์ ์ฒด์ฑ์ ๋งํฌ์
์ด ์๋ ๋ฐ์ดํฐ์ ๋๊ฒ ๋ค๋ ๊ฑฐ์ฃ . ๋ฐ์ดํฐ์ ๋ฐฉ์ ์ ๋ YAML์ JSON๊ณผ XML๊ณผ ๋น๊ตํด ์๋์ ์ผ๋ก ๊ฐ๊ฒฐํ๊ณ ๊ฐ๋
์ฑ ๋์ ๊ตฌ์กฐ๋ก ๋ง๋ค์ด์ก์ต๋๋ค. ์ง์ ํ ๋ฒ ๋น๊ตํด๋ณด์๋ฉด ๊ทธ ์ฐจ์ด๊ฐ ๋๊ปด์ง๊ฒ๋๋ค. ์ด๋ ๊ฒ ๊ฐ๊ฒฐํ ๊ตฌ์กฐ๋ YAML ๋ฌธ์๊ฐ ์ฌ๋ฌ ํ๋ ์์ํฌ์์ ์ค์ ํ์ผ๋ก ์๋ฆฌ์ก๋๋ฐ ํฐ ํ์ด ๋์์ด์.
---
Server :
name : Server1
owner : John
created : 123456
status : active
...
{
Server : [
{
name : Server1
owner: John
created: 123456
status: active
}
]
}
<Servers >
<Server >
<name >Server1</name >
<owner >John</owner >
<created >123456</created >
<status >active</status >
</Server >
</Servers >
Quarto๋ ๋ง์ฐฌ๊ฐ์ง์
๋๋ค. ์๋์์ ์ด์ผ๊ธฐํ ๊ฒ์ฒ๋ผ YAML header์๋ ๋ฉํ๋ฐ์ดํฐ๊ฐ ๋ด๊ฒจ์์ต๋๋ค. Quarto ๋ฌธ์์ ๋ค์ํ ์ค์ ์ YAML header์ ๋ด์๋๋ฉด ๋ฉ๋๋ค. ๊ฐ๋จํ ๊ตฌ์กฐ์ ๊ฐ๊ฒฐํ ๋ฌธ๋ฒ์ ํ์ฉํด์ ๋ง์ด์ฃ . Quarto๋ ๋งค๋ฒ ๋ชจ๋ ์ต์
์ ์๋์ผ๋ก ์
๋ ฅํ์ง ์๋๋ก ํ๊ธฐ ์ํด YAML header๋ฅผ ํ์ฉํฉ๋๋ค. ์
๋ ฅ๋ ๋ฉํ๋ฐ์ดํฐ๋ค์ ์ต์ข
์ ์ผ๋ก ํผ๋ธ๋ฆฌ์ฑ๋๋ ํฌ๋งท์ ์ํฅ์ ์ฃผ์ฃ . ํผ๋ธ๋ฆฌ์ฑ, ๋ ๋๋ง ๊ณผ์ ์ ์ฐธ์ฌํ๋ pandoc, quarto, knitr์ด YAML header์ ๋ด๊ธด ์ ๋ณด๋ฅผ ์ฝ๊ณ ์ฒ๋ฆฌํฉ๋๋ค.
Quarto with YAML
์ง๊ธ๋ถํฐ๋ YAML header์ ํฌํจ๋๋ Quarto์ ์ต์
๋ค์ ์ดํด๋ณด๊ฒ ์ต๋๋ค. ์ฐ์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ Output Option์
๋๋ค. ๋ง ๊ทธ๋๋ก ์ด๋ค ๊ฒฐ๊ณผ๋ฌผ์ ๋ง๋ค๊ณ ์ถ์์ง๋ฅผ ์ ํํ๋ ์ต์
์
๋๋ค. ๋ด๊ฐ qmd ๋ฌธ์๋ฅผ HTML๋ก, ํน์ PDF๋ก, ์๋๋ฉด revealjs ํํ๋ก ๋ฝ์๋ด๊ณ ์ถ๋ค๋ฉด YAML header์ format
์๋ฆฌ์ ์ ์ด์ฃผ๋ฉด ๋ฉ๋๋ค. format: html
์ด๋ ๊ฒ ๋ง์ด์ฃ . ์ฐธ๊ณ ๋ก format: html
์ฒ๋ผ key
๊ฐ(์ฌ๊ธฐ์ format
์ด ํด๋นํ๊ฒ ์ฃ )์ html
์ด๋ผ๋ value
๊ฐ์ ๋์์ํค๋ ๊ตฌ์กฐ๋ฅผ map
ํ์์ด๋ผ๊ณ ํฉ๋๋ค.
์ฐธ๊ณ ๋ก ์๋ YAML์์๋ ---
๋ก ์ด๊ณ ...
์ผ๋ก ๋ซ๋ ๊ฒ ์์น์
๋๋ค. ํ์ง๋ง Quarto์ YAML header์์ ๊ทธ๊ฒ๋ง์ ๋ ๊ท์ฐฎ์๋์ง ---
ํ๋๋ก ์ด๊ณ ๋ซ์ต๋๋ค.
์ถ๊ฐ ์ต์
์ ์ ์ผ๋ ค๋ฉด ์ ์ด๋์ ์ต์
๋ฐ์ ์ฃผ๋ฅด๋ฅต ์ ์ผ๋ฉด ๋ฉ๋๋ค. ๋ค๋ง ํ์ ์ต์
์ ์ ์ ๋์๋ ์์ ์ต์
์ ์๋ซ์ค์ ์ ์ด์ผ ํ๊ณ ๋ค์ฌ ์ฐ๊ธฐ๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค. YAML์ ๋ค์ฌ ์ฐ๊ธฐ๋ก ๊ณ์ธต๊ตฌ์กฐ๋ฅผ ํํํ๊ฑฐ๋ ์. YAML์์ ๋ค์ฌ ์ฐ๊ธฐ๋ 2n(2, 4, 6โฆ) ์นธ์ ์ง์ํฉ๋๋ค.
---
format :
html :
toc : true #ํ์ ์ต์
์ ๋ค์ฌ ์ฐ๊ธฐ๋ก
code-fold : true
---
๋ ํ๋ ์ฃผ์ํด์ผํ ์ , ๋์ด์ฐ๊ธฐ๊ธฐ๋ ์ค๋ฐ๊ฟ์ ๋ง์ถ์ง ์์ ๊ฒฝ์ฐ์ ์ต์
์ด ์คํ๋์ง ์์ต๋๋ค. YAML์ ๋ฏผ๊ฐํ ์น๊ตฌ๊ฑฐ๋ ์.
---
format:html # format๊ณผ html ์ฌ์ด์ ๋์ด์ฐ๊ธฐ๊ฐ ์๊ธฐ ๋๋ฌธ์ ์๋ X
---
---
format :
html # ๋ค์ฌ ์ฐ๊ธฐ๊ฐ ์๊ธฐ ๋๋ฌธ์ ์๋ X
---
---
format :
html : # ๋ค์ฌ ์ฐ๊ธฐ๋ ํ์ง๋ง html: ์ดํ value๊ฐ์ด ์์ด์ ์๋ X
---
์ ๋๋ก ๋ YAML ๊ตฌ์กฐ๋ ์ด๋ ์ต๋๋ค.
---
format : html # format๊ณผ html ์ฌ์ด์ ๋์ด์ฐ๊ธฐ
---
---
format :
html # ๋ค์ฌ ์ฐ๊ธฐ 2์นธ
---
---
format :
html :
toc : true
---
R studio๋ฅผ ์ฌ์ฉํ๊ณ ์๋ค๋ฉด YAML ๋ฌธ๋ฒ์ ํ๋ํ๋ ์ธ์ฐ๊ณ ์์ ํ์๋ ์์ต๋๋ค. R studio์์ ๊ธฐ๋ณธ์ ์ผ๋ก YAML intelligence ๊ธฐ๋ฅ์ด ์๊ฑฐ๋ ์. ์ต์
์ ์๋์์ฑ ํด์ฃผ๊ฑฐ๋, ์๋ชป๋ ๋ฌธ๋ฒ์ด ์์ ๊ฒฝ์ฐ ๊ฐ์กฐ ํ์๋ก ์ค๋ฅ๋ฅผ ํ์ธํ ์ ์์ต๋๋ค. YAML intelligence ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ ค๋ฉด Quarto CLI 0.9.44 ์ด์์ ๋ฒ์ ์ด์ด์ผ ํฉ๋๋ค.
๊ฐ๋จํ๊ฒ๋๋ง HTML format์ ์ต์
์ ์ดํด๋ณด๊ฒ ์ต๋๋ค.
title
๋ฌธ์ ์ ๋ชฉ
subtitle
๋ฌธ์ ๋ถ์
date
๋ฌธ์ ์์ฑ ์์
date-modified
๋ฌธ์ ํธ์ง ์์
author
๋ฌธ์์ ์์ฑ์
abstract
๋ฌธ์ ์์ฝ
abstract-title
๋ฌธ์ ์์ฝ๋ณธ์ ์ ๋ชฉ
doi
DOI(Digital Object Identifier, ๋์งํธ๊ฐ์ฒด์๋ณ์) ํ์
order
๋ฌธ์์ ์ ๋ ฌ ์์
์์ ํ๋ HTML format์์ ์ ๋ชฉ๊ณผ ์์ฑ์์ ๊ด๋ จ๋ ์ต์
์ ์ ๋ฆฌํ ๊ฒ๋๋ค. ์ต์
์ ์๋ ๋๋ฌด๋๋ ๋ง์์ ์ฌ๊ธฐ์๋ค ์ ๋ฆฌํ๊ธด ์ด๋ ค์ธ ๊ฒ ๊ฐ๊ณ ์. Quarto์ ๊ณต์ ํํ์ด์ง๋ฅผ ๋ค์ด๊ฐ ๋ณด๋ฉด HTML option ๋ค์ ํ์ธํ ์ ์์ ๊ฒ๋๋ค. ๊ณต์ ํํ์ด์ง์๋ HTML๋ฟ ์๋๋ผ PDF, MS Word, OpenOffice, ePub, Presentations ๋ฑ ๋ค์ํ ํฌ๋งท๋ค์ option์ ์ ๋ฆฌํด๋๊ณ ์์ต๋๋ค. ์ฃผ์ ํฌ๋งท๋ค์ option๊ณผ guide ๋งํฌ๋ฅผ ์๊ฐํ๋ ๊ฒ์ผ๋ก ์ด๋ฒ ๊ฒ์๋ฌผ์ ๋ง๋ฌด๋ฆฌํ๋๋ก ํ๊ฒ ์ต๋๋ค.