Thebe

0.51

http://panathenaia.halfmoon.jp/thebe/http://panathenaia.halfmoon.jp/wf/wforum.cgi?&no=396&reno=no&oya=396&mode=msgview バグ報告貰っていたので、修正。

そういえば

ときどき1行目までキャレットを戻してもスクロールバーのつまみが一番上に来ない現象があるのですが、どなたか再現手順を把握している方おられませんか。気が付いたらごくたまにって感じでいつ起きるのかさっぱりです。狙っても起きてくれないです。助けて。

ネトランこわい

リリースされたらしいが俺は知らん。万年α版ということにしてバージョン番号からalpha取っただけだ。vectorにすらUPしてない。心底いつものようにちょこちょこ直しただけだ。誤字だってまだ大量にあるぞorzここで細々言っておこう。内部31ビットで処理してる…

alhpa-49.6

http://panathenaia.halfmoon.jp/thebe/http://panathenaia.halfmoon.jp/bbs/wforum.cgi?&no=379&reno=no&oya=379&mode=msgview この間モニタ買ったのでマルチモニタ対応させていたのでした。 あと気になった所をこまごま直しました。 あとtagsファイルの中…

alpha-49.5

そんなわけで半年ぶりに更新しました。 http://panathenaia.halfmoon.jp/thebe/http://panathenaia.halfmoon.jp/bbs/wforum.cgi?&no=377&reno=no&oya=377&mode=msgview タイムスタンプ変更の検出がうざかったのでステータスバーに追いやって無視して作業を進…

alpha-49.4

http://panathenaia.halfmoon.jp/thebe/http://panathenaia.halfmoon.jp/bbs/wforum.cgi?&no=375&reno=no&oya=375&mode=msgview似非入力補完の似非度を増してみました。 今まで固定テキストのサクラエディタ方式つかよくある似非方式だったのですが、やっぱ…

alpha-49.3

http://panathenaia.halfmoon.jp/thebe/http://f22.aaa.livedoor.jp/~qwerty/private/wforum/wforum.cgi?no=354&reno=331&oya=331&mode=msgview&page=0謎機能。 ...> fpc testsprite |thebe で標準入力をメッセージ表示部に表示しつつ起動。これであとはタグ…

alpha-49.2

http://panathenaia.halfmoon.jp/thebe/http://f22.aaa.livedoor.jp/~qwerty/private/wforum/wforum.cgi?no=347&reno=331&oya=331&mode=msgview&page=0 バージョン番号が0.1刻みになったのは気にしないでください。

alpha-49.1 (超手抜き)

http://panathenaia.halfmoon.jp/thebe/http://f22.aaa.livedoor.jp/~qwerty/private/wforum/wforum.cgi?no=345&reno=331&oya=331&mode=msgview&page=0

alpha-49

全然予定通り進んでいないわけですが、バグ報告をいただいて直したまま抱え込んでいるのも気分良く無いので出しておきます。 http://panathenaia.halfmoon.jp/thebe/http://f22.aaa.livedoor.jp/~qwerty/private/wforum/wforum.cgi?no=331&reno=no&oya=331&m…

同期

同等なGUIスレッドが複数ある、という作りは、完全に別のプログラムが同一のメモリ空間内で動いているつもりで作れば何も問題ないのですが、中途半端に色々共有しようとすると途端に厄介になります。 例えばウィンドウメニューひとつとっても、他のGUIスレッ…

alpha-48

置き場を移動したのはいいものの、更新履歴を書くところを用意していませんでしたので、こっちに書くことにします。いまやここがメインですし…。ここのほうが便利そうですし…。 というわけでBDS2006使用の初バージョンです。 http://panathenaia.halfmoon.jp…

.manifest書いてビジュアルスタイルにしてみたら

普段縦スクロールバーの上に置いてある、スプリットボックス?と言うのかな。上限分割線の分割して無い状態の四角形。XPのビジュアルスタイルではスクロールバーの色が変わるためあれが浮いてしょうがない。 でもあれをスクロールバーと同じ色に塗ってしまっ…

SetForegroundWindow

thebe.exeやeofile.exeが複数起動された場合、ThebeではWM_COPYDATA、EOFileではDDEによって、元からあるプロセスに通知を行い、元からあるプロセスが新しくスレッドを作りウィンドウを開きます。 この時、元からあるプロセスは、当然フォアグラウンドでは有…

似非ClearType

http://d.hatena.ne.jp/yaneurao/20050131#p1…で記憶の片隅から。 最近Delphiの粗探しぐらいしかネタが無いしThe Village of Vampireにかまけて他のこともしてないので、まあ古いネタ再掲ということで。 去年のエイプリルフールに、おれんじぺこのシンプルタ…

