タグダイレクトを改訂しました:
- タイトル:タグダイレクト0.3.3
- 日時:2008-06-28 23:00
- 内容:長いタグ付きテキスト入力時の振る舞いを改善。
また、長いタグ付きテキストの利用法など、使いこなしの工夫を「タグダイレクトTips」として少しずつ書いていこうと思います。
長いタグ付きテキスト
長いタグ付きテキストを入力しようとするとエラーになることがありました。それを改善した…つもりです。
で、ここからはコーディングの話なのですが…
実験。改行の入らない数百文字のタグ付きテキストを用意して、uxc:Tag_Direct実行してからコピペなどで一気に入力、その後でENTERキーを押さずに、取り消し(undo)してみます。すると、一気に戻らずに何回かに分けて入力した文字列が消えていきます。…う~む、見かけとは異なり、実際の処理では、何回かに分けて入力されているのではないでしょうか?それで、即変換するuxc:Tag_Direct_Right_Nowを使う場合には、全部入力される前の中途半端なタグ付きテキスト(XML)を解釈(パーズ)することになって、文法エラーになっているのでは?
…という仮説をもとに、変換の実行を500ms遅らせてみました。変換して挿入する部分をコマンドとして切り出し、instruction:postインストラクションで実行します。
これで、わたしのPCやMacでは、
- 長いタグ付きテキストでも
- また途中に改行が入っていても、
うまくいくようになりました。その代わり、短いタグ付きテキストでも、変換に一呼吸かかる感じになってしまいました。
いずれ、このあたり、自分の環境や用途に合わせて調整できるようにしようかと:
- ユーザーが、変換実行の遅延時間を調整できるようにする
- ユーザーが、変換キーを変えられるようにする。例えば、ENTERではなくて、Ctrl+ENTERにするとか。
実用に近づく反面、コードがだんだん判りづらくなりますね…(^^;)。そのうち、わたしの限界を超えると思います (^^ゞ。