検索結果
最初は、ヘルプに遅いと書いてあるから速くできるんじゃないかとか、 まだ対応してない物を自前で対応できないかとか、 そういうつもりで正規表現ライブラリの中身を検証していたはずだったが、 途中からはアプリが落ちるか落ちないかの話題に変ってしまったな。 で、一応解決したよ。現在は、8000どころか80000文字でも落ちないようになった。 もちろん、32bitを超える数字のケアはしてないので、そこであふれるだろうが。 32bit以上のケアしない…続きを読む
アプリが落ちる話なので、言いがかりだと言われないように、やり方を明確にしておく。 -(半角のマイナス)を8000文字入力する。コピペでも良い。 なぜ8000かというと、欠陥のあるライブラリでも数百ぐらいだとまだ耐えるからだ。 マイナスには特に意味はないが、改行が含まれると検索出来ない物もあるのでダメ。 で、8000文字入力したら先頭1文字目に入力位置をあわせ、 正規表現で(.|¥n)+を検索する。あえて全角で書いたがもちろん半角で。 す…続きを読む
難しい言葉で言うと再帰。 正規表現の検索では、普通の検索と違ってたくさんの枝分かれが起こる。 その分かれた枝からさらに別の枝分かれが起こる。 全部の枝を検証して最長一致を求めるっていう事をやらせるために、 TRegExprは再帰っていう方法を使っている。 マッチしているかどうかを判断すべきメソッドは、枝分かれ前の現在の枝しか評価せず、 枝分かれの分岐点からは、それぞれの枝について自分と同じ仕事をするメソッドに託す。 それれぞれの枝がさら…続きを読む
本当に、見えないところの変更はいっぱいやってるんだが、 それを変更したからって全然ありがたくないようなことばかりなんだよね。 バグは結構あって、気がつき次第直しているんだが、 そのほとんどは、作者だからこそ意図してない動作に気がついているが、 よその人が使う分には仕様かと思ってしまうようなくだらないことで、 だからこそ指摘されて直すのではなく、自分で気がついてばかりいる。 いくら真魚なんて使っている人がほとんどいないっていっても、 わか…続きを読む
なんか、更新した場所がたくさんあるので、ここらでいったん出しておく。 結構燃え尽きてるので次があるかはわからないが。 前回の2.08ではEmEditorフリー版に影響を受けた部分が多少あったわけだが、 今回は萌ディタの開発日記に影響を受けた部分がいっぱいある。 やっぱりユニコードでプロポーショナル対応なエディタは参考になるな。 SJISのエディタだと参考にしなくてもTEditorのソース読めばいいからね。 TEditorを研究してパクり…続きを読む
JISにもESC$(Dで補助漢字領域が使えるようなので、読み込み部分で対応した。 これで、EUCもJISも旧来の変換では切り捨てていた多くの文字に対応した事になる。 もちろんJISの書き出しはメーラー互換を前提にするので、補助漢字の書き出しはしない。 JISで使えないはずの規格外4文字が半角カタカナ周辺にあり、これも書き出さないことにした。 JISの変換はやはりSJISを経由にし、新たにテーブルを設けることはしなかった。 さてここで、ま…続きを読む
なんか文字コードに躍起になっているが、もともと萌ディタの開発日記が発端である。 http://www.geocities.co.jp/SiliconValley-Oakland/3617/progress_2004Q2.html EUCはSJISにない文字も扱える仕様に変更済み。 次にJISなんだが、そこに書いてあるようにいろいろあるわけだが、 読み込みについてはどんな実装をするか悩まずに出来た。 EUC変換のために作ったテーブルを使っ…続きを読む
EUCへの対応については、補助漢字領域の拡張を目的に進めてきた。 すなわち、旧来のSJIS変換を行うとEUCにしかない文字が失われてしまうので、 SJISを介さずにEUC<->ユニコード変換を行うように仕様変更だ。 それはもうできあがったからそれで良い。 次にJISへの対応をどうするかという話だ。 JISは多くの拡張がなされているため、全てに対応すれば中韓国語も扱えるはずだ。 だが、中韓国語拡張したJIS文字コードはどこで利用されるのか…続きを読む
自体はどんどん複雑化する。 ユニコードの私用領域であるU+E000辺り以降が、SJISやJISへ変換出来ると言うことを、 ATOKの文字パレットで確認したが、JISの規格では使われていない、 0x7F21から0x927Eまでが割り当てられているようだ。 EUCでは、JISでの0x2121~0x7E7Eに0x8080を加えた、0xA1A1~0xFEFEを使っているので、 規格をはみ出して私用領域を割り当てようとすると桁があふれてしまうのだ…続きを読む
二つの方法がダメになった。 ○SJISを経由すると補助漢字が失われる。 ○CP20932でもうまくいかない。 で、最後の方法として、 ○アプリが変換テーブルをもつ。 コレをやるにあたり、 http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/JIS/ にあるテキストファイルを使用した。 矩形選択と正規表現置換で、完璧にDelphiコードに変換できた。 そして実際に正しい変換が出…続きを読む
つづき。 現在、萌ディタも起動していじりながら、コレは真魚で書いてる。 ここまでで萌ディタの「がっかり」すなわち不正終了が二回出た。 http://www.geocities.co.jp/SiliconValley-Oakland/3617/progress_2004Q2.html >ルーラの存在は微妙 あたしもEmEditor式は相当違和感がある。真魚はTEditorのパクリ式。 何文字目で折り返してるか見たり、実際に折り返したりする…続きを読む
2ch由来と言って良いものか、今となってはEmEditorのフリー版が出たので興味は薄れたが、 それ以前は、このエディタが順調に開発されれば乗り換えたいと思っていたほど。 だが、途中からは自分の期待してるものではなくなって行ったフシもある。 乗り換えってのは、真魚を捨てるって事を意味する。 自分で作ったもの以上の魅力はどこに感じるのか、みたいな話。 真魚には一部の人向けの機能とかは増やしたくないって事がキッカケで、 JScriptやVB…続きを読む
Wikipediaによると、ゲーム脳という発想はかなり疑わしい仮説のようだが、 あたしゃ自分がバカなのはゲームのやり過ぎだからだと信じて疑わない。 ゲーム脳に関する本も読んだことがないし、どういう話なのかはさっき知ったばかりだ。 しかし確実に自分がバカであると言うことと、ゲームやり過ぎであることは言えるわけで、 バカだからゲームやり過ぎだし、ゲームやり過ぎでバカにになったし、 この二つは切っても切れない関係にあると感じているわけ。 おそ…続きを読む
エディタエンジンをプロポーショナルフォントに対応させたことで、扱えるフォントも増えたので、 その中から目的のフォントを選ぶのが面倒になったと感じている。 プロポーショナルフォントが絶対に必要な用途と、等幅フォントが絶対に必要な用途と、 この両方の用途に対応するには、瞬時に必要なフォントを選ばせる機能が必須だ。 インストールされた全てのフォントから選ぶだけでは機能が足りない。 真魚にはフォントを拡大したり縮小したりのボタンが付いていて、 …続きを読む
真魚というか、TNotePadでは等幅フォントでないとマトモな文字幅にならない。 これは、全ての文字を半角か全角かという2種類の横幅に分類しちゃうことで、 いちいち文字の幅を計算しなくても良くなるので、その分高速な処理をしているのだ。 まぁ、内部は結構な量でTEditorのパクリがあるわけだから仕方がない。 ただ、SJIS外の文字幅は、フォントの種類によって異なるという問題がある。 その実例がコレ。 http://wantech.iku…続きを読む