検索結果

キーワード: ‘テキスト’

出来てすぐ気がつくのは、こっそり注目してたから。これ完成したみたい。 http://homepage2.nifty.com/Km/onig.htm 何から話そうか。そうだ、まずは乙。もしくはグッジョブ。 Delphiでは正規表現がはじめからは入っていないので、 誰かが作る必要があるわけだが、Delphi以外の有名どころの正規表現を、 その部分だけVC++でビルドして、ヘッダ書いてDelphiから使用するって話。 DLL付の配布になるので…続きを読む

正規表現による検索結果もハイライトするって言う実装について。 現時点で、BM法を用いた普通の検索を行うと、検索結果が色分けに反映されるにも関わらず、 正規表現で検索をした場合は、検索結果を色分けしないという仕様だ。 いろいろ(実はたくさん)理由はあるんだが、まず根本に立ち返って、 これってそもそも、TNotePadをソース公開しているせいで、 色分けなど内部動作に関わる部分をよそのコンポの改変で実装するという点が問題だった。 改変してな…続きを読む

1491 letters | 486 views | コメントする

新機能追加とかではなく、既にある機能を最初から見せるべきかの話。 デフォルトでスペースや改行を表示するって、おせっかいすぎると感じた。 あたしゃ断然なにもかも表示派だが、メモ帳では表示されないものが表示されたら、 「何この三角とか四角とか?」って混乱するんじゃないかなと。 自分で好んで表示させた人ならわかるけど、 本来非表示のものをあえて表示させる機能は、デフォでオンじゃない気がした。 それを言ったら、ルーラーや行番号はどうなのかと。 …続きを読む

バグが出たので修正がメインで、ついでにアップデート。 作者以外にテキストファイル検索なんぞ使って、バグ見つける人がいたことがものすごく意外だった。 たとえ真魚を使う人がいたとしても、ちょこっと文章書いて、壁紙のアルファブレンドしてみて、 はいもう飽きましたよ、で9割以上はやめるだろうと思っていたし、あえてGrepとは書いてないし。 使う人がいるなら、次回から説明みたいなものも書いておいた方がいい気もする。 今回は、入力補完と添付ドキュメ…続きを読む

あくまで、真魚の理想は「ヘルプなしでもわかるように」だ。 だが、一番ヘルプの要らないはずのメモ帳ですらヘルプがある。 真魚における、ヘルプ見なきゃわからないかも知れない機能については、 余計な機能が必要な機能の邪魔をしないように、 出来るだけ目の届きにくいところにひっそりと置いてある。 たとえば正規表現は、おそらくテキストエディタの中では高機能な部類であるにもかかわらず、 「正規」と書けば正規表現を知らない人が正規の検索だと思うかも知れ…続きを読む

FF12を買ったので、開発に割く時間は減る予定だが。 辞書ファイルによる補完も動きだし、まるでマトモに考えているように候補が出るが、 実際は考えていない補完なので、便利そうに見えるだけのハッタリ仕様だ。 現在、PHPとHTML用の補完辞書を萌ディタからパクって動作させてみている。 辞書ファイルへのディスクアクセスが発生するので遅いかと思ったが、 それでもストレスなく動作するようで、本当にパソコンにはそこそこ金かけてて良かった瞬間。 二つ…続きを読む

どうするかどうするかと、考えるだけ考えて発動してなかったが、 ようやく着手し、まあまあ矛盾の少ない状態で動き始めた。 もうこれって出来ても出来なくても、試しに作ってみるしか納得出来なくなっちゃったし。 ダメなら隠し機能と言うことで封印しちゃえば良いんだし。 ウィンドウの実装は、萌ディタの開発日記を参考にして作った。 パクりではなく参考と表現したのは、 パクりたいけど意味わからなくて、完全にはパクれなかったから、 理解できるところまでの実…続きを読む

