SyntaxHighlighter v3 플러그인 설치
코드를 올리려고 했는데..
지금까지 제가 올린것 보면..
<html>
<head>
<title>4번 게시판</title>
</head>
그냥 이렇게만 올렸었죠..
그런데 다른 블로그 가보면..
이런식으로 되어있는 것들을 많이 보셨을 겁니다..
전 드래그 방지라던지.. 그런걸 걸어두지 않았기에.. 그냥 복사하시면 되는데..
가끔 눈에 안들어와서 놓칠때가 있습니다..
지금까지는 귀찮아서.. 안했는데.. 한번 해두면.. 계속 써먹을 수 있으니까.. 지금 해보려고 합니다..
우선.. 검색해보면.. 가장 많이 쓰고 있는..
우선 기존에 설치 안내 블로그는.. 다운로드가 바로 보였다고 하는데..
지금은 없고;..
오른쪽에.. 다운로드가 있습니다..
눌렀다고 바로 다운되느냐?.. ㄴㄴ;..
깃허브로 넘어가고..
소스를 찾아봐도.. scripts 와 styles 는 안보이고..
밑으로 내려보니.. 이전 버전 다운!..
눌렀는데.. 404.. ㅠㅠ..
혹시나 해서.. 다른곳을 봤더니..
스크립트와 스타일이 있어서.. 일일히 하나씩 다운 받았습니다;..
저것도 없어지면.. SyntaxHighlighter V3은 앞으로 설치를 못하는것이죠;..
제가 받은걸 압축해놨습니다.. scripts.zipstyles.zip
아래 블로그에도.. 해당 파일을 다운 받을 수 있게 올려놓으신게 있네요..
티스토리(Tistory) 블로그에 코드 소스 하이라이트 SyntaxHighlighter 설정 및 활용, 버그 수정..
지금은 SyntaxHighlighter v4 로.. 다운 받고..
$ git clone https://github.com/syntaxhighlighter/syntaxhighlighter.git
$ cd syntaxhighlighter
$ npm install
빌드해서.. 사용할 수 있게 만들었는데..
--brushes=all
--brushes=css
--brushes=css,javascript
--brushes=./my-brush.js
--brushes=/full/path/to/my-brush.js
--brushes=/full/path/to/my-brush.js,css,javascript
--theme=default
--theme=./my-theme.scss
--theme=/full/path/to/my-theme.scss
뭔가 많이 해줘야하해서.. 예전 버전을 사용하기로 했습니다..
다운 받은 파일을 업로드 합니다..
관리자 화면에서 HTML/CSS 편집을 누르고..
파일을 업로드해줍니다..
추가를 눌러서 다운 받은 styles, scripts 를 선택하고 확인!.. 그리고 저장!..
그리고 HTML 부분도 수정을 해줘야 합니다..
수정을 하는데.. 이게 제대로 하고 있는건지.. 알수가 없기 때문에..
미리 코드를 넣어줍니다..
제가 넣을 코드는 C 시작할 때 배우는 hello world~!
<pre class="”brush:c”">
#include <stdio.h>
int main(void){
printf(“hello world~!\n”);
return 0;
}
</pre>
넣을건데요..
그냥 넣으면 위에 처럼 나오기 때문에..
HTML 에디터 모드를 클릭하고..
해당 소스를 붙여넣기 했습니다..
<pre class="”brush:c”">
#include <stdio.h>
int main(void){
printf(“hello world~!\n”);
return 0;
}
</pre>
아래가 HTML로 붙여넣기한 코드입니다..
#includeint main(void){ printf(“hello world~!\n”); return 0; }
이제 다시 관리자 화면에서 HTML 을 편집해 줍니다..
해당 스크립트를 <head> </head> 사이에 넣어줍니다..
<script type="text/javascript" src="./images/shCore.js"></script>
<script type="text/javascript" src="./images/shLegacy.js"></script>
<script type="text/javascript" src="./images/shBrushBash.js"></script>
<script type="text/javascript" src="./images/shBrushCpp.js"></script>
<script type="text/javascript" src="./images/shBrushCSharp.js"></script>
<script type="text/javascript" src="./images/shBrushCss.js"></script>
<script type="text/javascript" src="./images/shBrushDelphi.js"></script>
<script type="text/javascript" src="./images/shBrushDiff.js"></script>
<script type="text/javascript" src="./images/shBrushGroovy.js"></script>
<script type="text/javascript" src="./images/shBrushJava.js"></script>
<script type="text/javascript" src="./images/shBrushJScript.js"></script>
<script type="text/javascript" src="./images/shBrushPhp.js"></script>
<script type="text/javascript" src="./images/shBrushPlain.js"></script>
<script type="text/javascript" src="./images/shBrushPython.js"></script>
<script type="text/javascript" src="./images/shBrushRuby.js"></script>
<script type="text/javascript" src="./images/shBrushScala.js"></script>
<script type="text/javascript" src="./images/shBrushSql.js"></script>
<script type="text/javascript" src="./images/shBrushVb.js"></script>
<script type="text/javascript" src="./images/shBrushXml.js"></script>
<link type="text/css" rel="stylesheet" href="./images/shCore.css">
<link type="text/css" rel="stylesheet" href="./images/shCoreRDark.css">
<script type="text/javascript">SyntaxHighlighter.all();</script>
그리고 <body> 부분에.. Onload="dp.SyntaxHighlighter.HighlightAll('code');" 를 넣어줍니다..
<body Onload="dp.SyntaxHighlighter.HighlightAll('code');">
전 기존에 id="tt-body-page" 가 있어서 옆에 추가해줬습니다..
새로고침 과 함께..
기존에 넣어뒀던 화면을 보면.. 화면이 바뀐걸 확인 할 수 있습니다..
사용할 수 있는 목록..
Brush name |
Brush aliases |
File name |
ActionScript3 |
as3, actionscript3 |
shBrushAS3.js |
Bash/shell |
bash, shell |
shBrushBash.js |
ColdFusion |
cf, coldfusion |
shBrushColdFusion.js |
C# |
c-sharp, csharp |
shBrushCSharp.js |
C++ |
cpp, c |
shBrushCpp.js |
CSS |
css |
shBrushCss.js |
Delphi |
delphi, pas, pascal |
shBrushDelphi.js |
Diff |
diff, patch |
shBrushDiff.js |
Erlang |
erl, erlang |
shBrushErlang.js |
Groovy | groovy | shBrushGroovy.js |
JavaScript | js, jscript, javascript | shBrushJScript.js |
Java | java | shBrushJava.js |
JavaFX | jfx, javafx | shBrushJavaFX.js |
Perl | perl, pl | shBrushPerl.js |
PHP | php | shBrushPhp.js |
Plain Text | plain, text | shBrushPlain.js |
PowerShell | ps, powershell | shBrushPowerShell.js |
Python | py, python | shBrushPython.js |
Ruby | rails, ror, ruby | shBrushRuby.js |
Scala | scala | shBrushScala.js |
SQL | sql | shBrushSql.js |
Visual Basic | vb, vbnet | shBrushVb.js |
XML | xml, xhtml, xslt, html, xhtml | shBrushXml.js |
다른 언어를 사용하고 싶으면..
<pre class="”brush:c”"> 에서 넣고 싶은 Brush aliases 를 넣으면 됩니다..
<pre class="”brush:sql”">, <pre class="”brush:shell”"> 이렇게 말이죠..
그리고.. 테마가 있더라구요.. 아까는 Default 로 하다가 CoreRDark 로 바꿔봤는데..
어떤것들이 있는지 한번 보고 마음에 드시는걸로 바꾸면 좋을것 같습니다..
테마 변경 방법은 HTML 에서
<link type="text/css" rel="stylesheet" href="./images/shCoreEmacs.css">
shCoreEmacs.css 해당 부분을 변경해주시면 됩니다..
- shCoreDefault.css..
- shCoreDjango.css..
- shCoreEclipse.css..
- shCoreEmacs.css..
- shCoreFadeToGrey.css..
- shCoreMDUltra.css..
- shCoreMidnight.css..
- shCoreRDark.css..
다크는 include 부분이 잘 안보여서 shCoreEmacs.css 로 테마를 해봤습니다..
그럼 모두 성공하시길..