Proxyとか

ネット界隈と時事ニュースなどの日常の何気ない話題が中心な信憑性もなければ公平性もない偏った素人のメモ。

 http://fula.jp/ へのリンクはフリーです [メール] [PGP] はこちらよりどうぞ。但し、営利目的の方はご遠慮下さい。    携帯    English    韓国語    中文

<< Net tool HoverIP マウスでクリクリ ネットワーク調査 | TOP | InternetExplorer が white-space:pre; を理解しない件 >>

[Webprog]  PHP で利用する ソースコード整形ライブラリ GeSHi library

2006/02/13(Mon) 15:15:53

GeSHi library は PHPでコーディングされたソースコードを整形(ハイライト)できるPHPライブラリです。phps や highlight_file の高機能版です。phps や highlight_file はPHPのソースコードに最適化されていますが、GeSHi は以下に示す多くの言語に最適化された整形を行ってくれるのが特徴です。

Actionscript , ADA , Apache Log , AppleScript , ASM , ASP , Bash , BlitzBasic , C , C for Macs , C# , C++ , CAD DCL , CadLisp , CSS , Delphi , DIV , DOS , Eiffel , FreeBasic , GML , HTML , Inno , Java , Javascript , Lisp , Lua , Microprocessor ASM , MySQL , NSIS , Objective C , OCaml , OpenOffice BASIC , Oracle 8 SQL , Pascal , Perl , PHP , Python , Q(uick)BASIC , Ruby , Scheme , SDLBasic , Smarty , SQL , VB.NET , Visual BASIC , Visual Fox Pro , XML

GeSHi - Generic Syntax Highlighter
http://qbnz.com/highlighter/

GeSHi の導入方法
// GeSHi の簡単な導入方法サンプル

// GeSHi library を適用したいスクリプト内へインクルード
include('geshi.php');

// GeSHi オブジェクトにソースコードと言語とパスを設定
$source = 'echo "hello, world!"; // weeeeee!!!!';
$language = 'php';
$path = 'geshi/';

$geshi = new GeSHi($source, $language, $path);

// コードの読み出し、実行
echo $geshi->parse_code();
以下は、GeSHi を適用した利用例です。当初、正規表現でソースを整形出来るよう自前でちまちまやっていたのですが、面倒になり良いライブラリが無いかと探していたらこの様なすばらしいライブラリがあることを知り自前のやつの貧弱さに泣けてきました。

GET_header_source_capture
http://fula.jp/cgi-bin/head2/

head2_source_normal.png

GeSHi 適用前


head2_source_geshi.png

GeSHi 適用後



試しに以下を実行してみてください。header(ヘッダー)とsource(GeSHi で整形済みソース)とcapture(キャプチャ画像)(スクリーンショット)を同時に取得できます。

私の環境が貧弱な事もあると思いますがさすがに GeSHi を導入すると多少動作が重くなります。もちろんスクリプト実行後に吐き出されるソース自体の容量も増えるのでブラウザ自体の反応速度とサーバーからの転送速度に対してはボトルネックになりますが、ソースコードの見やすさと言うアドバンテージは導入する価値に見合うものだと思います。素晴らしい。

[admin ID:92RrOHSc] [Trackbacks:0] [English]
[記事固有URL:http://fula.jp/blog/index.php?no=r716]
[トラックバックURL:http://fula.jp/blog/ptb.php?no=716]



コメントについての補足事項

  • コメントは誰でもご自由にどうぞ。但し、営利目的の投稿はご遠慮下さい。
  • コメント内のhttp:// から始まる文字は自動リンクします。
  • 自動リンクしたくない場合は先頭に * (アスタリスク)をつけて *http:// としてください。
  • 投稿パスはコメント投稿後に修正、削除などの管理作業を行う時に利用します。
  • 設定した投稿パスは トリップ としても作用します。
  • ご自身で任意のパスワードを設定のうえ投稿して下さい。
  • 誹謗中傷など投稿内容によっては管理人の権限で削除、修正させて頂く場合があります。
  • 日本語を一定数含まない場合や句読点(点や丸)が使われていないコメントは投稿できません。
  • 正規書き込みパスには、はんかくかたかなで のし と記入下さい。スパム対策です。

名前

投稿パス

正規書き込みパス

コメント

確認後 :

投稿後の記事の修正削除

記事番号 : 投稿パス:

上記より投稿時に設定した投稿パスを入力して下さい。修正、削除などの管理作業を行う事が出来ます。

<< Net tool HoverIP マウスでクリクリ ネットワーク調査 | TOP | InternetExplorer が white-space:pre; を理解しない件 >>

apache_powered.gif php5_powered.gif eaccelerator_powered.gif zend_optimizer_powered.gif xmail_powered.gif opera9_browser.gif

FLEUGELz