ASCIIDOCTOR 사용법

프로젝트 상태

Asciidoctor PDF는 현재 알파 상태이다.

1. ruby 설치

$ sudo apt-get install ruby

2. asciidoctor 설치

$ sudo gem install asciidoctor

3. coderay 설치

$ sudo gem install coderay pygments.rb

4. asciidoctor-pdf 설치

$ sudo gem install --pre asciidoctor-pdf

5. asciidoctor-pdf-cjk-kai_gen_gothic 설치

asciidoctor-pdf 만 이용해서 PDF를 만들면 한글이 제대로 출력되지 않는다. asciidoctor-pdf 에서 사용할 폰트 gem 을 추가로 설치해야 한다.

$ sudo gem install asciidoctor-pdf-cjk-kai_gen_gothic

6. asciidoctor-pdf-cjk-kai_gen_gothic 설치

$ sudo asciidoctor-pdf-cjk-kai_gen_gothic-install
[1/20] Downloading KaiGenGothicCN-Bold-Italic.ttf
[2/20] Downloading KaiGenGothicCN-Bold.ttf
[3/20] Downloading KaiGenGothicCN-Regular-Italic.ttf
[4/20] Downloading KaiGenGothicCN-Regular.ttf
[5/20] Downloading KaiGenGothicJP-Bold-Italic.ttf
[6/20] Downloading KaiGenGothicJP-Bold.ttf
[7/20] Downloading KaiGenGothicJP-Regular-Italic.ttf
[8/20] Downloading KaiGenGothicJP-Regular.ttf
[9/20] Downloading KaiGenGothicKR-Bold-Italic.ttf
[10/20] Downloading KaiGenGothicKR-Bold.ttf
[11/20] Downloading KaiGenGothicKR-Regular-Italic.ttf
[12/20] Downloading KaiGenGothicKR-Regular.ttf
[13/20] Downloading KaiGenGothicTW-Bold-Italic.ttf
[14/20] Downloading KaiGenGothicTW-Bold.ttf
[15/20] Downloading KaiGenGothicTW-Regular-Italic.ttf
[16/20] Downloading KaiGenGothicTW-Regular.ttf
[17/20] Downloading RobotoMono-Bold.ttf
[18/20] Downloading RobotoMono-BoldItalic.ttf
[19/20] Downloading RobotoMono-Italic.ttf
[20/20] Downloading RobotoMono-Regular.ttf

7. pdf 만들기

asciidoctor-pdf -r asciidoctor-pdf-cjk-kai_gen_gothic -a pdf-style=KaiGenGothicKR example.adoc

참고


텍스트 기반으로 작성된 문서를 asciidoc 이라고 하는 도구를 이용하여 다양한 형태의 문서로 변환할 수 있는 도구가 있다.

간단간단하게 작성해서 볼 요량이면 마크다운으로도 충분하지만,

스프링부트 레퍼런스문서를 아무런 생각없이 마크다운으로 번역하다보니 스프링부트 레퍼런스문서와 차이가 너무 컸다.

초반에 틀도 제대로 잡지 않고 주먹구구식으로 시작하다보니 아쉬움이 많다. 목차와 섹션 연결도 제대로 안되고...

그래서 다음 스프링부트 1.3.0. 번역은 asciidoc  을 기반으로 하여 각 파트를 나눠서 진행하려고 한다.

스프링에서는 진즉에 asciidoc을 이용해서 레퍼런스문서를 생성해주고 있다.

https://github.com/spring-projects/spring-boot/tree/master/spring-boot-docs

보면서 진즉에 이렇게 했어야 했어! 라는 생각을 하게 된다.


ATOM 에서 asciidoc 형식 문서작성을 도와주지 않을까하고 찾아보니 아니나 다를까 asciidoc-preview라고 하는 패키지가 존재했다. 이 패키지를 이용해서 작성하려고보니 한글...이 안나온다.

정확하게는 사용하는 폰트가 영문폰트니 한글이 지원안된다.

그래서 한글을 나오도록 만들만드는 작업을 했다.

PREFERENCE - PACKAGE - asciidoc-preview - View Code

ATOM  홈디렉토리에 bundle 에 'nanum' 이라는 디렉토리를 생성하고 그 안에 파일들을 복사해 넣었다.

USER_HOME/.atom/packages/asciidoc-preview/bundle/nanum

asciidoc-preview.less 를 열고 아래 폰트항목을 추가했다.

// Nanum 
@font-face {
  font-family: "NanumBarunGothic";
  font-weight: normal;
  font-style: normal;
  src: url("@{nanum-font-path}/NanumBarunGothic.ttf");
}
@font-face {
  font-family: "NanumBarunGothic";
  font-weight: normal;
  font-style: bold;
  src: url("@{nanum-font-path}/NanumBarunGothicBold.ttf");
}
@font-face {
  font-family: "D2Coding";
  font-weight: normal;
  font-style: normal;
  src: url("@{nanum-font-path}/D2Coding.ttc");
}

그리고는 아래 폰트적용 코드들에다가 죄다 위에서 생성한 폰트를 넣어줬다.

pre, code, samp 항목들을 찾아서...

code,
kbd,
pre,
samp {
  font-family: D2Coding, monospace;
  font-size: 1em;
}

그리고나서 리로드Reload 를 수행하면 다음처럼 쫘안~

이제 asciidoc 의 문법을 익혀서 잘 사용하면 되겠다.

아참... 내가 마크다운을 사용하지 않게 된 것이...

ㅡ_-) atom 의 마크다운 프리뷰에서 소스코드 복사가 본문과 함께 되지 않아서다.


'Tools' 카테고리의 다른 글

[log] 싱크패드 울트라나브(블루투스)  (3) 2018.10.25
ZSH - The Z Shell  (0) 2016.05.14

+ Recent posts