xref: /aosp_15_r20/external/skia/site/docs/dev/tools/markdown.md (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
1*c8dee2aaSAndroid Build Coastguard Worker---
2*c8dee2aaSAndroid Build Coastguard Workertitle: 'Markdown'
3*c8dee2aaSAndroid Build Coastguard WorkerlinkTitle: 'Markdown'
4*c8dee2aaSAndroid Build Coastguard Worker---
5*c8dee2aaSAndroid Build Coastguard Worker
6*c8dee2aaSAndroid Build Coastguard WorkerThis site is build with [Hugo](https://gohugo.io/) and
7*c8dee2aaSAndroid Build Coastguard Worker[Docsy](https://www.docsy.dev/).
8*c8dee2aaSAndroid Build Coastguard Worker
9*c8dee2aaSAndroid Build Coastguard WorkerAny file you put under `/site/` that has the extension `.md` will be processed
10*c8dee2aaSAndroid Build Coastguard Workeras Markdown. All other files will be served directly. For example, images can be
11*c8dee2aaSAndroid Build Coastguard Workeradded and they will be served correctly and referenced from within Markdown
12*c8dee2aaSAndroid Build Coastguard Workerfiles.
13*c8dee2aaSAndroid Build Coastguard Worker
14*c8dee2aaSAndroid Build Coastguard WorkerWhen preparing for a code review of site docs you can get a preview of how the
15*c8dee2aaSAndroid Build Coastguard Workerpage will render by visiting the [Gerrit issue](https://skia-review.googlesource.com/c/skia/+/862957/####)
16*c8dee2aaSAndroid Build Coastguard Workerand clicking the eye icon to the left of the file:
17*c8dee2aaSAndroid Build Coastguard Worker
18*c8dee2aaSAndroid Build Coastguard Worker<img src="../eye_icon.png" style="display: inline-block;" />
19*c8dee2aaSAndroid Build Coastguard Worker
20*c8dee2aaSAndroid Build Coastguard WorkerSee the [Docsy documentation](https://www.docsy.dev/docs/) for more details on
21*c8dee2aaSAndroid Build Coastguard Workerhow to configure and use docsy. For example the
22*c8dee2aaSAndroid Build Coastguard Worker[Navigation](https://www.docsy.dev/docs/adding-content/navigation/) section
23*c8dee2aaSAndroid Build Coastguard Workerexplains what frontmatter needs to be added to a page to get it to appear in the
24*c8dee2aaSAndroid Build Coastguard Workertop navigation bar.
25*c8dee2aaSAndroid Build Coastguard Worker
26*c8dee2aaSAndroid Build Coastguard Worker## Frontmatter
27*c8dee2aaSAndroid Build Coastguard Worker
28*c8dee2aaSAndroid Build Coastguard WorkerEach page needs a frontmatter section that provides information on that page.
29*c8dee2aaSAndroid Build Coastguard WorkerFor example:
30*c8dee2aaSAndroid Build Coastguard Worker
31*c8dee2aaSAndroid Build Coastguard Worker```
32*c8dee2aaSAndroid Build Coastguard Worker---
33*c8dee2aaSAndroid Build Coastguard Workertitle: 'Markdown'
34*c8dee2aaSAndroid Build Coastguard WorkerlinkTitle: 'Markdown'
35*c8dee2aaSAndroid Build Coastguard Worker---
36*c8dee2aaSAndroid Build Coastguard Worker```
37*c8dee2aaSAndroid Build Coastguard Worker
38*c8dee2aaSAndroid Build Coastguard WorkerThis is true for both Markdown and HTML pages. See
39*c8dee2aaSAndroid Build Coastguard Worker[the Docsy documentation on frontmatter](https://www.docsy.dev/docs/adding-content/content/#page-frontmatter)
40*c8dee2aaSAndroid Build Coastguard Workerfor more details.
41*c8dee2aaSAndroid Build Coastguard Worker
42*c8dee2aaSAndroid Build Coastguard Worker## Styling And Icons
43*c8dee2aaSAndroid Build Coastguard Worker
44*c8dee2aaSAndroid Build Coastguard WorkerDocsy supports both
45*c8dee2aaSAndroid Build Coastguard Worker[Bootstrap](https://getbootstrap.com/docs/5.0/getting-started/introduction/) and
46*c8dee2aaSAndroid Build Coastguard Worker[Font-Awesome](https://fontawesome.com/). Check out their documentation for what
47*c8dee2aaSAndroid Build Coastguard Workerthey offer.
48*c8dee2aaSAndroid Build Coastguard Worker
49*c8dee2aaSAndroid Build Coastguard WorkerBootstrap contains many classes that allow you to avoid setting styles via CSS.
50*c8dee2aaSAndroid Build Coastguard WorkerFor example, just using classes, we can change the font, the padding, and the
51*c8dee2aaSAndroid Build Coastguard Workercolor:
52*c8dee2aaSAndroid Build Coastguard Worker
53*c8dee2aaSAndroid Build Coastguard Worker```html
54*c8dee2aaSAndroid Build Coastguard Worker<p class="font-monospace p-2 text-danger">This is in monospace</p>
55*c8dee2aaSAndroid Build Coastguard Worker```
56*c8dee2aaSAndroid Build Coastguard Worker
57*c8dee2aaSAndroid Build Coastguard WorkerWhich renders as:
58*c8dee2aaSAndroid Build Coastguard Worker
59*c8dee2aaSAndroid Build Coastguard Worker<p class="font-monospace p-2 text-danger">This is in monospace</p>
60*c8dee2aaSAndroid Build Coastguard Worker
61*c8dee2aaSAndroid Build Coastguard Worker## Diagrams
62*c8dee2aaSAndroid Build Coastguard Worker
63*c8dee2aaSAndroid Build Coastguard Worker[Mermaid](https://mermaid-js.github.io/mermaid/#/) diagrams are enabled, so
64*c8dee2aaSAndroid Build Coastguard Workerthis:
65*c8dee2aaSAndroid Build Coastguard Worker
66*c8dee2aaSAndroid Build Coastguard Worker````markdown
67*c8dee2aaSAndroid Build Coastguard Worker```mermaid
68*c8dee2aaSAndroid Build Coastguard Workergraph TD;
69*c8dee2aaSAndroid Build Coastguard Worker    A-->B;
70*c8dee2aaSAndroid Build Coastguard Worker    A-->C;
71*c8dee2aaSAndroid Build Coastguard Worker    B-->D;
72*c8dee2aaSAndroid Build Coastguard Worker    C-->D;
73*c8dee2aaSAndroid Build Coastguard Worker```
74*c8dee2aaSAndroid Build Coastguard Worker````
75*c8dee2aaSAndroid Build Coastguard Worker
76*c8dee2aaSAndroid Build Coastguard WorkerGets rendered as:
77*c8dee2aaSAndroid Build Coastguard Worker
78*c8dee2aaSAndroid Build Coastguard Worker```mermaid
79*c8dee2aaSAndroid Build Coastguard Workergraph TD;
80*c8dee2aaSAndroid Build Coastguard Worker    A-->B;
81*c8dee2aaSAndroid Build Coastguard Worker    A-->C;
82*c8dee2aaSAndroid Build Coastguard Worker    B-->D;
83*c8dee2aaSAndroid Build Coastguard Worker    C-->D;
84*c8dee2aaSAndroid Build Coastguard Worker```
85*c8dee2aaSAndroid Build Coastguard Worker
86*c8dee2aaSAndroid Build Coastguard Worker## Code Snippets
87*c8dee2aaSAndroid Build Coastguard Worker
88*c8dee2aaSAndroid Build Coastguard WorkerTo get syntax highlighting in code snippets you need to specify the language,
89*c8dee2aaSAndroid Build Coastguard Workerwhich is specified after the first code fence, for example this is how you would
90*c8dee2aaSAndroid Build Coastguard Workershow HTML markup:
91*c8dee2aaSAndroid Build Coastguard Worker
92*c8dee2aaSAndroid Build Coastguard Worker````
93*c8dee2aaSAndroid Build Coastguard Worker```html
94*c8dee2aaSAndroid Build Coastguard Worker<p class="font-monospace p-2 text-danger">This is in monospace</p>
95*c8dee2aaSAndroid Build Coastguard Worker```
96*c8dee2aaSAndroid Build Coastguard Worker````
97*c8dee2aaSAndroid Build Coastguard Worker
98*c8dee2aaSAndroid Build Coastguard Worker## Configuration
99*c8dee2aaSAndroid Build Coastguard Worker
100*c8dee2aaSAndroid Build Coastguard WorkerThe Hugo configuration file is `config.toml` located in the site directory.
101