쓰리래빗츠 블로그

쓰리래빗츠 C2P

소스 코드를 PDF로 만드는 도구

(주)쓰리래빗츠2014-11-06

소스 코드 읽기

쓰리래빗츠 북이 최소한의 기능을 갖추었을 때 처음 한 일이 버스나 지하철로 이동하면서 읽을 언론 기사나 블로그 글을 PDF로 만드는 것이었습니다. 그리고 소스 코드도 PDF로 만들었습니다. 스스로 짠 코드를 검토하는 데 도움이 되었습니다.

좋을 글을 쓰려면 글을 많이 읽어야 하듯 프로그래밍을 실력을 키우려면 다양한 코드를 많이 접해야 합니다. 스스로 쓴 글을 여러 번 읽어 교정하듯 스스로 짠 코드를 읽는 것도 중요한 일입니다.

이를 돕기 위해서 내 컴퓨터에 있는 소스 코드 파일로 PDF를 만드는 도구 쓰리래빗츠 C2P를 공개합니다. 다음은 쓰리래빗츠 C2P로 만든 PDF 파일입니다.

줄 바꿈을 최소화하기 위해서 여백을 줄였습니다.

쓰리래빗츠 C2P 설치

쓰리래빗츠 C2P 설치 파일을 내려받은 후 압축을 해제합니다.

쓰리래빗츠 C2P는 자바로 개발한 소프트웨어로 이를 실행하려면 운영체제에 오라클 자바 6.0 이상을 설치해야 합니다.

쓰리래빗츠 C2P 실행

윈도우에서

명령 프롬프트에서 3RABBITZ_C2P_HOME/bin 폴더로 이동합니다.

3RABBITZ_C2P_HOME은 쓰리래빗츠 C2P를 설치한 폴더를 지칭합니다.

다음 명령어를 실행합니다.

c2p.bat 소스디렉터리

현재 위치에 code.pdf 파일이 만들어집니다. PDF 파일 이름을 바꾸려면 다음과 같이 실행합니다.

c2p.bat 소스디렉터리 PDF파일이름

리눅스에서

콘솔에서 3RABBITZ_C2P_HOME/bin 디렉터리로 이동합니다.

3RABBITZ_C2P_HOME은 쓰리래빗츠 C2P를 설치한 디렉터리를 지칭합니다.

다음 명령어를 실행합니다.

./c2p.sh 소스디렉터리

현재 위치에 code.pdf 파일이 만들어집니다. PDF 파일 이름을 바꾸려면 다음과 같이 실행합니다.

./c2p.sh 소스디렉터리 PDF파일이름

쓰리래빗츠 C2P 설정

지원하는 프로그램 언어

소스 코드 파일 확장자를 기준으로 다음 언어를 지원합니다.

확장자

언어

하일라이트1

aspx

ASPX


asp

ASP


bat

스크립트


c

C

cc, ccp

C++

cs

C#

css

CSS

csv



dtd



go

Go

h



hh



htm, html, xhtml

HTML


java

자바

js

자바스크립트

json

JSON


jsp

JSP


php

PHP


pl

Perl


py

Python

rb

Ruby

sh

스크립트


sql

SQL


txt

텍스트


xml

XML

언어를 추가하려면 3RABBITZ_C2P_HOME/conf/option.properties 파일을 열어 extensions 옵션에 확장자를 추가합니다.

extensions aspx,asp,bat,c,cc,cpp,cs,css,...

주석 제거

PDF를 만들 때 여러 줄에 걸친 주석2을 빼려면 3RABBITZ_C2P_HOME/conf/option.properties 파일을 열어 ignore_multi_line_comments 옵션을 수정합니다.

ignore_multi_line_comments true

소스 코드 파일 인코딩

소스 코드 파일을 읽을 때 사용하는 기본 인코딩은 UTF-8입니다. 다른 인코딩을 사용한다면 3RABBITZ_C2P_HOME/conf/option.properties파일을 열어 file_encoding 옵션을 추가합니다.

file_encoding EUC-KR

PDF 설정

  • 글꼴로 네이버 나눔고딕코딩 글꼴을 사용합니다.

  • 줄 바꿈을 최소화하기 위해서 여백을 줄였습니다. 여백 및 PDF 크기는 3RABBITZ_C2P_HOME/conf/page_layout.xml 파일에서 수정할 수 있습니다.

  • 글꼴 크기와 색상은 3RABBITZ_C2P_HOME/conf/pdf_theme.xml 파일에서 수정할 수 있습니다.

PDF 파일 디렉터리 설정

PDF 파일이 만들어지는 위치를 바꿀 수 있습니다. 3RABBITZ_C2P_HOME/conf/option.properties 파일을 열어 pdf_dir 옵션을 추가합니다.

pdf_dir 디렉토리위치

  1. 일부 언어에 대해서만 하일라이트를 지원합니다.To Content
  2. 예를 들어 자바에서 /**/ 사이에 들어가는 주석To Content