◀ANSI版開発トップへ
  • 1769 再変換の対応
    • 1773 Re:再変換の対応
      • 1778 Re2:再変換の対応
        • 1779 Re3:再変換の対応
          • 1780 Re4:再変換の対応
            • 1781 Re5:再変換の対応
            • 1782 Re5:再変換の対応
              • 1784 Re6:再変換の対応
                • 1786 Re7:再変換の対応
                  • 1789 Re8:再変換の対応
            • 1783 Re5:再変換の対応
              • 1787 Re6:再変換の対応
                • 1788 Re7:再変換の対応
              • 1803 RE: Re5:再変換の対応
                • 1806 Re2: Re5:再変換の対応
  • [1769] 再変換の対応 minfu 2002年03月27日 20:36

    2002-03-25のソースに再変換を組み込んでみました。
    本当はdiffを使えばよいのでしょうが、よくわからなかったので変更したソースを全部入れてあります。
    http://www.egroups.co.jp/files/sakura-editor/Developer/Source/reconv.zip
    make時にWINVERを0x500にする必要があります。
    一般掲示板に書いた制限はそのままです(;^^)ヘ..
    • [1773] Re:再変換の対応 やざき 2002年03月29日 16:45

      ▼ minfuさん
      > 2002-03-25のソースに再変換を組み込んでみました。
      > 本当はdiffを使えばよいのでしょうが、よくわからなかったので変更したソースを全部入れてあります。
      > http://www.egroups.co.jp/files/sakura-editor/Developer/Source/reconv.zip
      > make時にWINVERを0x500にする必要があります。
      > 一般掲示板に書いた制限はそのままです(;^^)ヘ..

      ようやくいただきました。thanx!
      ところで、WINVERを0x500にするのは、なにか弊害があったりしますか? > 詳しい人

      http://www.runan.net/program/tips/sdk_11_define_WINVER.shtml
      を見ると、0x500にする=Windows98かWindows2000でしか動作を保証しないようにするようなニュアンスに読み取れる。

      うーん。
      • [1778] Re2:再変換の対応 minfu 2002年03月31日 15:48

        ▼ やざきさん
        > ところで、WINVERを0x500にするのは、なにか弊害があったりしますか? > 詳しい人
        >
        > http://www.runan.net/program/tips/sdk_11_define_WINVER.shtml
        > を見ると、0x500にする=Windows98かWindows2000でしか動作を保証しないようにするようなニュアンスに読み取れる。
        >
        > うーん。
        詳しい人ではないですが、

        WINVERが0x500で影響が出てくる可能性があるのであれば、
        イベントのWM_IME_REQUESTと構造体のRECONVERTSTRINGを自前で
        宣言するのも一つの方法だと思います。
        使っているのはこれだけですから。

        • [1779] Re3:再変換の対応 minfu 2002年03月31日 15:51

          > WINVERが0x500で影響が出てくる可能性があるのであれば、
          > イベントのWM_IME_REQUESTと構造体のRECONVERTSTRINGを自前で
          > 宣言するのも一つの方法だと思います。
          > 使っているのはこれだけですから。

          ほかに定数のIMR_RECONVERTSTRINGもありました。
          • [1780] Re4:再変換の対応 あろか 2002年04月01日 01:47

            ご無沙汰してます。
            minfuさんはじめまして。
            ▼ minfuさん
            > > イベントのWM_IME_REQUESTと構造体のRECONVERTSTRINGを自前で
            > > 宣言するのも一つの方法だと思います。
            そういう方法を取ってみました。3/25版からの差分ファイルです。
            http://www.egroups.co.jp/files/sakura-editor/Developer/Source/reconv.zip

            ・バグ修正:末尾'\0'の分もバッファを確保するように修正。
            ・これに加えて IME98以降とATOK12以降では独自の再変換イベントを持っているようなので対応させて見ました。
            ちゃんと確認していないので 95/NT で IME98/2000/ATOK12/13/14ユーザの方 動作確認お願いします。

            よろしくおねがいします。
            ・要望/希望です;
            +定数の定義個所がイマイチ。
            +RequestedReconversion とRequestedReconversionW がほぼ同じなので共通部分をまとめたい。
            +CMemory に文字数をカウントするメソッドが欲しいな。
            • [1781] Re5:再変換の対応 げんた 2002年04月01日 11:44

              >・これに加えて IME98以降とATOK12以降では独自の再変換イベントを持っているようなので対応させて見ました。
              ATOK13+Win2Kで動作しました.

              キャレット位置に候補が出るので,選択範囲の末尾にキャレットがあると選択文字列がもう一回表示されているように見えてちょっと変な感じ.後ろから選択した場合には選択範囲に変換中文字列が重なってスマートなんですが.
            • [1782] Re5:再変換の対応 げんた 2002年04月01日 11:52

              >・要望/希望です;
              >+定数の定義個所がイマイチ。
              >+RequestedReconversion とRequestedReconversionW がほぼ同じなので共通部分をまとめたい。
              >+CMemory に文字数をカウントするメソッドが欲しいな。
              追加.
              http://www.netlaputa.ne.jp/~stadt/vb/p22_imereconv/imereconv.htm
              によると,前後関係を見るために文字全体と再変換する部分をそれぞれ指定できるようなので,1行全部渡した方が変換精度は高くなりそう.(気休めかも)

              あと,試用中に1回ATOK内でアプリケーションエラーを起こしてエディタが落ちました.
              • [1784] Re6:再変換の対応 げんた 2002年04月01日 12:45

                >あと,試用中に1回ATOK内でアプリケーションエラーを起こしてエディタが落ちました.
                きしゃがきしゃできしゃにきしゃした をATOK13で再変換すると必ずアプリケーションエラーになります.
                さいへんかん を再変換してももんだいなし.
                もんだいなし を再変換しても大丈夫だったが,もんだい を再変換したらアプリケーションエラー.

                タイミングは IMR_RECONVERTSTRINGが2回,IMR_CONFIRMRECONVERTSTRINGが1回呼ばれた後です.
                • [1786] Re7:再変換の対応 minfu 2002年04月01日 17:50

                  ▼ あろかさん

                  おおっ、95/NT対応ありがとうございます。


                  ▼ げんたさん
                  > >あと,試用中に1回ATOK内でアプリケーションエラーを起こしてエディタが落ちました.

                  これについては
                  RequestedReconversionWのwcsncpyの三つ目の引数が
                  nlen
                  となっているところを
                  nlen/sizeof(wchar_t)
                  に修正したらエラーがでなくなると思います。

                  この修正でNTとMSIME98の環境でうごきました。
                  • [1789] Re8:再変換の対応 あろか 2002年04月01日 23:10

                    ▼ minfuさん
                    > RequestedReconversionWのwcsncpyの三つ目の引数が
                    > nlen
                    > となっているところを
                    > nlen/sizeof(wchar_t)
                    > に修正したらエラーがでなくなると思います。
                    >
                    > この修正でNTとMSIME98の環境でうごきました。
                    あっ、やってしまった。
                    ご指摘ありがとうございます。
            • [1783] Re5:再変換の対応 やざき 2002年04月01日 12:09

              ▼ あろかさん
              > ご無沙汰してます。
              > minfuさんはじめまして。
              > ▼ minfuさん
              > > > イベントのWM_IME_REQUESTと構造体のRECONVERTSTRINGを自前で
              > > > 宣言するのも一つの方法だと思います。
              > そういう方法を取ってみました。3/25版からの差分ファイルです。
              > http://www.egroups.co.jp/files/sakura-editor/Developer/Source/reconv.zip
              >
              > ・バグ修正:末尾'\0'の分もバッファを確保するように修正。
              > ・これに加えて IME98以降とATOK12以降では独自の再変換イベントを持っているようなので対応させて見ました。
              > ちゃんと確認していないので 95/NT で IME98/2000/ATOK12/13/14ユーザの方 動作確認お願いします。
              >
              > よろしくおねがいします。
              > ・要望/希望です;
              > +定数の定義個所がイマイチ。
              > +RequestedReconversion とRequestedReconversionW がほぼ同じなので共通部分をまとめたい。
              > +CMemory に文字数をカウントするメソッドが欲しいな。

              取り込みます。Thanx!

              再変換は、Shift+変換キーなんですね。ちょっと探してしまいました。
              そして、IME2000を使っていますが、文節で確定できないみたいでした。これは仕方が無いのかな?
              具体的には、IME2000のキー設定で「ATOK」を選んで使っています。
              「きしゃがきしゃできしゃにきしゃした」を全部選択して、Shift+変換キーで再変換をはじめますが、
              普段なら文節を確定する↓キーを押しても、確定できませんでした。不思議。

              • [1787] Re6:再変換の対応 minfu 2002年04月01日 17:53

                ▼ やざきさん
                > 再変換は、Shift+変換キーなんですね。ちょっと探してしまいました。

                これは自分の書き方が悪かったです。IMEの設定によってキー操作が変わることを明記する必要がありますね。

                > そして、IME2000を使っていますが、文節で確定できないみたいでした。これは仕方が無いのかな?
                > 具体的には、IME2000のキー設定で「ATOK」を選んで使っています。
                > 「きしゃがきしゃできしゃにきしゃした」を全部選択して、Shift+変換キーで再変換をはじめますが、
                > 普段なら文節を確定する↓キーを押しても、確定できませんでした。不思議。

                ほかのアプリ(IEとか)でも同じ動作なのでIME2000の問題でしょう。


                • [1788] Re7:再変換の対応 やざき 2002年04月01日 18:20

                  > ほかのアプリ(IEとか)でも同じ動作なのでIME2000の問題でしょう。

                  ほんとですねー。
                  こちらも調査漏れで失礼しました。

                  これで再変換もできるようになってしまいましたね。。。
              • [1803] RE: Re5:再変換の対応 みく 2002年04月02日 18:38


                >再変換は、Shift+変換キーなんですね。ちょっと探してしまいました。

                特に設定をいじっているわけではないのに、私の環境では再変換できません。
                IMEツールバーを表示しておいての再変換ボタンを押せば再変換できるんですが。。。
                (何が悪いかよくわからないです)
                面倒なので右クリックメニューに出てくるようになるとうれしいです。

                #実はけっこう昔からあった機能なのね。
                http://www.forest.impress.co.jp/article/1999/03/09/saihenkan.html
                • [1806] Re2: Re5:再変換の対応 KENCH 2002年04月02日 20:26

                  ▼ みくさん
                  > (何が悪いかよくわからないです)
                  ちょっと長めに押してみては?