あれば便利でぜひ実装したいような理想の補完は、開発環境レベルでないと無理。 出来そうな程度の補完では、その機能が付いていてもあまり便利に使えない。 みたいな感じなので、補完やるべきかやらないべきか、って思ってるけど、 やれるかどうかもわからないけどさ。 Alphaって、テキスト内に出てきた単語を拾って補完するのね。 スクリプト編集向けって書いてあるけど、補完は日本語もやるんだね。 テキスト内で一度使った単語をもう一度使うって、 関数名と…続きを読む

こんなのが作りたいってわがまま言えるのは作り始める前だけだから、自由に書いてみる。 例えば小泉って入力したら、次に何を書きたいかを予想して、 総理大臣とか首相とか純一郎とか、あるいは今日子って候補が出てきて、 みなまで打たなくても選ぶだけで済むようにするのが入力補完。 さて、小泉の後に総理大臣や今日子を補完するために、 真魚は人名辞典とか広辞苑とかを添付して連動しなきゃいけないのか? いや、そりゃ無理だから辞書なしでどうやって候補を探す…続きを読む

検索と置換のダイアログがどうしてこんなに邪魔なんだろうってことで、 いつも真魚のウィンドウとかぶらない場所まで移動してるんだが、 これさ、検索と置換のダイアログも全部表示位置を記録しちゃえば良かったんだね。 スッキリした。 正規表現を修正したついでに、正規という名前は避けてPerl風検索/置換と呼ぶことにしたり、 日本語でざっと使い方を書いて、テキストファイルで添付したり。 ルーラーをつかんで折り返し幅を変えるとき、スクロールしないと煩…続きを読む

関連本を読んで強く感じたんだけどさ、正規表現に正規の物なんてないね。 でも、こう書いたらこう動いて欲しいってのの標準みたいなのはあるな。 で、今使ってるTRegExprは、検索に関してはそういう標準は十分満たしてる感じ。 置換は¥1~¥9で$1~$9と同じ動作をするように変更すれば十分って感じ。 十分どころか、真魚のくせにっていうくらいたいそうなことが出来る。 今できない機能に今後対応するかどうかについては、 面倒くさいからやりたくない…続きを読む

さて、8000文字テストで落ちないエディタを三つあげたわけだが、 その三つとも、80000文字テストを乗り切ることは出来なかった。 EmEditorの限界は74483文字で、それ以上だと「見つかりませんでした」が出るか、 条件は不明だが「Too Big」とかなんとかっていうダイアログが出るかする。 落ちるよりはヒットしない方が全然マシ。 萌ディタは、80000文字の貼り付けが出来なかくて「がっかり」ダイアログ。 仕方ないので8000文字…続きを読む

アプリが落ちる話なので、言いがかりだと言われないように、やり方を明確にしておく。 -(半角のマイナス)を8000文字入力する。コピペでも良い。 なぜ8000かというと、欠陥のあるライブラリでも数百ぐらいだとまだ耐えるからだ。 マイナスには特に意味はないが、改行が含まれると検索出来ない物もあるのでダメ。 で、8000文字入力したら先頭1文字目に入力位置をあわせ、 正規表現で(.|¥n)+を検索する。あえて全角で書いたがもちろん半角で。 す…続きを読む

難しい言葉で言うと再帰。 正規表現の検索では、普通の検索と違ってたくさんの枝分かれが起こる。 その分かれた枝からさらに別の枝分かれが起こる。 全部の枝を検証して最長一致を求めるっていう事をやらせるために、 TRegExprは再帰っていう方法を使っている。 マッチしているかどうかを判断すべきメソッドは、枝分かれ前の現在の枝しか評価せず、 枝分かれの分岐点からは、それぞれの枝について自分と同じ仕事をするメソッドに託す。 それれぞれの枝がさら…続きを読む

ショック。 やっぱり自分で使うライブラリは、ソースコード全部把握してから使わなきゃダメね。 正規表現では+や*とかを使って、ものすごく長い範囲にヒットさせる事が出来るわけだが、 TRegExpで、ものすごく長い文字列にヒットさせようとすると、 オーバーフローが起こって何の警告も出さずにアプリが落ちる事がわかった。 たぶんさ、足し算とか引き算とかで桁があふれた場合は警告出るんだろうね。 今回のオーバーフローは、正規表現ライブラリ内のとある…続きを読む