GeSHi Filter (程式碼格式化顯示) 方法一

1 篇文章 / 0 new
author
GeSHi Filter (程式碼格式化顯示) 方法一

安裝

模組 : http://drupal.org/project/geshifilter

必要模組 :  http://drupal.org/project/libraries (Drupal 7 需安裝2.x 版以上)

GeSHi 資料 :  http://qbnz.com/highlighter/ 解壓縮到 sites\all\libraries 目錄下

設定

admin/config/content/geshifilter :

1. 若要使用如 <code> 的標記方式, 需增加一個大寫 tag 以避免被系統自動轉換成大寫而無法動作,最好使用 [code] 方式, 其餘大多可用預設值

2. 可設定預設 程式語言 為所常用, 就可省去每次標記時的指定語言參數

admin/config/content/formats

勾選

修改

1. sites\all\libraries\geshi\geshi.php

function parse_code () { //約在 2137行
...
   // Replace all newlines to a common form.
   $code = str_replace("\r\n", "\n", $this->source);
   $code = str_replace("\r", "\n", $code);
   // 新增下列程式碼 (複製使用時,標記內之控格請去除,這是因為避免無法完整顯示時刻意加入)
   $code = str_replace("&gt;", ">", $code);
   $code = str_replace("&lt;", "<", $code);
   $code = str_replace("&lsaquo;", "‹", $code);
   $code = str_replace("&rsaquo;", "›", $code);
   $code = str_replace("<BR >", "\n", $code);
   $code = str_replace("<br >", "\n", $code);
   $code = str_replace("<P >", "", $code);
   $code = str_replace("</P >", "", $code);
   $code = str_replace("<p >", "", $code);
   $code = str_replace("</p >", "", $code);
   $code = str_replace("&#39;", "'", $code);
   $code = str_replace("&quot;", "\"", $code);
   $code = str_replace("&amp;", "&", $code);
   $code = str_replace("&nbsp ;", " ", $code);
...

2. 放大預設字體大小 : \themes\bartik\css\style.css 約在56行 (非必要)

var {
  padding: 0 0.4em;
  font-size: 0.9em; // 原始為 0.77em;
  font-family: Menlo, Consolas, "Andale Mono", "Lucida Console", "Nimbus Mono L", "DejaVu Sans Mono", monospace, "Courier New";
}

使用方式

1. [code]程式碼[/code], 整體再用 pre tag 包住, 也就是editor格式項的"已格式化"

2. [code]/ [code lang=語言]: 通用標記, 內包含的語言需字型指定, 識別Tag可在管理介面指定

3. [語言標記] : 直接告訴系統是什麼語言格式, 需在 管理介面的語言清單項內設定.如[css]

Free Web Hosting