2014年2月25日 星期二

Blogger嵌入程式碼 - Syntax Highlighter 3.0.83

1. 從Syntax Highlighter的官方網站,下載最新的Syntax Highlighter 3.0.83
http://alexgorbatchev.com/SyntaxHighlighter/

2. 找到一個網路空間,將以下檔案上傳,可以上傳至"Google Site"
syntaxhighlighter_3.0.83\styles\shCore.css
syntaxhighlighter_3.0.83\styles\shThemeDefault.css
syntaxhighlighter_3.0.83\scripts\shCore.js
syntaxhighlighter_3.0.83\scripts\shBrushBash.js
syntaxhighlighter_3.0.83\scripts\shBrushCpp.js
syntaxhighlighter_3.0.83\scripts\shBrushDiff.js
syntaxhighlighter_3.0.83\scripts\shBrushPlain.js
syntaxhighlighter_3.0.83\scripts\shBrushXml.js
syntaxhighlighter_3.0.83\scripts\shBrushCss.js
3. 從Google Site找到這些檔案的超連結,將它填入下面的HTML語法中
範本-> 編輯HTML,將以下語法加到<head>之後。
<link href='https://sites.google.com/site/english0815/Home/syntaxhighlighter/shCore.css' rel='stylesheet' type='text/css'/>
<link href='https://sites.google.com/site/english0815/Home/syntaxhighlighter/shThemeDefault.css' rel='stylesheet' type='text/css'/>
<script src='https://sites.google.com/site/english0815/Home/syntaxhighlighter/shCore.js' type='text/javascript'/>
<script src='https://sites.google.com/site/english0815/Home/syntaxhighlighter/shBrushBash.js' type='text/javascript'/>
<script src='https://sites.google.com/site/english0815/Home/syntaxhighlighter/shBrushCpp.js' type='text/javascript'/>
<script src='https://sites.google.com/site/english0815/Home/syntaxhighlighter/shBrushDiff.js' type='text/javascript'/>
<script src='https://sites.google.com/site/english0815/Home/syntaxhighlighter/shBrushPlain.js' type='text/javascript'/>
<script src='https://sites.google.com/site/english0815/Home/syntaxhighlighter/shBrushXml.js' type='text/javascript'/>
<script src='https://sites.google.com/site/english0815/Home/syntaxhighlighter/shBrushCss.js' type='text/javascript'/>
<script type='text/javascript'>
SyntaxHighlighter.all()
</script>
4. 在網誌裡新增程式碼
<pre class="brush: xml">
public class HelloWorld {

    public static void main (String[] args) {
        System.out.println("Hello, world!");
    }
}
</pre>
以下為顯示結果
public class HelloWorld {

    public static void main (String[] args) {
        System.out.println("Hello, world!");
    }
}
5. 如遇到HTML語法<或>符號,需透過以下網址轉換語法,才可以正常顯示
HTML Encoder

6.1. 你可能會發現垂直捲軸會被顯示在框架中,可以修改syntaxhighlighter_3.0.83\styles\shCore.css來隱藏垂直捲軸
.syntaxhighlighter {
  width: 100% !important;
  margin: 1em 0 1em 0 !important;
  position: relative !important;
  overflow:auto !important;
  font-size: 12px;
}
to
.syntaxhighlighter {
  width: 100% !important;
  margin: 1em 0 1em 0 !important;
  position: relative !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  font-size: 12px;
}
6.2. 你可能會發現框架中會有多餘的空白出現,可以修改syntaxhighlighter_3.0.83\styles\shCore.css來去除這些空白行
.syntaxhighlighter {
.syntaxhighlighter table td.gutter .line {
  text-align: right !important;
  padding: 0 0.5em 0 1em !important;
}
}
to
.syntaxhighlighter {
.syntaxhighlighter table td.gutter .line {
  text-align: right !important;
  padding: 0 5px !important;
}
}
7. 參考資料
How To Add Syntax Highlighter for Blogger/Blogspot
Extra Lines using SyntaxHighlighter for Chrome Only?

Blogger嵌入程式碼 - Google Code Prettify & CSS Block

