구글 블로거에 highlight.js 적용하기

구글 블로거에 highlight.js 적용하기

1. 코드 가독성을 높여주는 highlight.js

어제 블로그에 카카오링크를 적용하는 작업을 했는데, 공유하려고 했습니다. 근데 그전에 구글블로거에서 코드형식용 서식을 기본으로 제공하고 있을리 없으므로, 공유하기 전에 하이라이트 기능을 만들어 줘야 하겠다는 생각에 찾아봤습니다. 그 결과 highlight.js를 적용하는데 있어서 크게 2가지가 있는듯하여 정리해 봅니다.

2. highlightjs.org 방법 

첫째, highlight.js이라는 사이트에 있는 방법입니다. 이 페이지에 가면 메인화면에서 데모를 돌려서 아웃풋을 미리 확인해 볼 수 있습니다. language, style를 클릭하면 화면이 바뀌면서 데모를 보여줍니다. 마음에 드는 스타일이 정해지면, "Get Version"을 클릭하면 소스화면으로 넘어가는데, 그것을 블로그 테마에 적용시켜 주면 됩니다. 근데 적용할때 소스수정이 필요합니다.  데모화면에서 나온 style명을 href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.2/styles/default.min.css" 부분의 default에 덮어쓰기 해줘야 합니다. 

이 방법의 장점은, 언어의 구성요소에 따라서 컬러풀하게 나와서 코드자체의 가독력이 매우 좋다는 점 입니다. 단점은 줄인식이 조금 불편하다는점.

적용은 html 의 head부분에 하기 코드를 삽입하면 됩니다.

<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.2/styles/default.min.css"></link>
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.7.2/highlight.min.js"></script>
<script>hljs.highlightAll();</script>

3. 깃허브 highlightjs 방법

관련 안내중에 깃허브에 나온 내용은 약간 다릅니다. highlightjs Github에 들어가면 약간 코드도 다른데, 딱히 소스내용을 수정하거나 할 필요는 없습니다. 좋은 점은 줄무늬가 바탕이라 줄간격 을 인식 하기 쉽다는 점입니다. 줄번호가 있으면 가장 좋겠지만, 차선책으로 줄무늬가 있으면 좋겠다고 바라게 되는데 이 방법으로 적용할 수 있습니다. 단점은 코드색깔이 단색이라는 점입니다.

적용방법은 html 의 head부분에 하기 코드를 삽입하는 것입니다.

<link rel="stylesheet" href="/path/to/styles/default.css"></link>
<script src="/path/to/highlight.min.js"></script>
<script>hljs.highlightAll();</script>

결론. 글쓸때는

가로 스크롤바가 깃허브 방법에서는 안나오더라구요...어째서일까요...모니터가 충분히 크지 않으면 코드가 잘려보이는데, 전체 코드 확인이 안되면 이런 툴도 의미가 없어집니다. 사실은 컬러풀한 것 포기하고 줄무늬를 선택하고 싶었지만, 가로 스크롤바가 없다는 점은 치명적이기때문에 결국 전자의 방법을 선택했습니다.

글 쓸때는

1) 해당 코드를 html에디터에서 <pre><code>....</code></pre> 형태로 작성해야합니다.

2) 코드안에 쓰인 특수부호는 Escape 해줘야 합니다. 따옴표, 격자 등등을 코드로 바꾸어 주어야 태그가 씹히지 않습니다. 하나하나 하는게 귀찮으니 Escape해주는 페이지(accessify.com)도 있습니다.