設定のインポート/エクスポートその2

ダイアログとか作るの面倒だったものですから、手抜きに、setting.yamlで、これまで連番で記録したいた色と状態の値を名前で記録するようにして、エディタ上のコピー&ペーストで設定のインポート/エクスポートをできるようにしちゃいました。(益々ダイアロ…

下基準スクロール

ううむ、バイナリエディタを主張しすぎて、バイナリエディタとしか扱ってもらえてない…。ここはひとつテキストエディタとしてのThebeを宣伝しておかねば。*1さて、テキストエディタとしてのThebeが、他のテキストエディタに勝てる点と聞かれれば、私はまず下…

設定のインポート/エクスポート

現在デフォルトの設定は、Unknown, Text, HTML, Pascal, D, Adaと用意してあるわけですが、例えば、C言語の色分けが欲しい、となったとしましょう。Dで大部分代用できますが、やはり少々違うので、専用の設定が欲しくなるでしょう。しかし、私はCはデフォル…

キーマクロ

そろそろキーマクロをつけたくなってきたのですが、キーを押された順を覚えておくのと、実行されたアクションの順を覚えておくのと、どちらがいいのでしょうね? サクラエディタなんかは後者ですよね。 キーカスタマイズ付けると後者で無いとやってられませ…

固定長メモリマネージャ2

というわけでModern C++ Design*1を引っ張り出してきて、起きた頭で書き直し。 type TFixedMemoryManager = object private Memory: Pointer; UnitSize: Cardinal; First: Pointer; Last: Pointer; public constructor Initialize(AUnitSize: Cardinal); des…

固定長メモリマネージャ1

眠い頭で二時間ぐらいで書いてみました。 type TFixedMemoryManager = object private Memory: Pointer; UnitSize: Cardinal; First: Pointer; Last: Pointer; CachedBlock: Pointer; public constructor Initialize(AUnitSize: Cardinal); destructor Final…

diff (3)

ソースコードが{$IF}の嵐になってしまってる…というのは置いておいて。PukiWikiは移動経路をXとYの組で一歩ずつ配列に記憶していました。これをX,Y,Count,Prev,RefCountでリンクリストにします。CountはXとYが続けて同じように移動した時その幅を記録します…

diff

…Thebe上に実装してみたのはいいんですが、困ったのがeditgraphの管理。 Dで書けばint[int]、これをどう表現するか。KeyとValueをレコードにして、その動的配列でバイナリサーチとか。↓挿入が遅すぎ。待っても待っても終わりません。なら…。普通に二分木。↓…

diff

元の論文を読まずに、CやらRubyのソース辺をかき集めて動くように。http://hp.vector.co.jp/authors/VA007799/viviProg/doc5.htmhttp://raa.ruby-lang.org/search.rhtml?search=diff.rb struct Diff_Result { int[][2] path; } Diff_Result diff(char[] data…

新・見だし解析2

alpha-34としてリリースしてみました。 あつなついせいで、頭がのぼせてふやけてわけわからんです。こないだからの変更点は、単独のトークンで見出しを構成できるようにTHeadingActionが集合になった事ぐらい。 type THeadingAction = set of (haFirst, haLa…

Emacs

http://www.interq.or.jp/student/exeal/dss/res/alpha/diary0407.htmlEmacsも内部で文字コードを変換しないエディタですか? Thebe最大の売りが…微妙にショック。無知とは恐ろしや。

新・見出し解析

ルールテーブルとしてこんなレコードを用意して type THeadingAction = (haNone, haFirst, haLast); TParsingAction = (paNone, paEnter, paSwitch, paLeave); PParsingRule = ^TParsingRule; TParsingRule = record Current: WideString; Token: Byte; Toke…

私にはリンクを発見したら即座に逆リンクする癖があります

ときどき読ませていただいていたexealさんのAlphaの開発日記からリンクが。http://www.interq.or.jp/student/exeal/dss/res/alpha/diary0407.html Alpha と同じく開発開始から1年以上経っていてアルファバージョン。 ははははは 私がこのエディタに注目して…

色分け再実装終了…

でぃーえふえーでぃーえふえーでぃーえふえー伸ばし伸ばしになりかけていたのを実装しました。 文字列からいきなりDFAの構築を試みてますので、状態を示す変数が正規表現文字列上の位置を示してまして、それでは一回めと二回目以降の区別がつかないなんてず…

部分集合構成法

昨日、コンパイラⅠを立ち読みしてきました。(た、高いですからね、つ、Ⅱは持ってるんですよっ) 忘れないうちにメモを残しておきます。 集合構成法では、位置の集合を状態とし、状態と次の文字から次の状態を引けるような表を作るようです。例えば、次のよう…