◀ANSI版開発トップへ
  • 56 数字色分け再修正
    • 98 RE: 数字色分け再修正
      • 103 Re2: 数字色分け再修正
        • 105 Re3: 数字色分け再修正
          • 106 Re4: 数字色分け再修正
        • 107 Re3: 数字色分け再修正
          • 111 Re4: 数字色分け再修正
            • 117 単語認識
              • 120 Re:単語認識
        • 108 正規表現ライブラリ
          • 110 Re:正規表現ライブラリ
            • 112 Re2:正規表現ライブラリ
            • 113 Re2:正規表現ライブラリ
              • 115 Re3:正規表現ライブラリ
                • 118 Re4:正規表現キーワード
                  • 122 Re5:正規表現キーワード
                    • 161 Re6:正規表現キーワード
                      • 166 Re7:正規表現キーワード
                • 129 Re4:正規表現ライブラリ
                  • 164 Re5:正規表現ライブラリ
        • 173 Re2: 数字色分け再修正
          • 174 強調機能いろいろ
  • [56] 数字色分け再修正 みく 2001年02月17日 16:38

    数字の色分けを再び修正してみました。
    仕様上どうするかというのがあり、
    また色設定が1個増えることになるので
    しばらく使ってみて適当に最適化してください。
    ・小数点の扱い
    ・0を省略した少数
    ・+記号
    ・VBの16進数
    などなど。
    • [98] RE: 数字色分け再修正 げんた 2001年02月28日 06:43

      ▼みくさん
      >数字の色分けを再び修正してみました。
      >仕様上どうするかというのがあり、
      以前よりは良くなっていますが、問題が1つ。abcd000 のようにアルファベット+数字になっている場合に数字部分が色分けされてしまいます。半角数字を色分けというのは「数字として認識される部分を色分け」だと思いますから、変数名に入っている数字は色分けされてほしくはないのです。

      それをどうやって実装するかを現在考え中です。
      • [103] Re2: 数字色分け再修正 みく 2001年02月28日 19:54

        ▼ げんたさん
        > ▼みくさん
        > >数字の色分けを再び修正してみました。
        > >仕様上どうするかというのがあり、
        > 以前よりは良くなっていますが、問題が1つ。abcd000 のようにアルファベット+数字になっている場合に数字部分が色分けされてしまいます。半角数字を色分けというのは「数字として認識される部分を色分け」だと思いますから、変数名に入っている数字は色分けされてほしくはないのです。
        正しい動きです。無題(規定値)ではキーワードを処理
        しないので、変数名という概念はありません。人がそう
        思っているだけで、コンピュータはそんなこと知りませ
        ん。キーワード設定を行えば望みの動作をするはずです。

        > それをどうやって実装するかを現在考え中です。
        どうしてもやりたいなら、数字の1個前の文字を見て、
        [A-Za-z_]なら数値にしないです。
        でも、これをすると問題が出ますね。やってみればわか
        ると思います。

        あと、VB用&Hはコメントアウトしたほうが良さそうで
        す。{int h1; a = &h1; }とすると、数値になります。
        (VBソースを見る人は少ないと思うから)

        それはさておき、正規表現キーワードのプロトタイプ
        をしてます。でも私はC++をあまり知らないので、どう
        実装するかわかりません。だれか作りませんか?
        プロトタイプソースあります。
        ...って誰も手挙げる人いないだろうな...
        • [105] Re3: 数字色分け再修正 じぇぷろ 2001年02月28日 20:47

          ▼ みくさん
          > それはさておき、正規表現キーワードのプロトタイプをしてます。
          おお、待ってました。これですよ、これ。これがほしかった。でもパフォーマンス重視の人にはどうかな。

          別の記事に書きましたが、検索、置換の致命的バグの件も是非宜しくお願い致します。m(__)m
          • [106] Re4: 数字色分け再修正 みく 2001年02月28日 21:40

            ▼ じぇぷろさん
            > ▼ みくさん
            > > それはさておき、正規表現キーワードのプロトタイプをしてます。
            > おお、待ってました。これですよ、これ。これがほしかった。でもパフォーマンス重視の人にはどうかな。
            もちろん、使うか使わないかはその人次第。
            やみくもに登録すれば遅くなるのは必至。
            覚悟はしてもらわないと。
            K2Editorでは、たくさんヒットすると明らかに遅くなるのがわかります。

            アウトライン解析部分のDLL化とかも考えてますが、こっちは私のVC++
            勉強をかねてるので、いつどうなるかはわからんです。
            #初心者には1からもの作るより、何かに寄生するようなもの作るほうが楽なんで。
            ということで、私が注目している方向が想像できると思いますです。
            (というか、自分が欲しいと思ってる機能なんですけどね。)

            > 別の記事に書きましたが、検索、置換の致命的バグの件も是非宜しくお願い致します。m(__)m
            ちょっとみただけでは、さっぱりでした。
            なんで検索があんなに複雑なの?
        • [107] Re3: 数字色分け再修正 げんた 2001年03月01日 02:19

          ▼ みくさん
          > 正しい動きです。
          みくさんが意図した動作かもしれませんが、abcd000の000だけ色分けされたところで何の意味があるのかというところが問題なわけです。
          たとえばa0=1;で1のみならず0も色分けされたらかえってわかりにくくなりませんか。

          そもそも基本設定(文章用)では半角数字の色分けはほとんど意味がないのでそこで議論してもらちがあかないと思いますが。

          > キーワード設定を行えば望みの動作をするはずです。
          ?数字は任意の関数名・変数名に設定できるんですからキーワードは関係ないですよね。
          • [111] Re4: 数字色分け再修正 みく 2001年03月01日 19:47

            ▼ げんたさん
            > ▼ みくさん
            > > 正しい動きです。
            > みくさんが意図した動作かもしれませんが、abcd000の000だけ色分けされたところで何の意味があるのかというところが問題なわけです。
            > たとえばa0=1;で1のみならず0も色分けされたらかえってわかりにくくなりませんか。
            >
            > そもそも基本設定(文章用)では半角数字の色分けはほとんど意味がないのでそこで議論してもらちがあかないと思いますが。
            ソース中の色分け表示をTRUEから規定値でFALSEに変更してください。

            > > キーワード設定を行えば望みの動作をするはずです。
            > ?数字は任意の関数名・変数名に設定できるんですからキーワードは関係ないですよね。
            大いに関係あります。
            • [117] 単語認識 げんた 2001年03月03日 08:54

              ▼ みくさん
              >> キーワードは関係ないですよね。
              >大いに関係あります。
              やっと意味が分かりました。キーワード設定と単語認識の間に関係があること自体がバグでしょう。

              というのは、キーワード設定がなされていない場合はURLの前に文字列が付いていてもhttpで始まる部分をURLと認識するからです。認識してくれた方が便利かどうかは意見が分かれるかもしれませんが、さすがにこれはキーワード設定と関係ない話ですので。

              特定の文字しかキーワードに含めることができなくてじぇぷろさんが困っているという話もあるので、全体的に処理を見直した方がいいと思いますが、問題はここでやるか後に回すか。今やろうとするとじぇぷろさんの変更を取り込むのがさらに遅れてしまいます。
              • [120] Re:単語認識 みく 2001年03月03日 09:33

                > ...、問題はここでやるか後に回すか。今やろうとするとじぇぷろさんの変更を取り込むのがさらに遅れてしまいます。
                全部やろうとすると大変なので、1個ずつ片付けていったほうが
                よいかと。
                検索・置換の件もありますし。
        • [108] 正規表現ライブラリ げんた 2001年03月01日 02:26

          ▼ みくさん
          > プロトタイプソースあります。
          正規表現についてはGNUのものがあるという話を聞いたことがある。K2EditorはGPLではないのでそれを使わずに独自に実装しているようですが、こちらはGPL(?)なので問題なし。LGPLならいずれにしても問題なく流用できますけどね。

          他の正規表現ライブラリとしてBREGEXPというやつ(DLL配布)もありますけど。個人的にはjre32.dllに加えてこれも検索で使えるようになったらいいと思っています。
          • [110] Re:正規表現ライブラリ じぇぷろ 2001年03月01日 11:17

            ▼ げんたさん
            > ▼ みくさん
            > > プロトタイプソースあります。
            > 正規表現についてはGNUのものがあるという話を聞いたことがある。K2EditorはGPLではないのでそれを使わずに独自に実装しているようですが、こちらはGPL(?)なので問題なし。LGPLならいずれにしても問題なく流用できますけどね。
            >
            > 他の正規表現ライブラリとしてBREGEXPというやつ(DLL配布)もありますけど。個人的にはjre32.dllに加えてこれも検索で使えるようになったらいいと思っています。
            使った事ないけど、jre32.dllに化けるソフトで使えるようになるのでは?それとみく氏のポイントは正規表現そのものではなく、強調キーワードに正規表現が使える、という点です。したがってキーワード1/2が不要になる?いやそうではないかな。K2Editorのように正規表現1つであたかもキーワード1つのように記述できれば確かに不要になるでしょうが、そうなるとキーワードセットの扱い(仕様)を根本から見直す必要がありそうですね。
            • [112] Re2:正規表現ライブラリ みく 2001年03月01日 19:55

              ▼ じぇぷろさん
              > ▼ げんたさん
              > > ▼ みくさん
              > > > プロトタイプソースあります。
              > > 正規表現についてはGNUのものがあるという話を聞いたことがある。K2EditorはGPLではないのでそれを使わずに独自に実装しているようですが、こちらはGPL(?)なので問題なし。LGPLならいずれにしても問題なく流用できますけどね。
              > >
              > > 他の正規表現ライブラリとしてBREGEXPというやつ(DLL配布)もありますけど。個人的にはjre32.dllに加えてこれも検索で使えるようになったらいいと思っています。
              > 使った事ないけど、jre32.dllに化けるソフトで使えるようになるのでは?それとみく氏のポイントは正規表現そのものではなく、強調キーワードに正規表現が使える、という点です。したがってキーワード1/2が不要になる?いやそうではないかな。K2Editorのように正規表現1つであたかもキーワード1つのように記述できれば確かに不要になるでしょうが、そうなるとキーワードセットの扱い(仕様)を根本から見直す必要がありそうですね。
              正規表現を最初から作る気なんてないです。JRE32.DLLを使ってです。
              (JRE32.DLLの競争相手になるべく作ってもいいかも)
              仕様(キーワード1・2)を変更する気はありません。
              正規表現キーワード設定タブでも追加して、
              正規表現を使いたい人は「正規表現を使う」にチェックを
              入れて、キーワードを登録すれば動作するようになる、な
              んてのはどうでしょう(<-適当。まだ、そこまで考えてな
              いんです)。
            • [113] Re2:正規表現ライブラリ げんた 2001年03月02日 02:32

              ▼ じぇぷろさん
              >使った事ないけど、jre32.dllに化けるソフトで使えるようになるのでは?
              そんなものがあるんですか。

              > 強調キーワードに正規表現が使える、という点です。したがってキーワード1/2が不要になる?
              そこまでは使わないのではと思います。もっとも、正規表現の(|)を使えばキーワード数に関係なく1行で表現できるというのはたぶん負荷が高くなるだけなのでやめましょう。

              利用比率に依るかもしれませんが、キーワード処理や色分けで複雑なことをさせるのであれば再描画のときに色分けの再評価が起こらないようにしないとパフォーマンスが落ちるかもしれません。(これは横スクロール、Vertical Lineの話にも絡んできますけど)
              • [115] Re3:正規表現ライブラリ じぇぷろ 2001年03月02日 20:53

                サーバに繋がらず、返信が消えた・・・ はー。萎えたのであっさり書きます。

                ▼ げんたさん
                > ▼ じぇぷろさん
                > >使った事ないけど、jre32.dllに化けるソフトで使えるようになるのでは?
                > そんなものがあるんですか。
                ヘルプ参照。ソース付き。

                > そこまでは使わないのではと思います。もっとも、正規表現の(|)を使えばキーワード数に関係なく1行で表現できるというのはたぶん負荷が高くなるだけなのでやめましょう。
                秀丸、K2Editorでサポートされているこの機能を私はほしいです。その理由はTeXキーワードを見れば明らか。(苦労した。これでもまだ不十分)
                TeXでは「\コマンド{環境}」というものが色々あります。一般語とキーワードを区別するために例えば{table}とかっこ付きでキーワード登録してもヒットしてくれません。それは今の単語認識が前後のスペースなどに依存しているからです。
                • [118] Re4:正規表現キーワード げんた 2001年03月03日 08:54

                  >{table}とかっこ付きでキーワード登録してもヒットしてくれません。
                  これはキーワードに登録できる文字が限定されているからです。あまりいい仕様とは思いませんが。アルファベット、数字と$#@くらいが用意されていたはず。@はバッチファイルのキーワードの話が出たときに追加したような気がする。
                  • [122] Re5:正規表現キーワード じぇぷろ 2001年03月03日 12:00

                    ▼ げんたさん
                    > >{table}とかっこ付きでキーワード登録してもヒットしてくれません。
                    > これはキーワードに登録できる文字が限定されているからです。あまりいい仕様とは思いませんが。アルファベット、数字と$#@くらいが用意されていたはず。
                    @と\は私が追加しました。前にTeX2を作る前にテストで{}を追加してやってみたところ今度は他のキーワードを認識しなくなったので諦めたような気がします。TeXでは \begin{figure} のようにキーワードと成り得る語(今の場合は\begin)をブランクなしで使いますが、これだと{}もワードの構成文字と見なすので、\beginをキーワードと見てくれず、うまくいかないのです。今でも\par自体は登録してますが
                    \par\parと書くとキーワードが2つあるとは認識してくれません。これがいいこともあるのでしょうが。「単語単位で検索」とかよくありますが(VC++など)、その単位が問題。
                    • [161] Re6:正規表現キーワード すとーにぃ 2001年03月07日 23:59

                      ▼ じぇぷろさん
                      > \par\parと書くとキーワードが2つあるとは認識してくれません。

                      このへんが解決すると、rtfの色分けが可能になるなーと思い、rtf用のキーワードリストを作ってみました。
                      いまのところ、「\par\line」とか、キーワードが連続すると認識してくれないです。

                      http://www.hoops.livedoor.com/~stonee_/j
                      unk/rtfkwd.lzh
                      • [166] Re7:正規表現キーワード じぇぷろ 2001年03月08日 21:48

                        ▼ すとーにぃさん
                        > ▼ じぇぷろさん
                        > > \par\parと書くとキーワードが2つあるとは認識してくれません。
                        >
                        > このへんが解決すると、rtfの色分けが可能になるなーと思い、rtf用のキーワードリストを作ってみました。
                        > いまのところ、「\par\line」とか、キーワードが連続すると認識してくれないです。

                        rtfってTeXに似たところがありますね\parなんて全く同じコマンド名だし。もしキーワード指定で正規表現が使えれば\\[a-zA-Z]+のような書き方ができて楽なんですが。スペルチェックとしても使いたい場合は逐語登録のほうがいいですけど。
                • [129] Re4:正規表現ライブラリ じぇぷろ 2001年03月05日 16:36

                  ▼ じぇぷろさん
                  > サーバに繋がらず、返信が消えた・・・ はー。萎えたのであっさり書きます。

                  このときにSource Forgeで何かやってくれたんですな. この日以来正常に見れなくなった気がします。

                  > ▼ げんたさん
                  > > ▼ じぇぷろさん
                  > > >使った事ないけど、jre32.dllに化けるソフトで使えるようになるのでは?
                  > > そんなものがあるんですか。
                  > ヘルプ参照。ソース付き。
                  アップに失敗した、はじめの返信にはげんた氏に「お試ください。(人任せ)」と書いたんですが、その後自分でDLしてやってみて、とりあえず使えそうでした。オリジナルJre32.dllではVer.1.17と表記されますが、BregIfを使うと1.1aと表記されます。元々Jre32.dllもオープンソースですし、BregIfもそうです。ただ、Bregexpはソースがないですが。
                  Aramic氏のHP URLが変わっていたのでヘルプの記載も修正して近いうちにHPにアップしようと思います。ついでにクリッカブルにもして。今ヘルプの修正は休止してますが、形式の統一などいつ予定のところ(自分の中での)までできるか不明なので、暫定アップしてしまいます。。。(いつものことか(^_^;))
                  #げんた氏のバイナリのほうもまだ出ないようですね。
                  • [164] Re5:正規表現ライブラリ じぇぷろ 2001年03月08日 18:00

                    ▼ じぇぷろさん
                    > > ▼ げんたさん
                    > > > ▼ じぇぷろさん
                    > > > >使った事ないけど、jre32.dllに化けるソフトで使えるようになるのでは?
                    > > > そんなものがあるんですか。
                    > > ヘルプ参照。ソース付き。
                    BRegexp.dllをネイティブに使いたいということならば、ソースがないので厳しいかもね。
                    多少の制限を覚悟するなら、BRegIfで十分かな。私は別にPerl風正規表現を使うわけではないので関係ないんすが。
        • [173] Re2: 数字色分け再修正 みく 2001年03月10日 09:07


          スレッドがえらく延びてますが。

          他のエディタにあってサクラエディタにない強調機能
          を調べてみました。

          ・複数個のブロックコメント指定(Pascalな人は欲しいはず、絶対)
          ・正規表現キーワード強調
          ・行強調(正規表現と組み合わせるようだ)
          ・斜体
          ・取り消し線(消してどうする?)
          ・記号((){}なんかのこと)
          ・機種依存文字(まる1 ...いかんいかん。掲示板に機種依存文字書いたら)
          ・半角・全角文字
          ・DIFF強調(K2Editorのdiffなんてどう?)

          TEditorの影響を受けてるような気がしてならないですね。

          どこにもない機能

          ・#if 0囲みの色分け

          コメントと違い、囲まれたデータも認識しないといけない。
          ネストも絶対必要!


          最初の方に書いたのは、機能追加するかもしれないけど、
          全部実装すると処理が遅くなるのは必至。個人的に楽しむだけ。
          ifdefで囲んで、使いたい人だけコンパイルするとか。
          • [174] 強調機能いろいろ じぇぷろ 2001年03月10日 17:07

            ▼ みくさん
            > スレッドがえらく延びてますが。
            私は新着順でしかほとんど見ません。(^_^;)
            > 他のエディタにあってサクラエディタにない強調機能
            > ・複数個のブロックコメント指定(Pascalな人は欲しいはず、絶対)
            これは前にも話題になりましたが、request.txtに入れてあります。
            > ・正規表現キーワード強調
            げんた氏はいらないと。。。私はほしいと。。。_(._.)_
            > ・行強調(正規表現と組み合わせるようだ)
            あると章や節の表題強調に使えます。
            > ・斜体
            > ・取り消し線(消してどうする?)
            > ・記号((){}なんかのこと)
            > ・機種依存文字(まる1 ...いかんいかん。掲示板に機種依存文字書いたら)
            > ・半角・全角文字
            これらは私には不要です。
            > ・DIFF強調(K2Editorのdiffなんてどう?)
            これはdiff機能も含めてほしいですね。K2の場合diff自体はGNUのを外部コマンドで利用してます。内部に持たなくてもそれで十分です。前にげんた氏の紹介ソフトもありましたが、直接エディタからできる方が色々便利です。今ある「ファイル内容比較」は完全にバイト単位の比較なので、あまり使いやすくありません。カーソル位置がちょっと違うだけで違うと判断されるからです。それに違いが逐次探索で、ぱーーと違いを一覧できないのもペケです。
            diffはdiffで行単位にしかわからない、ということもありますが、どこが違うかは目で見てそれなりに判断できます。理想をいえば、まずdiffで行単位にわかって、その行上では(コマンドか何かで)違う個所までカーソル移動してくれるといいです。DOS時代のMIFESのように同時スクロールできて、変更場所で音が鳴る、というのも捨てがたい仕様ですが。
            #外部コマンドで思い出しましたが、今のそれは唯一(?)の使えない機能です。次回改修時にメニュー自体をグレー表示にしたほうがいいと思います。ホントはコマンドラインからのコンパイルエラー行取得(タグジャンプ)に使いたい機能ですが。

            > TEditorの影響を受けてるような気がしてならないですね。
            それは必然です。TEditorのコンポを使ってますから。TeraPadもそう。

            > どこにもない機能
            > ・#if 0囲みの色分け
            > コメントと違い、囲まれたデータも認識しないといけない。
            > ネストも絶対必要!
            あれば便利な人もいます。 前に話題に出ました。

            > 最初の方に書いたのは、機能追加するかもしれないけど、
            > 全部実装すると処理が遅くなるのは必至。個人的に楽しむだけ。
            > ifdefで囲んで、使いたい人だけコンパイルするとか。
            コンポーネント化(プラグイン)が難しいなら、それでも私はよかです。