AsciiDoc

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

GitLab은 AsciiDoc 콘텐츠를 HTML5로 변환하기 위해 Asciidoctor gem을 사용합니다. Asciidoctor 참조를 위해 Asciidoctor 사용자 매뉴얼을 참조하십시오.

아래 영역에서 AsciiDoc를 사용할 수 있습니다:

  • 위키 페이지
  • 저장소 내의 AsciiDoc 문서(.adoc 또는 .asciidoc)

구문

아래는 가장 일반적으로 사용되는 AsciiDoc 구문에 대한 간단한 참조입니다. AsciiDoc 구문의 전체 문서는 https://asciidoctor.org/docs/에서 찾을 수 있습니다.

문단

일반 문단.
줄 바꿈은 보존되지 않습니다.

//로 시작하는 주석을 가지는 줄, 즉 줄 주석은 건너뜁니다:

// 이것은 주석입니다

빈 줄을 통해 문단이 분리됩니다.

[%hardbreaks] 옵션이 있는 문단은 줄 바꿈을 보존합니다:

[%hardbreaks]
이 문단은 `hardbreaks` 옵션을 가집니다.
이제 줄 바꿈이 보존된 것을 확인하세요.

들여쓴(리터럴) 문단은 텍스트 서식을 비활성화하며 고정폭 글꼴로 표시되며, 공백과 줄 바꿈을 보존합니다:

한 칸 들여쓴 리터럴 문단입니다.
결과적으로 *텍스트 서식*, 공백, 줄 바꿈이 보존됩니다.

안내 문단은 독자의 주의를 끕니다:

  • NOTE: 이것은 간단한 참조입니다. 전체 문서를 https://asciidoctor.org/docs/에서 읽어보세요.
  • TIP: 목록은 들여쓰기할 수 있습니다. 선행하는 공백은 중요하지 않습니다.

텍스트 서식

제약된(단어 경계에서 적용)

*강조* (굵게 표시됨)
_강조_ (기울임꼴로 표시됨)
`고정폭` (타자 텍스트로 표시됨)
"`이중`" 및 '`단일`' 인쇄용 따옴표
+통과 텍스트+ (대체 사용 중지)
`+리터럴 텍스트+` (대체 사용 중지 및 고정폭)

제한되지 않은(어디서나 적용)

**C**reate+**R**ead+**U**pdate+**D**elete
fan__freakin__tastic
``mono``culture

대체 항목

A long time ago in a galaxy far, far away...
(C) 1976 Arty Artisan
I believe I shall--no, actually I won't.

매크로

// 여기서 c=특수문자, q=인용문, a=속성, r=대체, m=매크로, p=후처리 대체 를 나타냅니다
유럽 아이콘:flag[role=blue]는 파랗고 아이콘:circle-o[role=yellow]에 배열된 pass:[************]을 포함합니다.
pas:c[->] 연산자는 종종 stabby 람다로 지칭됩니다.
AsciiDoc에서 `pass:[++]`가 강한 우선 순위를 가지기 때문에 pass:c,a,r[C++ => C{pp}]로 다시 쓸 수 있습니다.
// 문서 헤더에 `:stem:`을 추가하여 stem 지원을 활성화하세요
stem:[sqrt(4) = 2]

속성

사용자 정의 속성

// 문서 헤더에 속성을 정의합니다.
:name: value
:url-gem: https://rubygems.org/gems/asciidoctor

You can download and install Asciidoctor {asciidoctor-version} from {url-gem}.
C{pp} is not required, only Ruby.
Use a leading backslash to output a word enclosed in curly braces, like \{name}.

환경 속성

GitLab은 다음 환경 속성을 설정합니다:

순서 설명
docname 원본 문서의 루트 이름 (선행 경로 또는 파일 확장자 없음)
outfilesuffix 백엔드 출력에 해당하는 파일 확장자 (문서 간 교차 참조를 위해 기본적으로 .adoc)

링크

https://example.org/page[웹페이지]
link:../path/to/file.txt[로컬 파일]
xref:document.adoc[동료 문서]
mailto:hello@example.org[안부 이메일]

Anchor

[[idname,참조 텍스트]]
// 또는 일반 블록 속성으로 `[#idname,reftext=참조 텍스트]`로 작성
앵커(즉, ID) 및 reftext가 있는 문단(또는 다른 블록)

<<idname>> 또는 <<idname,내부 링크의 선택적 텍스트>>를 확인하세요.

