MOONGIFT

オープンソース・フリーウェアを毎日紹介するブログ。日々の業務の効率化、新しいサービスのネタ探しにどうぞ。SNS、SBS、CMS、オフィス、画像編集、ユーティリティ、Firefoxアドオン、テキストエディタ、ゲーム…ジャンルは様々。

JavaScript/Java/PythonでDiff「google-diff-match-patch」

タグ: [] [] [] [] [] [] [] [] [] [] []

buzz_button

※画像は公式サイトデモより

最近、自作でWikiエンジンを書いている。Wikiの三大要素(?)として必要なのは、ページがない場合の自動生成、HTMLを記述する事無く記法によって生成される文章、そして不特定多数が編集するための履歴管理機能だ。

履歴管理をする以上、リビジョンの比較ができなければ意味がない。更新の衝突が起こった場合も必要だ。その際に非常に便利なライブラリがこれだ。

今回紹介するオープンソース・ソフトウェアはgoogle-diff-match-patch、各種言語による差分表示ライブラリだ。

google-diff-match-patchはその名の通り、Google謹製のライブラリだ。何と、Webベースのドキュメント作成ソフトウェア、Google Documentsでも使われている代物だ。

 

提供されているのはJavaScript、JavaそしてPython向けのソースになる。特にJavaScriptはWebブラウザ上でクライアントベースの比較ができるので使い勝手がよさそうだ。

できるのは二つの文章の比較をする(Diff)、差分を表示する(Match)、そして差分情報をもとに前の文章を修正(Patch)する事ができる。Diff形式の差分表示なので、通常のpatchとしても利用できそうだ。

Webアプリケーションは共有、コラボレーションにこそ意味がある。その際には処理がバッティングする事もあるだろう。google-diff-match-patchは実用的で使い勝手のいいライブラリだ。

 

google-diff-match-patch - Google Code
 http://code.google.com/p/google-diff-match-patch/

トラックバック URL :

June 11th, 2007 Posted by admin | コメントはありません

No Comments »

No comments yet.

Leave a comment

MOONGIFTネットワーク。こちらもぜひご覧ください。
MOONGIFT
Open Service
Rails 2.0
Resident on Net
iPhone最適化
リーンソフトウェア
MarketPedia
Producing Web
Cool Coding