在BLOG中張貼程式碼 -- syntaxhighlighter

摘要:在BLOG中張貼程式碼 -- syntaxhighlighter

想要在Blogger中分享程式碼想好久了,但礙於天天都很忙,一直沒空上網搜尋及研究如何張貼。

直到昨天才又想到,趕快趁機Google一下,發現很多人都用「syntaxhighlighter」這個開放源碼,

他可以讓使用者在個人Blog中排出漂亮的程式碼,另外支援列印等功能,可以說是相當地實用呢!! 

 

「syntaxhighlighter」是什麼呢?

根據某部落格主阿達的說法:

「syntaxhighlighter」是一套Javascript,採LGPL3的版權格式,其2.0版之後的版本改採Donationware授權(原始網頁

現支援到的語言格式如下:參考網址1參考網址2
C++、C#、CSS、Delphi、Java、JavaScript、PHP、Python、Ruby、 SQL、VB、XML/HTML

也可官方的Brush列表看到所支援的程式語法。


 

要怎麼使用「syntaxhighlighter」?

Step 1.

先去SyntaxHiglighter的官方下載網頁,下載此一壓縮包,或者直接按此連結下載。

下載解壓後,請將裡面的「Scripts」內所有檔案,放置在自行上傳至網頁空間。

或者直接引用官方提供的外部資源,其精簡版使用方式如下(官方說明): 

  1. 引入核心檔案:將shCore.js以及想要使用的程式語言檔案shBrushYourBrush.js(如:shBrushJScript.js)
  2. 引入風格 檔:shCore.css以及shThemeDefault.css
  3. 將程式片段寫 入<pre></pre>或是<script></script>之間
  4. 呼叫 SyntaxHighlighter.all()

Step 2.

若看不懂上面的四步驟,就接著看吧!

完成Step1之後,繼續加入下列程式碼,可以自己把JS(JavaScript)載下來放到自己的網路位置或者直接引用外部資源,下方為直接引用外部資源。

<script type="text/javascript" src="http://alexgorbatchev.com/pub/sh/2.1.364/scripts/shCore.js"> </script>
<script type="text/javascript" src="http://alexgorbatchev.com/pub/sh/2.1.364/scripts/shBrushJScript.js"> </script>
<link type="text/css" rel="stylesheet" href="http://alexgorbatchev.com/pub/sh/2.1.364/styles/shThemeDefault.css" />
<link type="text/css" rel="stylesheet" href="http://alexgorbatchev.com/pub/sh/2.1.364/styles/shCore.css" />
<script type="text/javascript">
SyntaxHighlighter.config.bloggerMode = true;
SyntaxHighlighter.all();
</script>

 



Step 3.

 

而要使用的話,只要將程式碼用下面那行指令包起來即可。

<pre class="brush: 程式語法;"></pre>

範例:

<pre class="brush: html;"><p>this is a test</p><br/></pre>

    -----米蝶不負責任之報告-----      

※ pre裡面的屬性可至此處

※ 要置入的程式碼編輯請直接在『編輯HTML原始程式碼』中編輯比較保險唷!

    不論是換行還是貼上,否則…(下場似乎會很悲慘)  

※ 若程式碼中含有大小於符號(< >),若是想自行要輸入(< >)請分別用<和>取代("<"需用 < 取代, ">"需用 > ),

  否則由<script type="...></script>包起來的區段,會被瀏覽器判定為是某種script而編譯之,請小心使用。

※ 附帶一提,其實像是點部落或是藍色部落本身就有提供張貼程式碼的功能啦!

  如果像米蝶這樣覺得上面這方法很麻煩的話,就在這邊開個帳號吧!哈!!  

※ 另附上三篇詳細說明之連結XD

  德瑞克:SQL Server 學習筆記 - 在 Google Blogger 中使用 SyntaxHighlighter 1.5.1

  幻影千瞳的部落格 - 使用 SyntaxHighlighter

  阿達隨筆-在Blog中置入程式碼 - SyntaxHighlighte