xref:document.adoc#idname[다른 문서의 앵커로 이동합니다].

이 문단에는 각주가 있습니다.footnote:[이것은 각주의 텍스트입니다.]

목록

정렬되지 않음

* 레벨 1
** 레벨 2
*** 레벨 3
**** 레벨 4
***** 레벨 5
* 레벨 1로 돌아가기
+
열린 블록으로 묶을 수 있는 리스트 항목에 블록이나 문단을 첨부하세요.

.Some Authors
[circle]
- Edgar Allen Poe
- Sheri S. Tepper
- Bill Bryson

정렬된

. 단계 1
. 단계 2
.. 단계 2a
.. 단계 2b
. 단계 3

로마 숫자를 기억하세요?
[upperroman]
. 하나
. 둘
. 셋

체크리스트

* [x] 체크됨
* [ ] 체크 안 됨

콜아웃

// 문서 헤더에 `:icons: font`를 추가하여 콜아웃 말풍선을 활성화하세요
[,ruby]
----
puts 'Hello, World!' # <1>
----
<1> 콘솔에 `Hello, World!`를 출력합니다.

설명

첫 번째 용어:: 첫 번째 용어의 설명
두 번째 용어::
두 번째 용어의 설명

문서 구조

헤더

= 문서 제목
작성자 이름 <author@example.org>
v1.0, 2019-01-01

섹션

= 문서 제목 (레벨 0)
== 레벨 1
=== 레벨 2
==== 레벨 3
===== 레벨 4
====== 레벨 5
== 레벨 1로 돌아가기

포함

참고: AsciiDoc 형식으로 위키 페이지를 생성하면 파일 확장명이 .asciidoc으로 저장됩니다. AsciiDoc 위키 페이지를 작업할 때 .adoc에서 .asciidoc로 파일 이름을 변경하세요.

include::basics.adoc[]

좋은 시스템 성능을 보장하고 악의적인 문서로 인한 문제를 방지하기 위해 GitLab은 문서당 처리되는 포함 지시어의 최대 제한을 강제합니다. 기본적으로 한 문서당 최대 32개의 포함 지시어를 가질 수 있으며 이는 추이적 의존성을 포함합니다. 처리되는 포함 지시어의 수를 사용자 정의하려면 application settings API에서 asciidoc_max_includes 애플리케이션 설정을 변경하세요.

참고: asciidoc_max_includes의 현재 최대 허용 값은 64입니다. 값이 너무 높으면 특정 상황에서 성능 문제가 발생할 수 있습니다.

별도 페이지 또는 외부 URL에서 포함을 사용하려면 allow-uri-readapplication settings에서 활성화하세요.

// URI에서 콘텐츠를 읽을 수 있도록 하기 위해 애플리케이션 설정 `allow-uri-read`를 true로 정의하세요
include::https://example.org/installation.adoc[]

블록

--
open - 일반 목적의 내용 래퍼; 목록 항목에 첨부할 내용을 둘러싸는 데 유용함
--
// CAUTION, IMPORTANT, NOTE, TIP, WARNING 등이 있는 인식된 유형
// 문서 헤더에 `:icons: font`를 설정하여 경고 아이콘 활성화
[주의]
====
admonition - 팁에서 경고까지 심각도가 다양한 독자를 위한 공지
====
====
example - 문서화되는 개념의 데모
====
.Toggle Me
[%collapsible]
====
collapsible - 제목을 클릭하여 이 세부 정보가 나타나는 항목
====
****
sidebar - 본문과 독립적으로 읽을 수 있는 보조 콘텐츠
****
....
literal - 프로그램 출력이 특징인 전시물
....
----
listing - 프로그램 입력, 소스 코드 또는 파일 내용이 특징인 전시물
----
[,language]
----
source - (색상이 강조된) 구문 강조가 있는 목록
----
\```language
fenced code - 소스 블록을 위한 간소화된 구문
\```
[,attribution,citetitle]
____
quote - 인용문 또는 발췌문; 소스의 제목과 함께 하는 인용은 선택 사항
____
[verse,attribution,citetitle]
____
verse - 경우에 따라 시가와 같은 문학적 발췌; 소스의 제목과 함께 하는 인용은 선택 사항
____
++++
pass - 출력 문서로 직접 전달되는 콘텐츠; 종종 원시 HTML
++++
// 문서 헤더에 `:stem:`을 추가하여 stem 지원 활성화
[stem]
++++
x = y^2
++++
////
comment - 출력 문서에 포함되지 않는 콘텐츠
////

테이블

.Table Attributes
[cols=>1h;2d,width=50%,frame=topbot]
|===
| 속성 이름 | 값

| options
| header,footer,autowidth

| cols
| colspec[;colspec;...]

| grid
| all \| cols \| rows \| none

| frame
| all \| sides \| topbot \| none

| stripes
| all \| even \| odd \| none

| width
| (0%..100%)

| format
| psv {vbar} csv {vbar} dsv
|===

색상

색상은 HEX, RGB, 또는 HSL 형식으로 작성되어 색상 표시기로 렌더링될 수 있습니다. 지원되는 형식(네임드 색상은 지원되지 않음):

  • HEX: `#RGB[A]` 또는 `#RRGGBB[AA]`
  • RGB: `RGB[A](R, G, B[, A])`
  • HSL: `HSL[A](H, S, L[, A])`

