自作プラグイン/codehighlight.inc.phpの開発雑談 log

  • 小さいものは、このような利用でしょうけど、添付ファイルからも、同様にできると良いと思います。 -- upk 2004-10-30 (土) 03:39:10
  • なかなか楽しいですね :) -- teanan 2004-10-30 (土) 10:58:32
  • ページを少し変更しました。添付ファイルの表示は面白いですね。考えてみます。 -- sky 2004-10-30 (土) 15:50:32
  • ファイル取り込みに対応しました。プラグイン名を別にしましたが、引数の内容によって分けた方が良かったでしょうか? -- sky 2004-10-31 (日) 11:08:49
    • 個人的には、プラグインは同一で引数で制御が良いですね。当初、小さかったものが、肥大化したり、再利用などを考慮し添付に切り替えた場合、プラグイン名の記述まで変えるわけですから。まぁ、その程度ですけどね。あと、複数行パッチを適用しないでも、現在の別プラグイン形式であれば、利用できることをユーザに意識させているという考えとかなら、それはそれでよいとも思いますけどね。-- upk 2004-11-03 (水) 02:56:40
  • ライセンスの件については、原作者の方に確認中です。 -- henoheno 2004-10-31 (日) 11:24:55
  • お手数をかけてしまい申し訳ありません>henohenoさん。今回の場合GPLのコードを取り込んでいるのでGPLで配布しなくてはならない物になり、原作者の方にGPLでも配布可能な許可を頂きました。ライセンスはGPLで良いのですよね。ちなみに私はこの改変についていかなる部分も権利を主張する気は有りません。 -- sky 2004-10-31 (日) 17:47:16
  • こんにちは。いえskyさんがお手をわずらわせるタイプのことでもないと思いましたので問題ありません。これで全ての物件がGPLということになりますから、将来の不安が無くなった(少なくなった)のが嬉しいですね。 -- henoheno 2004-10-31 (日) 19:45:59
    • こんにちは。今回の件は勉強になりました。皆の善意であったのが何かのきっかけで問題になったら大きくこじれてしまいそうです。将来の憂いを無くしておく事も重要ですね。 -- sky 2004-11-01 (月) 13:21:20
  • キーワードファイルでコメントの指定が出来るようになりました。これでキーワードファイルを作成するだけで新規言語を追加できるようになります(プラグインのプラグインのような物です)。Debugが完了次第 r1.0-pr1 としてUpする予定でいます。 -- sky 2004-11-03 (水) 01:48:38
  • 「...今のままだと、 __asm とかに対応できないね...。if (is_alpha($code) || $code == "_")」 -- http://d.hatena.ne.jp/k_ahiru/20041103 -- 2004-11-03 (水) 09:50:12
  • はじめまして、sakurai と申します。ahiruさんのところから飛んできました。
    コードハイライト高速化していないみたいと出ていて、私はD言語上で高速化した経験があるので書き込みしました。
    これは私の作った、Diki(D言語Wiki)用に移植したCodeHighlightです。
    http://www.wikiroom.com/sakurai/?DikiCodeHighlight
    このプログラムは、(今はリンクが切れていますが)
    http://int19h.tamb.ru/files.html
    (今はD言語のコンパイラのパッケージに含まれてます)
    を元に高速化しました。30倍くらい速くなりました。
    これをPHPに移植すれば高速化できると思います。
    気になるのはライセンスで、以下のようにヘッダ部分にかかれていたので自由に変更してよいものだと判断して使っていますが、大丈夫かなということです。
    /*
     * Copyright (c) 2001
     * Pavel "EvilOne" Minayev
     *
     * Permission to use, copy, modify, distribute and sell this software
     * and its documentation for any purpose is hereby granted without fee,
     * provided that the above copyright notice appear in all copies and
     * that both that copyright notice and this permission notice appear
     * in supporting documentation.  Author makes no representations about
     * the suitability of this software for any purpose. It is provided
     * "as is" without express or implied warranty.
     */
  • こんにちは。Delphiも対応言語に入れてあげてくれるとうれしいです。表示例→http://slavadev.sourceforge.jp/index?241149 -- u*j*2*6* 2004-11-03 (水) 19:09:34
  • 情報ありがとうございます。そのプログラムとその著作権者さんの詳細を確認したくなりますね。 -- henoheno 2004-11-03 (水) 20:06:20
  • Dの速そうなアルゴリズム移植しちゃいました。しかし、1.5倍くらいしか速くなりませんでした。その後最適化して10倍ほど速くしました(code_highlight_0_2_new.zip)。元のアルゴリズムも3倍ほど高速化しました(code_highlight_0_2_2.zip)。ベンチマークはtest.phpでやってみました。参考にしてください。Dのアルゴリズムですが、移植版だし相当いじってるのでオリジナルと言えるほどのものになってるとは思います。 -- sakurai? 2004-11-04 (木) 22:22:53
  • こんにちは。DelphiはD言語で対応できると言うことでしょうか。u*j*2*6*さん (D言語もDelphiも使った事が無いものでして)-- sky 2004-11-04 (木) 22:56:04
  • sakurai?さん情報提供と高速化ありがとうございます。このコードはこれまでのように改編してもよろしいのでしょうか? -- sky 2004-11-04 (木) 22:56:04
    • 私は力不足ですがこれまで通り対応言語の追加・追加の柔軟化を目標にしていきたいと思っています。-- sky 2004-11-04 (木) 22:56:04
  • どうぞどうぞ。自由に使ってください。私は作るのは良いけど、管理するの苦手なのでちゃんと人の使えるものにしていただければ、私はうれしいです。 -- sakurai? 2004-11-05 (金) 17:38:18
  • #pre<<<END ENDの書き方は、#code #endも使えるようになりませんか?何気にD言語研究のサイトで大量のコードハイライトを使ってるので変換がめんどい、、、。 -- sakurai? 2004-11-05 (金) 17:47:05
  • sky:いえ、delphiはdelphiでコードが要ります。もしよかったらこのコードを検討してもらえないでしょうか。 -- u*j*2*6* 2004-11-05 (金) 19:16:45
  • ↑コードの内容は、codehighlight.delphi.kwd.phpの追加と、「(*~*)」、「{~}」で囲まれる部分をコメントとして扱うこと、mb_strtolowerのかわりにstrtolowerを使う(古いPHP用)ことの3点です -- u*j*2*6* 2004-11-05 (金) 19:23:58
  • 実は私の管理するサイトでもsakuraiさんと同じく#code #endをつかったページが大量にあるのでなんとかしたいです。code.inc.phpを書いて中からcodehighlightをよぼうかな? -- u*j*2*6* 2004-11-05 (金) 19:29:11
  • 上記のアシストとして、よかったらテスターになってくれる人いませんか? (^^) 文字列置換プラグイン -- みこ 2004-11-05 (金) 20:16:23
  • 外出中でWebを見る環境しかないので曖昧な情報をお許しください。以前の方法に対応させるには、 変更後の convert_html.phpの900行目の正規表現を変更して #pre 言語名 に対応するようにし、 $stop_wordを #end に設定する方法で対処出来ませんか。 #codeは次の内容をcode.inc.phpとすれば動くと思います。-- sky 2004-11-05 (金) 20:23:23
    require_once(PLUGIN_DIR.'codehighlight.inc.php');
    function plugin_code_convert()
    {
        $args = func_get_args();
        $lang = array_shift($args);
        return plugin_codehighlight_body($lang, $args);
    }
  • sakuraiさん u*j*2*6*さん このコードはGPLで配布してもよろしいのでしょうか。前回の質問が言葉足らずですみません。 -- sky 2004-11-05 (金) 20:26:51
  • 私ののほうはGPLでオッケーです。 -- u*j*2*6* 2004-11-05 (金) 21:31:44
  • なんか大分機能が :D 。遅いのは、正規表現を使わないことを目標(移植性を良くするため)にしていたので、しょうがないのデス :P -- ahiru? 2004-11-05 (金) 22:05:43
  • GPLでオッケーですよと。 -- sakurai? 2004-11-05 (金) 22:23:18
  • *1 :) -- henoheno 2004-11-05 (金) 23:23:35
  • ahiruさんバージョンを正規表現や、strpos使って、コリコリ高速化してみました。その後、テーブルジャンプ使ったら凄いシンプルになってこれでちゃんと動くの???って思っちゃうような綺麗なソースになりました。9546msが777msくらいです。これもGPLオッケーです。正規表現で(a|b)*見たいなことをすると死んだりしたのでそのへん解決できればもうちょい早くなるかもしれないけど、これで私は満足な感じです。 -- sakurai? 2004-11-06 (土) 23:58:20
  • 構造をギリギリ前と同じにしたものが、&ref(): File not found: "codehighlight.inc.php_0_2_3" at page "自作プラグイン/codehighlight.inc.php/develop/Comment";,tokenizeとbuildをあわせたものが&ref(): File not found: "codehighlight.inc.php_0_2_4" at page "自作プラグイン/codehighlight.inc.php/develop/Comment";で、最適化バリバリしてソース綺麗にしたものが、&ref(): File not found: "codehighlight.inc.php_0_2_5" at page "自作プラグイン/codehighlight.inc.php/develop/Comment";です。 :) 以下作業履歴です。-- sakurai? 2004-11-07 (日) 00:05:17
    codehighlight.inc.php_0_2_3
    time: 3137コメント行終了検索を変更
    time: 2969isalphaなどのハッシュ化
    time: 2866convertのインライン化
    time: 2408getcのインライン化
    time: 2375identifierの正規表現化
    time: 2174文字列リテラルのstrpos関数化
    time: 2074replace_speceのインライン化
    time: 2121バグ修正
    time: 1916isalphaのハッシュをtokenizerのローカル変数にする。
    codehighlight.inc.php_0_2_4
    time: 1354tokenizerとbuilderを統合して、tokenを使わないで直接文字列出力する。
    codehighlight.inc.php_0_2_5
    time: 1112関数のインライン化
    time: 960評価する順番を統計取ってみて、呼び出し順を変えた。
    dソースの統計
    space1346
    id970
    string186
    comment66
    sharpid0
    cソースの統計(これの#からはじまるのカウントし忘れた。まいいや。)
    space1265
    id971
    string114
    sharpid0
    comment10
    comment1
    commentall1
    time: 882if文の順番かえる。とした。100ms違う。
    time: 840hashの初期化ミスを直す。for($i="a";$i<"z";$i++)とやるとZYとかいうデータも入ってた。
    time: 773switch文用ハッシュを作って、switch文で分岐。テーブルジャンプするので速くなった。統計取った意味がなくなった。可読性が一気に上がった。
    time: 761switch用ハッシュを使うことで、メインループ内で言語による分岐がなくなった。言語が増えてもパフォーマンスに影響しにくくなった。とにかく読みやすくソースを掃除。見れるソースになった。
  • kinabaさんとこみてたら、http://rafb.net/paste/なサイトがあって、ここだといろいろな言語に色つけてくれてるみたい。負けられませんな。行番号がでるのが何気に良いなと思いました。 -- sakurai? 2004-11-07 (日) 02:08:44
  • http://rafb.net/paste/highlight.phpsこれがソースだ。bsdライセンスみたい。 -- sakurai? 2004-11-07 (日) 02:19:25
  • convert_html.php.01.diff従来の"#code 言語名" … "#end"で呼び出すpatchです。dev:PukiWiki/1.4/ちょっと便利に/複数行のプラグイン引数を可能にで仕様変更があるようなので今後使い方がまた変わってしまう可能性が高そうです。 -- sky 2004-11-08 (月) 14:51:29
  • 複数行のプラグイン引数を可能に、、、があったから、今の形式にしたんですね。なるほど。 -- sakurai? 2004-11-08 (月) 18:41:45
  • Delphi,C#,VB,SQL,PL/I,HTMLに対応しました。codehighlight_0_2_5に適用しました。&ref(): File not found: "codehighlight_0_2_6.zip" at page "自作プラグイン/codehighlight.inc.php/develop/Comment";です。 -- sakurai? 2004-11-08 (月) 18:44:30
  • delphi,c#,vb,sql,pli,htmlで動くはずです。 -- 2004-11-08 (月) 18:47:44
    #から始まるコメントのバグ対策
    defineを使う。php初心者なので今まで知らなかった。
    キーワードファイル名をcodehighlight.kwd.bash.phpのように変更する。このほうが見やすい。
  • {}カッコのネストをみてピロピロ表示非表示できたらいいなと。urlぽかったら、リンクはるとか。 -- sakurai? 2004-11-08 (月) 18:54:41
  • PEAR:Text_Highlighter 使ってみてはどうでしょうか -- 2004-11-08 (月) 22:52:39
  • codehighlight_0_2_6.zip を元にいくつかの変更を加えてref(code_0_2_7.tgz);にしてみました。 -- sky 2004-11-09 (火) 01:57:39
    • codehighlight と codeinclude の2つのプラグインを1つにまとめてcodeに変更(使い方は同じ)
    • プラグイン pre を不要
    • tabの幅を変更可能
    • キーワードファイルをプラグインディレクトリ以下のcodeディレクトリに移し名称を keyword.bash.phpのように変更
  • それぞれの言語に固有の部分、特にコメントの指定方法をキーワードファイルに移す方法と行番号を表示する方法を検討しています。高速化を維持したまま変更するのは難しそうです。最も単純なのはパターンマッチの始めにコメント開始文字列を判定する方法なのですが。 -- sky 2004-11-09 (火) 01:57:39
  • 仕様変更が多いので開発版と安定版に分けた方が良いのでしょうか。このページは開発専用にして別ページにマニュアルを記述した方が分かりやすくなりそうです。 -- sky 2004-11-09 (火) 01:57:39
  • css,TeX,Lispに対応させました&ref(): File not found: "code_0_2_8.tgz" at page "自作プラグイン/codehighlight.inc.php/develop/Comment";。bugが2つあったので修正しました(/に対応していない, コメントの#の直後に改行が来ると次の行もコメントになる) -- sky 2004-11-09 (火) 05:05:39
  • ついでに、PukiWiki 自身のソースも対応しません? (^^; プラグインが色つきになるとアクションプラグイン(source)の意味がでてくるので・・・ -- みこ 2004-11-09 (火) 13:56:44
    • むろん、ハイライトするプラグインは1.4.4をベースとするということで・・・ -- みこ 2004-11-09 (火) 14:01:18
  • BugFixサンクスです。css,Tex,Lisp対応すばらしい。いい感じですね。コメントの指定方法をキーワードにですか、、、。始まりと終わりを指定すれば自動的にってことですね。私も考えてみます。ライン情報は、コピペしたいので、ソースとは切り離したほうがよいです。テーブル使うかcssがいいと思います。ライン情報表示非表示をpukiwikiのプラグインオプションで指定できると良いでしょうね。開発用ページはあったほうがうれしいですね。ページを汚くしてしまっている気がします。 -- sakurai? 2004-11-09 (火) 14:16:44
  • PukiWikiのハイライトですか、、、。なるほど。アクションプラグインってなんでしょうか? -- sakurai? 2004-11-09 (火) 14:24:33
  • こういうhttp://f38.aaa.livedoor.jp/~sakurai/pukiwiki/diki.html ツリー表示するの作ってるのでプラグインの仕様に入れてください。でも、JavaScript使ったプラグインはPukiwikiだと、反則なのかな? -- sakurai? 2004-11-09 (火) 15:17:47
  • コメントの指定方法の変更は、先にコメントかどうかを判定するので良いと思います。ただ、マッチングしていては遅いので、そこでも、コメント開始文字のハッシュを作っておいて判定してみてはどうでしょう。1文字あたりに1回ハッシュを参照するだけですむのでそんなに遅くならないんじゃないかと思います。がんばってみてください。 -- sakurai? 2004-11-09 (火) 16:01:12
  • アドバイスありがとうございます。>sakuraiさん。出来るだけソースを汚さないようにやってみます。 -- sky 2004-11-09 (火) 16:45:22
  • PukiWIkiのソースを差分表示等でハイライト出来ればよさそうですね。 -- sky 2004-11-09 (火) 16:48:02
  • すみません、正式にはコマンドです。<アクションプラグイン プラグインのソースで plugin_xxxx_action となっているので私的にそう呼んでいるだけした(..; -- みこ 2004-11-09 (火) 19:26:54
  • PEAR::Text_Highlighterは強力そうですね。XML書いておくと、コード生成してくれるみたい。これで速くて、インストールが楽なら使えるかも。でも、使い方がわからない。。。genelatorとか動かすとコマンドプロンプトが消える。php初心者だからわからんぞー!!ググっても日本語のページみあたらんし、、、。英語苦手なのでちまちまやってみます。 -- sakurai? 2004-11-09 (火) 20:02:42
  • PEAR::Text_Highlighterを使わなくても大方の言語に対応できそうです。新たなる拡張の糸口も掴みました。しかし、PukiWiki, HTML, TeX, gnuplot あたりはプログラム言語ではないですね。 -- sky 2004-11-11 (木) 02:29:31
  • キーワードでcとC#のcs, cssが紛らわしいですね。C#はcsharpの方が良いかも知れません。あとvbも略すべきかどうか。 -- sky 2004-11-11 (木) 02:32:30
  • いつのまにか code になったのですね (^^; では提案。出力タグも XHTML の <code> にするのはいかが? (^^) -- みこ 2004-11-11 (木) 12:44:40
    • でもって、<code class="sql"> とか <code class="c"> とか言語名がクラス名になると・・・ -- みこ 2004-11-11 (木) 12:50:08
    • やりたいのは bash などのコマンドラインの背景だけ変えたいとかの意味なんですけどね (^^; (今でも出来るのでしょうけど・・・) -- みこ 2004-11-11 (木) 13:00:57
  • あと、PHP のときは XHTML Not Vaild です。(PHPの内部関数に頼っているのでしょうがないとはおもいますが・・・) -- みこ 2004-11-11 (木) 15:11:48
    • みこさんの提案の方がcssを素直に出来そうですね。 -- sky 2004-11-12 (金) 03:32:53
    • Firefoxではcodeの背景を変更しても文字の周囲しか変わりませんでした。preでなければ背景全体が変わらないようです。 -- sky 2004-11-12 (金) 09:22:53
  • PEAR::Text_Highlighterは大変そうなのでみるのやめました。軽量なパーサってことでがんばりましょう。 -- sakurai? 2004-11-11 (木) 20:42:31
  • http://f17.aaa.livedoor.jp/~labamba/?%A5%B5%A5%F3%A5%D7%A5%EB%A5%B3%A1%BC%A5%C9 ピロピロ機能を入れてみました。こんな感じで動きます。 -- sakurai? 2004-11-11 (木) 20:45:22
  • ライン表示、ピロピロ機能、VB文字列対策、Perlの定義ファイルバグ対策です。&ref(): File not found: "code_0_2_9.zip" at page "自作プラグイン/codehighlight.inc.php/develop/Comment"; -- sakurai? 2004-11-11 (木) 21:43:07
  • codeタグのtableを使っているものと、通常のpreとぴったりあわせるには、preのmargin-rightをpx単位に直す必要がありました。また、ライン表示、ブロック表示の切り替えができません。src2HTMLのオプションを使い分けて上のほうでやっていただけると助かります。 -- sakurai? 2004-11-11 (木) 21:48:17
  • JavaScriptが分からなくて"ピロピロ機能"の扱いには困っていました。機能追加とBugfixありがとうございます。言語によっては"{"と"}"ではなくbeginとendを使う物があるのでそれらにも対応したいですね。Rubyのように無節操に両方とも使える言語も存在するので言語毎に切替えて良い物でしょうか。
    • 行数表示はcssのdivでは切替えに成功しています。tableとの使い分けはソースファイルのオプションで出来るとよさそうですね。-- sky 2004-11-12 (金) 03:32:53
  • r0.3.0をアップしました。行番号と"ピロピロ機能"もオプションで指定できるように追加しました。-- sky 2004-11-12 (金) 10:32:53
    • Perl,Ruby等の$の後の文字による誤判定も解決しました。$を例外としてその後に続く記号1文字か文字列を切り出しています。追加した言語(EmacsとVimの定義ファイルから持って来ました)。PukiWiki, Pascal, Ada, AWK, Fortran, Scheme-- sky 2004-11-12 (金) 10:32:53
  • そうそう、昔のコードで無理やりパッチをあてて XHTML Vaild にしたのを思い出しました。参考になれば・・・ -- みこ 2004-11-12 (金) 15:08:29 0.3.0(116行目付近)
         if ('php' == $lang) {
           ob_start(); //出力のバッファリングを有効に
           highlight_string($data); //phpは標準関数でハイライトしてくれるようだ
           $_str = ob_get_contents(); //バッファの内容を得る
           ob_end_clean(); //バッファクリア?
           $_str = str_replace("\n", '', $_str); //$_str内の"\n"を''で置き換える
    +//Vaild XHTML 1.1 Patch (by miko)
    +      $_str = preg_replace('#<font color=\"#', '<span style="color:', $_str);
    +      $_str = preg_replace('#</font>#', '</span>', $_str);
    +//Vaild XHTML 1.1 Patch (by miko)
           $str =  "<pre class=\"highlight\">{$_str}</pre>";
         } else {
    • ありがとうございます。r0.3.1で取り込みました。 -- sky 2004-11-12 (金) 16:51:01
  • ピロピロ機能の追加ありがとうございます。いろいろ、めんどくさかったと思いますが、、、。$rndをちゃんと直してくれたり、こうやって欲しいなと思ってたことをやっていただき、誠にありがたいことです。ピロピロ機能は、文法解析するとめんどくさそうなので、pythonのネスト見て構造化で対応してあとは、ちゃんと書いてねってことで逃げようかと思っています。 -- sakurai? 2004-11-12 (金) 22:09:18
  • もう、20言語対応ですよ。凄いなぁ。keywordファイルは25個あるし。csとcsharpが2つ入ってますが片方でいい気がします。 -- sakurai? 2004-11-12 (金) 22:11:45
  • SQLのキーワードファイルに、$capital = true;を入れてください。 -- sakurai? 2004-11-12 (金) 22:34:14
  • オプションの"tree" ですが、"outline" のほうが一般的な気がします。 -- ahiru? 2004-11-13 (土) 14:15:15
    • 私も最初、ピロピロ機能ってなんだぁ?って思いました(笑) -- アクア? 2004-11-13 (土) 16:01:13
  • 適当にピロピロって呼んでたら、skyさんが採用しちゃうんだもん。アウトライン機能と呼びましょう。アウトライン機能をpythonモードで作ってみましたが、複数行にわたるコメントや文字列がある言語だと破綻することが分かりました。もうちょっと考えないとなぁ。 -- sakurai? 2004-11-13 (土) 17:31:41
  • 私も良い名称が思い浮かばなかったものでそのまま使っていました。outlineに変更しました。SQLの大文字対応もしました。r0.3.3 -- sky 2004-11-13 (土) 18:54:41
  • コメントの定義ファイル化してみました。 -- sakurai? 2004-11-13 (土) 20:37:28
  • 作業内容0_3_2ベースなので、0_3_3ベースに変更中 -- 2004-11-13 (土) 20:38:00
  • &ref(): File not found: "code_0_3_4.zip" at page "自作プラグイン/codehighlight.inc.php/develop/Comment"; URLのハイライトと、コメントを定義ファイル化したものです。 -- sakurai? 2004-11-13 (土) 21:12:05
  • コメントの定義が柔軟になったので今後は新言語追加も楽になりそうですね。ありがとうございます。ただ、識別子にURLが使われる事は有るのでしょうか。有ったとしてもIDENTIFIREでは正規表現で弾かれてしまいます。 -- sky 2004-11-13 (土) 23:20:41
  • 0.3.4、78行目にtreeの痕跡が…outlineが無効になります(^^; -- アクア? 2004-11-14 (日) 00:44:10
  • 何か私も参加できれば(?)と思い、HSPという言語のキーワードファイルを作ってみました。
    とは言え私自身、昔はよく遊んでましたが最近はあまり触っていないので
    2.61の添付マニュアルからキーワードを抜き取っただけだったりします…(^^;
    それに本家にもWikiがあるのですが別のWikiクローンのようなので実はあまり需要もないカモ(笑)
    とりあえずキーワード定義ファイルの作りがあまりよくわからなかったので
    言語体系が似ているCの定義ファイルをほとんどそのまま利用し、
    {~}ブロックが有効なのでcodehighlight.inc.phpを自分で直接編集して対応しました。
    変なトコがあったらどなたか修正していただけるとありがたいですm(_ _)m
    それと、pukiwiki.ini.php内で$fixed_heading_anchorがデフォルトで1だと思うのですが
    この状態だとCのコメント終了の「*/」や今回作ったHSPのラベル開始「*」の行で
    自動的に#xxxxxxがついてしまうようです。コレは回避不可能でしょうか? -- アクア? 2004-11-14 (日) 02:04:35
    • VB同様、"hoge\\"みたいな文字列があると文字列範囲の認識に失敗してしまうようなので
      VBの定義を参考にVBSTRING_LITERALを追加しました。VBじゃないけど…(^^;
      添付ファイル削除できないのに失敗したナァ… -- アクア? 2004-11-14 (日) 02:22:37
    • アクアさん毎回バグ報告だけでなく今回は新しい言語定義ファイルまで本当にありがとうございます。早速r0.3.5で取り込みました。仕様変更が早いのでr0.3.3とr0.3.4の書式が混ざっていましたが修正したので特に問題は無いと思います*2。VBSTRING_LITERAL は NONESCAPE_LITERALの方が妥当そうなので名称変更しました。 -- sky 2004-11-14 (日) 04:39:46
    • 行頭の*の後にラベルが付く現象はdev:PukiWiki/1.4/ちょっと便利に/複数行のプラグイン引数を可能にでユーザ定義を置換しないルールの <<PRE:EOF を使うと回避できるようです。マニュアルも訂正しました。 -- sky 2004-11-14 (日) 04:39:46
    • 拙作定義ファイルの取込&修正*3ありがとうございます♪
      実は私もHSPは2.55までしか使っていないので最新バージョンはあまり知りません(笑)
      とりあえずHSP2.61アーカイブに添付されているサンプルコードでテストした限りは大丈夫そうです。
      ただ、アウトライン機能だけ抜けていたようですが…&sad;
      今後の流れとしてはcodehighlight.inc.php自体に
      アウトラインが有効な言語をハードコーディングしてもらうよりも
      定義ファイル側にBLOCK_START/ENDを定義しておく方がいいのでしょうか? -- アクア? 2004-11-14 (日) 16:19:04
    • Cの定義ファイルの修正忘れてました。アウトラインも定義ファイルに移した方が良いですね。 -- sky 2004-11-14 (日) 17:40:04
  • keyword.hsp.php を見てて思ったんですけど、色が全部同じだと(全部 => 2... w)、なんだか味気ないので、制御構文というカテゴリを追加してはどうでしょうか > highlight_css に -- ahiru? 2004-11-14 (日) 10:13:59
  • if とか while とか、です。 -- ahiru? 2004-11-14 (日) 10:16:16
  • urlは、pukiwikiのソースのときにidentifireをチェックしないとなと思って入れました。 -- sakurai? 2004-11-14 (日) 16:35:43
  • HSPいいですね。>アクアさん。BLOCK_START/ENDは定義ファイルでするほうがよいでしょうね。色は味気ない対応しかしてないのが多いですね。 -- sakurai? 2004-11-14 (日) 16:40:36
  • IIS鯖でPukiWikiを稼働させているのでIIS標準(?)のASP/VBScriptの定義ファイルも欲しいナァ…なんて<他力本願
    VIMのsyntaxファイルを参考にしようとして挫折中&sad; -- アクア? 2004-11-14 (日) 17:35:30
  • キーワード項目は再考する必要が有りそうですね。そしてプログラム言語とTeX, PukiWikiのようなマークアップ言語では区別すべきでしょう。特に後者の表示はほとんどハイライトされていませんね。キーワードファイルはVIMのハイライトキーワードの部分を強引に切り出しただけです。 -- sky 2004-11-14 (日) 17:40:36
  • このプロジェクトは他より更新頻度が早くこのことがPukiWiki.orgの管理者の御迷惑にならないか確認しました->雑談。現状では問題は無いそうです。ただ、henohenoさんの回答にも有るようにこのままの形態で開発を続けると複雑化しそうです。そこで提案です。とりあえず3つの案を考えてみました。 -- sky 2004-11-14 (日) 17:40:36
    1. PukiWIki.devのBugtrackに移動する。dev:BugTrack
    2. 新しくWikiを置きそこで開発を続ける。例:plus
    3. 現状のままで工夫する。(コメントと提案・更新履歴の分離など)
    • iiiでよいかと思います。ルール決めていただければ大丈夫かと。なんとなく、コメント以外の部分は書きにくいのが現状なので、思いついた提案は提案の表に書き込むとか、バグはバグ表に書き込む。アップしたら、更新履歴に書き込むとか。 -- sakurai? 2004-11-15 (月) 18:41:46
      • 了解。現状のままコメントに意見を出してもらい、それを再構成する方向でいきましょう。ページを構成するルールはBugTrackに習う方向でいきませんか。 -- sky 2004-11-15 (月) 18:56:47
      • BugTrack使ったことないのですが、BugTrackに習っていきましょう。 -- sakurai? 2004-11-17 (水) 14:35:59
  • 行単位で解析する別の関数を作ってdiffに対応させてみました*4。FortanやMakeもこれで対応できそうです。ここ数日は多忙なので暇が出来たらページの再構成と新版をUpすることにします。 -- sky 2004-11-18 (木) 07:57:15
  • おお、いいですね。私も、別なプログラムはじめてしまったので、しばらく開発は休みます。少し安定させたいなぁとも思いますし。いろいろいじったから、バグないか心配ですし。報告ないので今のところ問題ないのでしょうけど。 -- sakurai? 2004-11-18 (木) 13:38:21
  • オレンジニュースhttp://secure.ddo.jp/~kaku/tdiary/20041124.htmlで紹介されてました。ちょいとうれしいなっと。 -- sakurai? 2004-11-24 (水) 18:40:01
    • どおりでサンプルページのアクセスが増えたのですね。あと、開発の話はここよりもPukiWikiの開発サイトの方がよさそうなのでそちらでカテゴリ分けして行おうと思っています。 -- sky 2004-11-24 (水) 20:33:57
      • 了解です。準備できたら連絡ください。<開発サイト -- sakurai? 2004-11-24 (水) 22:34:59
    • 日記サイトとかでも取り上げられていますよ :) -- henoheno 2004-11-24 (水) 21:32:24
      • ここによるとScriptでgrepと組み合わせるといった事が書かれていますね。 -- sky 2004-11-25 (木) 10:10:11
  • phpを<?php ?>タグがない場合は、内部で<?php ?>タグをつけて変換して、はずして表示ということをしたバージョンを作りUPしました。&ref(): File not found: "code.inc.php_0_3_6" at page "自作プラグイン/codehighlight.inc.php/develop/Comment";この場合どういった作業が必要になるのでしょう?>skyさん とりあえず、履歴に追加しましたが、、、。 -- sakurai? 2004-11-25 (木) 05:17:30
    • 仕様としてこれで問題ないかどうか、考えてもらって問題なければ採用ってことにしてください。>skyさん -- sakurai? 2004-11-25 (木) 05:23:52
      • phpにタグを付けるのは良いですね。ただこれによる問題は発生しないのでしょうか。今の所、更新は履歴に追加するだけでしたのでそれで結構です。>sakuraiさん。ただ、次の版はいくつか新機能を追加したいと思っていますのでr0.4.0としてr0.4系列の更新履歴を単独のページで構成した方が分かりやすくなるのではないかと思っています。 -- sky 2004-11-25 (木) 10:19:50
      • ahiruさんに指摘された個所直しました。<?phpがなくて、?>があった場合です。code.inc.php_0_3_7でUPしておきます。 -- sakurai? 2004-11-25 (木) 18:18:29
      • phpも他の言語と同じようにキーワードファイルで定義しましょうか。表現は劣りますが、CSS設定の柔軟性とアウトラインが利用できるようになります。 -- sky 2004-11-25 (木) 18:32:37
  • 既に同様のプラグインが存在していたようですね。dev:PukiWiki/1.4/自作プラグイン/vim2html -- sky 2004-11-25 (木) 18:24:30
    • 宣伝にはよいのかもしれませんが、最新の20件に3つも出てしまうのは、うざい気がしますね。PukiWikiの開発サイトに移行しましょう。 -- sakurai? 2004-11-25 (木) 20:07:54
  • 提案事項*5をまとめていて感じたのが、これだけ大掛かりな物だと単独でWikiをたてた方が良いように思います。キーワードファイルはテスト中の物も合わせて40越えていますし、今後多くの機能追加があると困りませんか。あと、cvs的な利用が実現できるならばこの開発に活かしたいですね。 -- sky 2004-11-26 (金) 13:23:32
    • 提案事項→「その他」のタブ文字についてですが、たぶんタブコード・半角/全角空白なんかをユーザー定義の記号で区別したいんじゃないでしょうか。タブなら「>」、全角空白なら「□」みたいに。スタイルシートで指定できれば自分で周りの文字と違う色・サイズにできるし。 -- u*j*2*6* 2004-11-26 (金) 18:21:47
    • 見落としていました。済みません。sakuraiさんの提案と少し違うようですが実現できたら良いですね。tab文字はmakeに対応させる際に表示方法を迷った事もあり、検討させて頂きます。開発サイトのBugTrackで提起します。-- sky
  • 提案事項まとめサンクスです。考えはじめちゃったんで書くだけ書き出してみました。別にこれからやるぞって気持ちで書いたのではないです。書いておきながら何なんですが、cvs的な機能なんて難しくて作れませんよ。ソースを扱うのだからできてもいいなくらいの気持ちで書いただけで、、、。 -- sakurai? 2004-11-26 (金) 16:42:55
  • 勝手ながら、skyさんのサイト?のBugTrackに書き込んでみました。BugTrackいいかんじですね。 -- sakurai? 2004-11-26 (金) 17:57:11

*1 いいぞ!複数の改善案件が同時並行して進んでいる!期待以上の爆発力だ!
*2 HSPがわからないので確認できません
*3 Cの定義ファイルにあるSPECIAL_IDENTIFIRE1とかpattern1とかがどこにも使われていないような気がしたのでおかしいとは思ってたんですよね…
*4 サンプルページ参照
*5 その他は意味が良く分かりませんでした

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2007-10-05 (金) 13:07:38
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.566 sec.

OSDN