【Quarto】マークダウンでできること!

Quarto

マークダウンでできることは意外と奥が深い。独断と偏見で使う順にまとめます!

公開

2024年8月2日

はじめに

Quarto(別にR Markdownでも同じですが)ではマークダウン記法を使います。

僕もRAブートキャンプでR Markdownと衝撃の出会い()を果たしてから早1年、途中Quartoに浮気しながらマークダウンについて勉強してきました(経済の勉強をしろ)。

そこで、今回はマークダウンについてまとめます。これまでちょこちょこと紹介を挟みながらやってきましたが、今回は論文とかHTMLとか出力にこだわらず、ひたすらマークダウンについてまとめます。

基本はQuarto公式ガイドに沿っていますが、なるべく使う順にまとめます。

大前提として、改行したいときは1行空行を入れます。コード上で改行しても出力には反映されません。

見出し

コード

# Heading 1

## Heading 2

### Heading 3

#の数によって見出しのレベルが決まります。基本は3段くらい使えば事足りると思いますが、それ以降もいけます。

箇条書き

2種類あります。順序なしリストと順序付きリストです。基本的には以下の書き方です。

コード 出力
- 順序なし1
    - スペース4つで2段目
- 順序なし2
    1. 2段目に順序付きを入れることも可
  • 順序なし1
    • スペース4つで2段目
  • 順序なし2
    1. 2段目に順序付きを入れることも可
1. 順序付き1
    1. 同様にスペース4つで2段目
1. 順序付き2
    - 2段目に順序なしを入れることも可
  1. 順序付き1
    1. 同様にスペース4つで2段目
  2. 順序付き2
    • 2段目に順序なしを入れることも可

本文では改行するのに空行が必要でしたが、箇条書きの場合空行は要りません1。順序付きリストの場合、全ての行頭を1.で揃えることで、自動的に番号を振ってくれます。0から始めたければ全て0.で書けば大丈夫です。

間にコード等を挟む場合は空行を入れた方が見やすいかもですね。また、間にコードや図などを挟むと連続番号がリセットされるので、その場合は手動で振る方が簡単かもしれません。

![パソコンを笑顔でいじっている人](computer_man4_laugh.png)

パソコンを笑顔でいじっている人

ご覧の通り、[ ]の中は図のキャプションで、( )の中はファイル名です。ファイル名のところは、必要に応じてパスを追加してください2。例えば、今コードがあるところにimageというフォルダがあって、その中にcomputer_man4_laugh.pngがある場合は、(image/computer_man4_laugh.png)とする必要があります。

数式

基本的には\(\LaTeX\)表記です。$$で数式を挟むことで数式を挿入できます。

$$
Y_{it} = \beta (Treat \times Post)_{it} + \gamma_i + \delta_t + \varepsilon_{it}
$$

\[ Y_{it} = \beta (Treat \times Post)_{it} + \gamma_i + \delta_t + \varepsilon_{it} \]

文中に\(Y = 5X\)のように式を入れたい場合は、ドルマーク1つで$Y = 5X$とすればOKです。

リンク

[Yosuke Abe](https://yo5uke.github.io/)

Yosuke Abe

[ ]でタイトルを囲んで( )内にリンクを記述します。

URLをそのまま表示したいときは次のようにします。

<https://yo5uke.github.io/>

https://yo5uke.github.io/

脚注

これは本文^[これは脚注]

これは本文3

脚注にもいろいろな書き方はあるのですが、これは脚注番号を自動で振ってくれるので、番号を気にせず書けておすすめです。

コード

普通に実行する場合は通常のチャンクで問題ありませんが、実行はせずコードだけ示したいこともあるかと思います。その場合は次の書き方でできます。

``` r
plot(cars)
```

通常のチャンクではrの部分は{r}となっていると思いますが、{ }を外すことで言語を指定しつつコードのみを提示できます。また、

ここがfilename
plot(cars)

このようにfilenameを付けたい場合は、

``` {.r filename="ここがfilename"}
plot(cars)
```

とすることで可能です。{.r}rと同じです。コードのみを表示します。

文中にコードを入れる場合は、`で挟むとできます。`plot(cars)`のように書きます。

改ページ

ページ1

{{< pagebreak >}}

ページ2

または、\(\LaTeX\)を使っている場合は\newpageでもできます。\pagebreakでもできます。二つは微妙に異なるので、違いはググってみてください。

Calloutブロック

これがcalloutブロック

これを入れるためには、以下のように書きます。

::: {.callout-note}
## ここがキャプションです。

`note`の他に、`tip``warning``caution`、そして`important`があります。
:::

{.callout-note}の部分を{.callout-note collapse=true}にすると折りたたみ可能なブロックになります。

参考文献

Zotero等を使ってreferences.bibファイル4を作成し、コードと同じディレクトリに置いてあるとします。

YAMLヘッダーで次のように設定します。

---
title: "Title"
author: "Author"
format: pdf
bibliography: references.bib
---

.bibファイルの中身は次のようになっているので、本文中で@lamport1994latexと書けば本文内で参照できます。

@article{lamport1994latex,
  title={LaTeX: A Document Preparation System},
  author={Lamport, Leslie},
  journal={Addison-Wesley},
  year={1994},
  volume={2}
}

おわりに

ここまで個人的によく使うマークダウン記法についてまとめました。

僕自身もいろいろ書いていく中で使うものが出てくると思うので、適宜追記していきます。

参考

  1. もちろん入れても大丈夫です。↩︎

  2. パスの説明は文面で書くにはやや長くなりそうなので、こちらなどを参考にしてください。↩︎

  3. これは脚注↩︎

  4. ファイル名は何でも大丈夫ですよ。↩︎