2013/12/13

SupportText v.0.1.06

サポテキ更新。

0.1.06
・%sの置換を%l?の後に。
・ユーザー定義の例外処理。

メモ: ユーザー定義の変換の順番
正規表現置換→エンコード→テキスト部処理
正規表現置換:パターンと置換を1行毎にreplaceAll()
エンコード: 1ライン毎にURLEncoder.encode()
テキスト部処理: %http, %d?, %l10, %l?, %s


6 件のコメント:

  1. お疲れ様です。
    2chでも書いてた者ですが、テキスト部の変換の挙動がおかしいように思います。
    この更新で%sの場合の元の文中の「行末の\」と「$?」で参照先のない場合にエラーとなってたのは、エラーは出なくなりましたが、「\」「$」は消されてしまい、「$?」は参照先に該当文字が有れば変換され該当文字がなければ他の文字が全て消されて$0が変換されたモノだけになります。
    また、元の文中の「%s」「%l?」が変換されてしまうのも、逆になっただけでやっぱり変換が効いてしまいます。
    具体例で言うと、

    [TEXT]テキスト1%s[PATTERN][REPLACE][TYPE]TEXT[CCODE]NONE[END]で
    「テストボックス左側」
    %l2
    テスト\てすと
    TEST$0test
    ↓「全テスト」押す
    「テストボックス右側(全テスト結果)」
    テキスト%l2
    テストてすと
    TEST%stest

    [TEXT]テキスト2%s[PATTERN][REPLACE][TYPE]TEXT[CCODE]NONE[END]で
    「テストボックス左側」
    %l2
    テスト\てすと
    TEST$1test
    ↓「全テスト」押す
    「テストボックス右側(全テスト結果)」
    テキスト%s

    [TEXT]テキスト3%l0[PATTERN][REPLACE][TYPE]TEXT[CCODE]NONE[END]で
    「テストボックス左側」
    %l2
    テスト\てすと
    TEST$test
    ↓「全テスト」押す
    「テストボックス右側(全テスト結果)」
    テキスト3TESTtest

    [TEXT]テキスト4%l0[PATTERN][REPLACE][TYPE]TEXT[CCODE]NONE[END]で
    「テストボックス左側」
    %s
    テスト\てすと
    TEST$test
    ↓「全テスト」押す
    「テストボックス右側(全テスト結果)」
    テキスト4%s
    テストてすと
    TESTtest

    とかなります。おかしくないですか?
    [PATTERN][REPLACE][TYPE]TEXT~SELF[CCODE]NONE で、
    [TEXT]に%sや%l?にした時には元の文そのままを変換して貰えないと困ると思いますが・・・
    今は元の文のメタ文字が効いた結果に変換されてしまってます。

    分かりにくかったらすみません。
    仕様・・・では無いですよね?もしかして仕様ですか?

    返信削除
    返信
    1. あ、すみません
      お分かりかと思いますが上の「\」は半角の「¥」です

      削除
    2. すみません、テキスト1と2の一部が間違ってました

      [TEXT]テキスト1%s[PATTERN][REPLACE][TYPE]TEXT[CCODE]NONE[END]で
      「テストボックス左側」
      %l2
      テスト\てすと
      TEST$0test
      ↓「全テスト」押す
      「テストボックス右側(全テスト結果)」
      テキスト1%l2
      テストてすと
      TEST%stest

      [TEXT]テキスト2%s[PATTERN][REPLACE][TYPE]TEXT[CCODE]NONE[END]で
      「テストボックス左側」
      %l2
      テスト\てすと
      TEST$1test
      ↓「全テスト」押す
      「テストボックス右側(全テスト結果)」
      テキスト2%s

      です。

      削除
    3. 付け加えると、回避策(¥¥→¥¥¥¥)からも分かる通り
      正規表現の置換後にテキスト部の処理前にもう一度元の文の置換及びテキスト部の置換が行われ、さらに再度テキスト部の置換が行われてるようです。
      それぞれダブって置換処理がなされていると言う事だと思いますが・・・

      削除
    4. v.0.1.07で入れてみました。
      あんまり時間なくてテストできてないです。確認してみてください。

      削除
    5. ¥や$については直りました。ありがとうございます。
      ただ残念ですが、%は変わらず、指定子が増えただけ悪化です。
      特に他に困ってる人も居なさそうですし、仕様という事で諦めますので、申し訳ありませんが%t%m?は廃止して頂けますようお願いします。
      同じく、%sと%l?の処理順も元(%s→%l?)に戻して頂きたくお願いします。
      (現状だと%sも%l?も問題が出ますが、戻して頂けると問題の起きる指定子は%l?のみになるので)

      削除