1. 版面配置-> 新增小工具-> 選擇"HTML/JavaScript"小工具
插入以下Google Code Prettify的程式,此功能只會在程式碼周圍加上外框並填上顏色,如果想要底色填滿,需要再加入CSS Block的程式碼
<script src="//google-code-prettify.googlecode.com/svn/loader/run_prettify.js"></script>
2. 版面配置-> 新增小工具-> 選擇"HTML/JavaScript"小工具
插入CSS Block的程式
<style>
.post .codeblock {
display: block; /* fixes a strange ie margin bug */
font-family: Courier New;
font-size: 10pt;
overflow:auto;
background: #f0f0f0 url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAASwCAYAAAAt7rCDAAAABHNCSVQICAgIfAhkiAAAAQJJREFUeJzt0kEKhDAMBdA4zFmbM+W0upqFOhXrDILwsimFR5pfMrXW5jhZr7PwRlxVX8//jNHrGhExjXzdu9c5IiIz+7iqVmB7Hwp4OMa2nhhwN/PRGEMBh3Zjt6KfpzPztxW9MSAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzAMwzB8HS+J9kUTvzEDMwAAAABJRU5ErkJggg==) left top repeat-y;
border: 1px solid #ccc;
padding: 10px 10px 10px 21px;
max-height:1000px;
line-height: 1.2em;
}
</style>
3. 在網誌裡新增程式碼
<pre class='codeblock'>
public class HelloWorld {

    public static void main (String[] args) {
        System.out.println("Hello, world!");
    }
}
</pre>
以下為顯示結果
public class HelloWorld {

    public static void main (String[] args) {
        System.out.println("Hello, world!");
    }
}
4. 如遇到HTML語法<或>符號,需透過以下網址轉換語法,才可以正常顯示。
HTML Encoder

5. 參考資料
在網頁中嵌入顯示程式碼:CSS Block
在網頁中嵌入顯示程式碼:Google Code Prettify

2014年2月8日 星期六

半馬回憶錄

是命運的捉弄,亦或是冥冥之中,有無形力量的安排,我報名了人生第一場馬拉松。畢竟是第一次參加馬拉松賽事,也上網問google先生做了一些功課,比賽當天帶著興奮又緊張的心情來到會場,在報名完也熱身完後,就萬事俱備只缺鳴響。槍響的那一刻,開始試著在人群中調整步伐,因為太多人擠在一起像沙丁魚一樣,所以我開啟了Turbo模式跑離人群,等到周遭的人較稀疏後,便轉換為定速巡航模式,開始了我的半馬之旅。

由於平常的練習,這個速度還在under control,有點像是蜻蜓點水般大跨步,漸漸的眼前的人一個個被我超越,我超越一個M、兩個M和好多好多個M,這些M算一算應該有比中華電信的五十M還要多。大概過了8公里後,不幸的事還是發生了,右腳膝蓋開始隱隱作痛,我的膝蓋開始無法支撐我的跑速,只好被迫切換成凌波微步放慢速度,膝蓋的疼痛感才慢慢減輕。

就在調整步伐之計,一個M從後面呼嘯而過,此時的心情百感交集,我拚了命追趕卻徒勞無功,就像眼前有個正妹在挑逗你,但卻硬不起來的感覺,接著愈來愈多人呼嘯而過,我試著加快速度,卻心有餘而力不足。正好對面一台公車迎面而來,心裡突然有股念頭想跳上公車結束這一切,或者希望路旁正好有個紅色電話亭,我可以因此而穿上披風飛回終點。

回程到了大甲溪橋,這是第一次覺得大甲溪橋有如萬里長城一般,怎麼看不到終點阿!途中有一些民眾為我們加油打氣,我也對著他們比出必勝的手勢,雖然這時候下半身已經不是自己的。心裡想著我不能這樣而一蹶不振,開始從音樂中找尋自己的節奏,用音樂來麻醉自己神經,加上超人般意志力的支持,就這樣我終於跑到了終點,結束了這場半馬之旅。

跑完這次半程馬拉松,心中有一些新的體悟,我想這應該是跑過的人才會懂的。
1. 有時候放慢腳步注意周遭,路上會有一些意想不到的美景。
2. 超越了幾個M並不重要,重要的是找一個M,願意和你一起跑到終點。
3. 不要太在意別人超越你,按照自己的步伐節奏,終點終究會到來。
4. 當遇到挫折時,試著用不同的方式去面對,一定可以克服挫折勇往直前。
5. 山不在高,有仙則名;水不在深,有龍則靈;馬不在快,跑完就行。