タグ

Javascriptとdiffに関するpigshapeのブックマーク (2)

  • Javascriptでdiffる ( with 形態素解析 ) (nakatani @ cybozu labs)

    Javascript で diff というのはいくつか試された例はあるようですが、まだこれといった決定打は出ていない様子です。 実は diff は見た目ほど軽い処理ではないので、Javascript にやらせるのはこれが結構大変…… diff の計算量は、おおざっぱに言うと比較対象の要素数の二乗に比例し(実際にはそれより小さくすることができるのですが、まあ話のイメージとして)、かつメモリを大量に消費するので、バッチ的な処理に最適化されていない Javascript にはどうしても荷が重いものとなってしまいます。 比較対象の要素数を減らせば当然計算量は減りますが、行単位で比較してもあまり嬉しくない(わざわざ Javascript で処理するということは自然文が対象と思って良いでしょう)。最小の文字単位だとギブアップ。 ということは形態素解析で分かち書きして、単語単位で diff するのが J

  • MOONGIFT: » JavaScriptでDiff「JSBlend」:オープンソースを毎日紹介

    ぱっと見、簡単そうに見えてその実、意外と大変なのが差分を表示する処理だ。マシンパワーも意外と使うので、油断ならない。だが、Web上で共有したりコラボレートしたりするアプリケーションが増えている現在にあっては、重要な機能になっている。 手軽に実装する方法は、既存のライブラリを使うことだ。それも、サーバサイドでなくクライアントサイドで。 今回紹介するオープンソース・ソフトウェアはJSBlend、JavaScriptで実装されたDiffソフトウェアだ。 JavaScriptでDiffを実装すると言うのは以前紹介したgoogle-diff-match-patchや、「Javascriptでdiffる ( with 形態素解析 ) (nakatani @ cybozu labs)」等で試みられている。JSBlendが凄いのは、ただDiffだけでなく、マージにも対応している点だ。比較は文字単位で行われ

    MOONGIFT: » JavaScriptでDiff「JSBlend」:オープンソースを毎日紹介
  • 1