본문으로 바로가기



티스토리 블로그를 위한 Rmarkdown 세팅

category R4Tistory패키지 2017.05.29 10:42
티스토리 블로그를 위한 Rmarkdown 세팅

기본 html 파일 얻기

필자의 경우 R로 거의 모든 것을 하려는 안좋은 경향(이러한 방식은 정신건강에 좋지 않다는 사실을 최근에 깨닫게 되었다.)이 있다. 그래서 티스토리 블로그의 글 들 역시 대부분 Rmarkdown을 사용해서 작성하는 편이다.

티스토리 블로그의 경우, 블로그에 이미 적용이 되어있는 스타일 파일들이 있다. 따라서 Rmarkdown으로 작성한 글들을 knitr을 사용해서 html 파일을 얻을 경우에 knitr의 기본 테마와 티스토리 블로그의 테마가 서로 충돌해서 블로그와 글이 따로 놀고있는 현상이 발생할 수 있다. (이런 글들이 아주 좋은 예이다..)

따라서 티스토리 블로그에 포스팅을 할 경우에는 다음과 같은 knitr 세팅을 해주면 상당히 가벼워진 plain html 파일을 얻을 수 있다.

title: "제목"
output:
  html_document:
    self_contained: TRUE
    keep_md: FALSE
    theme: null
    highlight: null

옵션에 대한 간단한 설명

self_contained 옵션을 켜면 Rmarkdown 문서 안에 들어있는 사진이 html안에 다 같이 붙어서 나온다. 따라서 html 결과물을 브라우져에서 불러온 후 소스코드 보기를 사용하여 전체를 복사에서 티스토리 글쓰기의 html 항목 체크 후 붙여넣으면 된다. 하지만 글이 길어지고, 사진이 많아지면 많아 질수록 이 옵션을 켜서 얻게되는 결과물이 엄청 복잡해지게 된다. 왜냐하면 이 옵션에서는 글 속의 사진 역시 html로 표현이 되기 때문에(이 경우 사진부분이 엄청나게 긴 외계어로 채워지게 된다.), 자신의 쓸 글의 구조 파악이 불가능하게 된다. 따라서 궁극적으로는 이 옵션 역시도 FALSE로 바꿔서 사용하게 될 것이다.

keep_md 옵션의 경우는 사실 티스토리 블로그와는 직접 관련이 없지만, 이 옵션을 사용하여 md파일을 얻을 수 있다. 깃허브 같은 사이트들 중에는 md파일의 자동 스타일링을 지원하는 곳이 있기 때문. 하지만 깃허브를 위한 포스팅시에는 output option를 github_document로 설정하는 것이 더 좋다. 자세한 Rmarkdown과 github_document 궁합은 다음 Rstudio의 github_document 설명서를 참고하자.

theme 옵션을 꺼두는 것이 제일 중요하다. 이 포스팅를 한마디로 요약하면, “블로그 포스팅 시 theme 옵션을 null로 설정하시면 됩니다.”이기 때문이다. 만약 티스토리 설정을 이용하여 코드 highlight 기능을 이용하지 않고 있다면 highlight 옵션은 textmate를 사용하는 것을 추천한다.

Tip: 티스토리 블로그의 글쓰기 기능에서 html 박스을 누르면 html 형식으로 글을 쓸 수 있게 된다. 그리고 다시 html 박스 표시를 해제하면 원래 블로그의 형식으로 변환이 된다. 이 때 작성한 글이 문단 간격이 다 없어져서 변환이 되는데 이 경우 문단간격없음 박스 표시를 해제하면 원래 Rmarkdown으로 작성했던 문단 간격으로 변환이 된다.

티스토리 블로그에 코드 highlighter를 설정하는 방법에 대해서는 다음 포스팅에서 자세하게 다루도록 하겠다.

(special thanks to Chan Yub Park for giving me a comment on the github_document option in knitr.)

SHARE TO