TiddlyWikiで日本語WikiNameが通ずる
先日紹介したTiddlyWiki どうやら日本語WikiNameを通るようにした人がいる。[日本語WikiName]のように表記する。外出前なので、本日はここまで。
OgreKit Wiki - some about a regular expression framework
OgreKit WikiはOgreKitに関する知識をまとめたデータベースです。構築にはObjective-C言語のシンタックスカラーリング等を行えるようにカスタマイズしたTiddlyWikiを使用しています。日本語WikiNameも使用できるようにしてみました。
« ロールオーバーというテクニック【グラフィック】 | トップページ | 餃子の王民王民(みんみん)中野 »
「Wiki」カテゴリの記事
- FSwikiLite IPhoneライクなデザインで久しぶりに作成(2013.01.14)
- きっとwikiたぶんwiki Google Sites(2008.05.23)
- 2003年はblogの年だった(2005.08.09)
- TiddlyWiki→KamiWiki(2005.07.25)
- 【Wiki】にコメントがついた(2004.10.30)
コメント
この記事へのコメントは終了しました。
トラックバック
この記事へのトラックバック一覧です: TiddlyWikiで日本語WikiNameが通ずる:
» 祝!!EbisuTiddlyWikiが日本語WikiNameに対応 [Ebisu]
OgreKit Wikiの作者、園部様からコメントをいただき、EbisuTidd [続きを読む]
→園部様
丁寧なコメントありがとうございます。午前中に、エディタ開いて、2つ左右に表示してそれらしい差分を移植して現在日本語WikiNameが使えるようになりました。
事項紹介、取り扱い説明書なんかに使えそうで便利ですね。結果は@nifty知的生産の技術フォーラムでも紹介させていただきました。おかげで有意義な週末になりました。
投稿: Ebisu | 2004.10.10 16:36
Ebisu様、長文失礼いたします。
日本語WikiNameを使用するために変更した箇所は関数wikify()のみです。
wikify()を以下のものと置き換えれば動くはずです。(MacのSafariとWindowsのIE6で動作確認済みです。)
昨日、リスト等も使えるように更に改良したのですがWindowsのIE6ではちゃんと動かないようです。
なにやら改行コードが無視されてしまうようで。ううむ…。
function wikify(text,parent)
{
// Link patterns
var upperLetter = "[A-Z]";
var lowerLetter = "[a-z]";
var anyLetter = "[A-Za-z_0-9]";
var linkPattern = upperLetter + "+" + lowerLetter + "+" + upperLetter + anyLetter + "*";
var urlPattern = "(?:http|https|mailto|ftp):\\S*";
var breakPattern = "\\n";
var explicitTiddlyLinkPattern = "\\[\\[([^\\]]+)\\]\\]";
// Create the RegExp object
var theRegExp = new RegExp("(" + linkPattern + ")|(" + urlPattern + ")|(" + breakPattern + ")|(?:" + explicitTiddlyLinkPattern + ")","mg");
// Set the position after the last match
var lastMatch = 0;
// Loop through the bits of the body text
do {
// Get the next match
var theMatch = theRegExp.exec(text);
if(theMatch)
{
// If so, dump out any text before the link
if(theMatch.index > lastMatch)
parent.appendChild(document.createTextNode(text.substring(lastMatch,theMatch.index)));
lastMatch = theRegExp.lastIndex;
// Dump out the link itself in the appropriate format
if(theMatch[1])
createTiddlyLink(parent,theMatch[0],true);
else if(theMatch[2])
createExternalLink(parent,theMatch[0]);
else if(theMatch[3])
parent.appendChild(document.createElement("br"));
else if(theMatch[4])
createTiddlyLink(parent,theMatch[4],true);
}
else
{
// If no match, just dump out the remaining text
parent.appendChild(document.createTextNode(text.substring(lastMatch)));
}
} while(theMatch != null);
}
投稿: 園部 | 2004.10.10 12:08
→園部様
コメントありがとうございます。うまくいかないのは、私の議場不足でして、貴兄のWikiに起因することではありません。
日本語WikiNameを私の tiddlyWIKIに移植しようとしましたが、当該部分がわからず時間をかけてみようと思っています。簡単ですが、補足方。
投稿: Ebisu | 2004.10.10 09:50
はじめまして。園部と申します。OgreKit Wikiのご紹介ありがとうございます。
うまくかないとのことですが、どの辺でうまくいかないのですか?
投稿: 園部 | 2004.10.10 00:11
自分なりに利用しようとしましたがうまくいきません。
もうしばらく世間の動きをウォッチします。-なさけな!!-
投稿: Ebisu | 2004.10.09 18:43