티스토리에 코드구문강조(highlight.js) 설치하기
티스토리에서 코드 구문 강조를 위하여 많이 사용되는 것이 Syntax Highlighter 일 것이다.
그런데, 티스토리에 막상 적용할려하면 각종 브러쉬 파일들을 올려둬야 하고 에디터에 소스 입력시 일일이 brush:언어를 일일이 지정해주는건 나에게 너무 귀찮다...
그래서 쓸만한 코드구문강조를 찾아보던중 highlight.js를 찾게 되었다.
website : https://highlightjs.org/
사이트 설명에는 169가지 언어와 77개의 스타일을 지원한다고 한다.
그리고 결정적으로 이걸로 하게된게 소스코드를 올리면 언어를 별도로 지정할 필요 없이 알아서 분석해서 코드 구문 강조를 해준다.
이제 티스토리에 적용해보자.
우선 관리페이지 -> HTML/CSS 편집 에 들어가서 html의 <head>와 </head> 사이에 아래의 코드를 추가한다.
<link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/styles/monokai-sublime.min.css">
monokai-sublime.min.css는 스타일 파일로서 다른 스타일을 원하면 https://highlightjs.org/static/demo/ 를 참고한다.
css를 추가하였다면 </body> 태그 바로 위에 아래의 코드를 추가한다.
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/highlight.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
이제 모든 준비는 끝났다.
코드 작성시 에디터에서 HTML에 체크 후 아래의 코드를 입력해주면 적용된다.
<pre><code> 코드 작성 </code></pre>
+보너스
highlight.js는 줄번호 표시가 없다.
그래서 누군가 github에 줄번호 표시가 되게 만들어 놓은 소스가 있다.
위의 사이트에서 highlightjs-line-numbers.min.js를 받아서 티스토리에 업로드한다.
그리고 </body>태그 윗단에 기존에 추가했던 소스를 지우고 아래의 소스로 변경한다.
<script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/highlight.min.js"></script>
<script src="./images/highlightjs-line-numbers.min.js"></script>
<script>hljs.initHighlightingOnLoad();</script>
<script>hljs.initLineNumbersOnLoad();</script>
CSS 수정으로 들어가 소스를 추가한다.
.hljs-line-numbers {
text-align: right;
border-right: 1px solid #ccc;
color: #999;
-webkit-touch-callout: none;
-webkit-user-select: none;
-khtml-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
}
-끝-
TAGS.