在 Blogger 中使用 google-code-prettify 顯示程式碼

google-code-prettify 是一支不錯的程式碼高亮度顯示程式,特點為:

  1. 支援 15 種程式語言(但某些語言似乎還沒完成)
  2. 程式僅兩個檔案
  3. 載入速度較快

缺點為:

  1. 跟 IE 的相容性比較不佳,在 IE 內複製程式碼時無換行符號
  2. 無行號顯示
  3. 僅支援 "<pre>" 區塊
  4. 程式碼過長時不會自動顯示捲軸 (可透過修改 CSS 解決)

安裝步驟

  1. 修改 blogger 樣板,搜尋 "</head>",在 "上方" 加入
    <link href='http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.css' type='text/css' rel='stylesheet' />
    <script type='text/javascript' src='http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.js'></script>

    (因為 "偷吃步" 的關係,程式直接連到 google-code-prettify 的 SVN 上,你可以視情況下載回來放到自己的伺服器)

  2. 繼續搜尋 "<body>",在標籤內的 onload 事件加入:
    prettyPrint();
  3. 儲存即可。

使用方法

      使用 "<pre>" 區塊,需將 "&" 轉換為 "&amp;"、"<" 轉換為 "&lt;"、">" 轉換為 "&gt;":
<pre class="prettyprint">
程式碼
</pre>

參考網頁

在 CentOS 4.x 安裝 Subversion 1.4.3

Subversion (簡稱 SVN) 是目前最熱門的版本控制套件,因為語法與 CVS 相近,又是改良自 CVS,幾乎所有平台的 OS 都有支援,目前正快速地進佔版本控制的霸主地位。以下介紹 Subversion 在 CentOS 4.x 或 RHEL 4.x 下的安裝步驟。

安裝 Subversion

安裝步驟:

  1. 先移除系統上的 Subversion 1.2.x
    rpm -e subversion
  2. http://summersoft.fay.ar.us/pub/subversion/latest/rhel-4/i386/ 下載最新版的 subversion,下載符合下一個步驟中相同名稱的 rpm 套件。
  3. 依序安裝:
    rpm -U apr-x.x.x-x.i386.rpm
    rpm -U apr-util-x.x.x-x.i386.rpm
    rpm -ivh subversion-x.x.x-x.i386.rpm
    rpm -ivh mod_dav_svn-x.x.x-x.i386.rpm
    rpm -ivh subversion-perl-x.x.x.x.i386.rpm
    rpm -ivh subversion-tools-x.x.x-x.i386.rpm
  4. 這樣就 OK 了!

以 SVN+SSH 存取檔案庫

使用 “SVN+SSH” 的存取方式就是直接使用主機上的用戶帳號做存取。而你所要被用戶存取的檔案庫其實就是一個子目錄,因此要存取的用戶必須有可以讀取及寫入該目錄的權限。

語法:

svn+ssh://帳號@主機名稱/檔案庫絕對路徑

範例:

svn+ssh://[email protected]/var/svn/repositories

其中 user1 必須要在 192.168.1.1 這台主機上有 [/var/svn/repositories] 目錄的讀取及執行權限 (建議設為群組)

從 Web 存取檔案庫

網頁主機需安裝有 “dav_svn_module” 模組,在 httpp.conf 內設定:

LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<location>
DAV svn
#設定 SVN 儲存庫的根目錄
SVNParentPath /var/svn
#設定 SVN 儲存庫的目錄
#SVNPath /var/svn/repositories
Satisfy Any
Require valid-user
AuthType Basic
AuthName "SVN Repository"
#用戶認證的帳號/密碼檔 (使用 htpasswd 建立)
AuthUserFile /etc/svn/svn_htusers
#用戶存取權限設定檔
AuthzSVNAccessFile /etc/svn/svn_access
</location>

參考網頁

[Perl]CGI 模組常用語法

載入 CGI 模組

use CGI qw/:standard/;
my $CGI = CGI->new();

取得所有輸入的參數名稱

@param_name = $CGI->param();

取得特定參數的內容

$value = $CGI->param( "param_name" );

取得所有參數的名稱及內容

%param = $CGI->Vars;

轉換 $url 為 url 可接受的字串

$url_escape = $CGI->escape( $url )

取得目前網頁的編碼

$charset = $CGI->charset();

指定網頁的編碼,並送出網頁表頭

print $CGI->header( -charset=>"utf-8", -expires=>"-1d" );