역따옴표에 작성된 색상 뒤에는 색상 “칩”이 따릅니다:

- `#F00`
- `#F00A`
- `#FF0000`
- `#FF0000AA`
- `RGB(0,255,0)`
- `RGB(0%,100%,0%)`
- `RGBA(0,255,0,0.3)`
- `HSL(540,70%,50%)`
- `HSLA(540,70%,50%,0.3)`

방정식 및 수식 (STEM)

과학, 기술, 공학, 수학 (STEM) 식을 포함해야 하는 경우, 문서 헤더의 stem 속성을 latexmath로 설정합니다. 방정식과 수식은 KaTeX를 사용하여 렌더링됩니다:

:stem: latexmath

latexmath:[C = \alpha + \beta Y^{\gamma} + \epsilon]

[stem]
++++
sqrt(4) = 2
++++

행렬은 stem:[[[a,b\],[c,d\]\]((n),(k))]으로 작성할 수 있습니다.

다이어그램 및 플로차트

GitLab에서는 텍스트로부터 다이어그램과 플로차트를 생성할 수 있습니다. 이를 위해 MermaidPlantUML을 사용합니다.

Mermaid

자세한 내용은 공식 페이지를 참조하세요. Mermaid 사용에 익숙하지 않거나 Mermaid 코드의 문제를 해결해야 하는 경우, Mermaid 라이브 에디터는 유용한 도구입니다.

다이어그램 또는 플로차트를 생성하려면 mermaid 블록에 텍스트를 입력하세요:

[mermaid]
----
graph LR
    A[Square Rect] -- Link text --> B((Circle))
    A --> C(Round Rect)
    B --> D{Rhombus}
    C --> D
----

Kroki

Kroki는 12개 이상의 다이어그램 라이브러리를 지원합니다. GitLab에서 Kroki를 사용하려면 GitLab 관리자가 먼저 활성화해야 합니다. 자세한 내용은 Kroki 통합 페이지를 읽어보세요.

Kroki가 활성화된 후에는 AsciiDoc 및 Markdown 문서에서 다이어그램을 생성할 수 있습니다. 다음은 GraphViz 다이어그램을 사용하는 예제입니다:

AsciiDoc

[graphviz]
....
digraph G {
  Hello->World
}
....

Markdown

```graphviz
digraph G {
  Hello->World
}
```

PlantUML

PlantUML 통합은 GitLab.com에서 활성화되어 있습니다. Self-Managed 설치의 GitLab에서 PlantUML을 사용하려면, GitLab 관리자가 PlantUML을 활성화해야 합니다.

PlantUML이 활성화된 후에는 plantuml 블록에 텍스트를 입력하세요:

[plantuml]
----
Bob -> Alice : hello
----

멀티미디어

image::screenshot.png[block image,800,450]

페이지 새로 고침에 image:reload.svg[reload,16,opts=interactive]를 누르세요.

video::movie.mp4[width=640,start=60,end=140,options=autoplay]

GitLab은 AsciiDoc 콘텐츠에 YouTube 및 Vimeo 비디오를 임베딩하는 것을 지원하지 않습니다. 표준 AsciiDoc 링크를 사용하세요:

https://www.youtube.com/watch?v=BlaZ65-b7y0[비디오에 대한 링크 텍스트]

줄 바꿈

// 테마별 구분선 (수평 규칙)
---
// 페이지 구분자
<<<