티스토리 뷰
1. 개요
요즘은 콘텐츠 시대라고 해도 과언이 아닙니다. 특정 방송 회사가 콘텐츠를 만들기보다 개인이 직접 좋은 콘텐츠를 만들어 유튜브와 같은 플랫폼에서 퍼블리쉬하는 시대로 바뀌었습니다. 리디북스와 같은 eBook 리더기가 보급되고 점점 활성화되면서 eBook 시장에도 개인이 직접 책을 만들 수 있는 여러 도구와 플랫폼이 제공되고 있습니다.
- 애플
- 한글과 컴퓨터
- 의퍼블(WePubl)
- 교보 문고
본 포스트에서는 마크다운 기반의 전자책 집필 시스템인 GitBook에 대해서 알아보죠.
1.1 주요 기능
-
Markdown 언어로 집필 (ex. AsciiDoc, Markdown)
-
GitHub 저장소와 프로젝트를 연동하여 저장 가능
-
GitBook Editor 지원 - 웹, GUI(legacy 버전)
-
여러 전자책 포멧 지원 (ex, PDF, EPUB, MOBI)
-
여러 플러그인 지원 (ex. etoc, splitter)
2. 설치
설치 방법은 맥 OS 기반으로 작성되었습니다.
GitBook을 설치 하기 위해는 Node.js가 기본적으로 설치되어 있어야 합니다. 없는 경우에는 brew로 설치합니다.
$ brew install nodejs
NPM를 통해 gitbook 패키지를 설치합니다.
$ npm install gitbook-cli -g
$ gitbook --version
전자책 포맷과 PDF를 생성하려면 ebook-convert 명령어가 필요합니다.
$ brew cask install calibre
$PATH 환경변수에 /usr/local/bin 폴더가 포함되어 있어야 합니다.
3. 사용방법
3.1 첫 GitBook 프로젝트 만들기
아래 명령어로 책의 boilerplate를 생성합니다. 기본적으로 README.md와 SUMMARY.md가 생성됩니다.
$ gitbook init
[옵션] 기본적인 boilerplate 대신 조금 더 구체적인 예는 아래 github에서 샘플 예제를 다운로드해서 실행해보세요.
$ git clone https://github.com/kenshin579/korean-catholic-bible
$ cd korean-catholic-bible/example/gitbook_markup_sample
로컬환경에서 gitbook 웹 서버를 띄워 브라우저에서 확인 할 수 있습니다.
$ gitbook serve
3.2 eBooks과 PDF 생성하기
EPUB 포멧외에도 PDF, MOBI와같은 다른 전자책 포맷으로도 생성할 수 있습니다.
$ gitbook pdf ./ ./mybook.pdf
$ gitbook epub ./ ./mybook.epub
$ gitbook mobi ./ ./mybook.mobi
4. 플러그인
GitBook의 여러 기능을 확장해주는 플러그인을 제공합니다. 어떤 플러그인은 있는지 찾는 방법과 설치 방법을 알아보죠.
4.1 플러그인 찾는 방법
Gitbook 플러그인 사이트에서 원하는 기능을 가진 플러그인을 검색할 수 있습니다.
4.2 플로그인 설정 및 설치
루트 디렉터리에 있는 book.json 파일에 원하는 플러그인을 추가하고 필요하면 각 플러그인에 대한 설정도 같이해줍니다.
$ vi book.json
{
“plugins”: [“myPlugin”, “anotherPlugin”]
},
{
“pluginsConfig”: {
“myPlugin”: { … }
}
}
설정이후 추가한 플러그인을 설치합니다.
$ gitbook install
4.3 추천 플러그인
대표적으로 많이 사용되고 있는 플러그인 몇개를 소개합니다.
-
etoc : 페이지에서 내용의 Table of Content를 자동으로 만들어주는 기능
-
splitter : 메뉴와 내용 중간 spliter를 움직이도록 해주는 기능
-
expandable-chapters-small : > icon이 추가되어 클릭하면 확장되고 다시 클릭하면 축소되는 기능
-
-
toggle-chapters : 한 chapter를 클릭하면 해당 chapter는 확장되고 나머지는 축소되는 기능
-
5. FAQ
-
루트 디렉터리에 있는 README.md은 GitHub에서도 같이 사용됩니다. GitBook에서 다른 README.md로 설정하려면 어떻게 해야 할까요?
-
book.json에서 새로운 readme 파일을 지정해주면 됩니다.
># vi book.json
"structure": {
"readme": "INTRO.md"
}
6. GitBook Pages Examples
대학에서나 개인 사이트로 GitBook을 많이 사용하고 있습니다. 아래 예제들을 통해서 어떤 다양한 플러그인을 사용하고 GitBook을 어떻게 꾸몄는지 참조하세요.
7. 참조 자료
'python' 카테고리의 다른 글
파이썬 : 커맨트 라인에서 명령어 옵션들 argparse 모듈를 이용해서 쉽게 파싱하기 (0) | 2018.11.04 |
---|---|
웹 스크래핑하면서 차단 방지하는 방법 (0) | 2018.08.13 |
파이썬으로 웹 스크래핑하는 방법 - Web scraping (0) | 2018.08.05 |