~katsuhiko メッセージボード

back 1351-1400

1401-1450

1451-1500


1450 Re^2: ハマってしまいました。(ScrollBar) コメント数:  3件
  あきら  | 2001/07/23 (月) 20:25
 http://www.ariaki.com/
> uses
> StdCtrls;
>
> で、おっけ〜です。

見落としてました。アホな質問ですみません。

最近、SirCUM流行してますねぇ。
今日もなんか変なメール送られてきたし…



1449 Re: ハマってしまいました。(ScrollBar) コメント数:  4件
  本田勝彦  |  2001/07/23 (月) 00:15
 http://member.nifty.ne.jp/~katsuhiko
> if ReadBool('WordWrap', 'HorzScrollBar', True)
> then ShowScrollBar(Editor1.Handle, SB_BOTH, True)
> else begin
> ShowScrollBar(Editor1.Handle, SB_VERT, True);
> ShowScrollBar(Editor1.Handle, SB_HORZ, False);
> end;
>
> とやると上手く動作せず、

こっちが何故動作しないのかはわかりませんが、

> if ReadBool('WordWrap', 'HorzScrollBar', True)
> then Editor1.ScrollBars := ssBoth
> else Editor1.ScrollBars := ssVertical;
>
> は、ssBoth が未定義になります。

uses
StdCtrls;

で、おっけ〜です。



1448 ハマってしまいました。(ScrollBar) コメント数:  5件
  あきら  | 2001/07/22 (日) 10:54
 http://www.ariaki.com/
単純な質問ですみません。ScrollBar を実行時に設定したいんですが、
どうやったらいいかわかんないです。初心者なもので…(汗)

if ReadBool('WordWrap', 'HorzScrollBar', True)
then ShowScrollBar(Editor1.Handle, SB_BOTH, True)
else begin
ShowScrollBar(Editor1.Handle, SB_VERT, True);
ShowScrollBar(Editor1.Handle, SB_HORZ, False);
end;

とやると上手く動作せず、

if ReadBool('WordWrap', 'HorzScrollBar', True)
then Editor1.ScrollBars := ssBoth
else Editor1.ScrollBars := ssVertical;

は、ssBoth が未定義になります。
どうすれば、変更できるでしょうか?



1447 Re^3: 不具合かな? コメント数:  0件
  本田勝彦  |  2001/07/18 (水) 23:12
 http://member.nifty.ne.jp/~katsuhiko
> 原因が解りました。MarkWidthが0(初期値としては、まずいかも)になって
> いたので隠れていたようです。

いかったですね。

> プロパティエディタのプレビューに表示されていたのでOKかと思っていました。
> しかし、Refreshで表示されるのは何故???

描いちゃうんですね。これが(^^; PutRowMark したときは、該当領域だけ再描画
されるので、一部分しか見えないのだと思います。

> >ポップアップメニューをこしらえるように CreatePopupMenu を override した
> TEditor の拡張コンポをこしらえて下さい。
>
> 頑張ってみます。

過去ログ 451-500 にあるようです。まんま使える技ですので
よろしくお願い致します。



1446 Re^2: 不具合かな? コメント数:  1件
  夜ゲイツ  | 2001/07/18 (水) 14:12
> ちょっと原因が見えません。Refresh すると綺麗に見えるというところが
> 変な感じ。

原因が解りました。MarkWidthが0(初期値としては、まずいかも)になって
いたので隠れていたようです。
プロパティエディタのプレビューに表示されていたのでOKかと思っていました。
しかし、Refreshで表示されるのは何故???

>ポップアップメニューをこしらえるように CreatePopupMenu を override した
TEditor の拡張コンポをこしらえて下さい。

頑張ってみます。

> ウチのD4は、Shift + Ctlr + 0..9 なんですけどね(^^;

それでも動くんですね!正確には「ワードスター互換」でした。



1445 TEditor ver 2.22 コメント数:  0件
  本田勝彦  |  2001/07/18 (水) 01:40
 http://member.nifty.ne.jp/~katsuhiko
公開です。WrapLines メソッドを見直して、WordWrap = True の状態で
WrapByte が更新されても、マークが1カ所に集まるという現状を回避しました。

Speed プロパティが増えました。
ページスクロール量や、キーリピート時の縦のスクロール量をコントロール
出来るようになりました。
InitBrackets を最後までやるかどうかもコントロール出来るように
なりました。



1444 Re: 不具合かな? コメント数:  2件
  本田勝彦  |  2001/07/18 (水) 01:37
 http://member.nifty.ne.jp/~katsuhiko
> お陰様で理想的なエディタエンジンに近づいてきました。

どもども

> Edit.PutRowMark(Row, rm12); <-ゴミみたいなのしか表示しない
> Edit.Imagebar.OnChange(Self); <-これで表示するがチラつく
>
> Refreshすると綺麗に表示します。

ちょっと原因が見えません。Refresh すると綺麗に見えるというところが
変な感じ。

> 箱形選択の「Ctrl+K」を「Ctrl+B」(BoxのB)とかに変更してでも、ボーランド互換
> に出来ないでしょうか、私だけのお願いではないと思いますが、ご検討下さいませ。

ここの過去ログにもあったように思いますが、CreateMenuItem を override した
ポップアップメニューをこしらえるように CreatePopupMenu を override した
TEditor の拡張コンポをこしらえて下さい。

ウチのD4は、Shift + Ctlr + 0..9 なんですけどね(^^;



1443 不具合かな? コメント数:  3件
  夜ゲイツ  | 2001/07/17 (火) 21:50
お陰様で理想的なエディタエンジンに近づいてきました。
今日一日実装に励んでいましたが、下記PutRowMark()部分でうまく表示しません。
何か表示する上で、おまじないみたいなものが必要なのでしょうか?

Edit.PutRowMark(Row, rm12); <-ゴミみたいなのしか表示しない
Edit.Imagebar.OnChange(Self); <-これで表示するがチラつく

Refreshすると綺麗に表示します。
また明日やってみますが、何か解ったら教えて下さい。

それと、ボーランドIDEの使い過ぎか、マーク設定のキーアサインがCtrl+K+0..9
が手に染みついていまして、ついつい手が勝手に動いてしまいます。
箱形選択の「Ctrl+K」を「Ctrl+B」(BoxのB)とかに変更してでも、ボーランド互換
に出来ないでしょうか、私だけのお願いではないと思いますが、ご検討下さいませ。



1442 Re: 続き コメント数:  0件
  本田勝彦  |  2001/07/17 (火) 09:57
(1) はそういう仕様です。Delphi のコードエディタもそうなっていたので(^^;
元に戻すには、Undo データに TEditorScreenStrings を持たせる必要があるので、
今のままになると思います。
でも、下のショクパンマンが消えるのは気持ちよくないですね。ちょっと
考えてみます。

(2) は、WrapOption が Assign されるので、WordWrap = True では、文字列の
再構築が行われるためですね。PropertyEqual 関数などを導入するなどして、
改善したいと思います。

(3)なりますね。初めて見ました(^^;
直すかもしれません。そのままになる可能性もあります(^^;;;;

レポートありがとうございます。




1441 続き コメント数:  1件
  ほしけん  | 2001/07/16 (月) 22:19
 http://www.hosiken.Afis.To/
(その3) イメージとは関係ないです。
1.画面を2分割する
2.片方はどこからでもいいので、EOFまで選択
3.もう片方のエディタで、EOF側からBackSpaceを使い文字を削除していく。
4.選択状態になっているほうのエディタが、EOF以降の文字のない部分も反転表示になってしまう。
※見た目以外の実害はありません。



1440 その他気になる現象 コメント数:  2件
  ほしけん  | 2001/07/16 (月) 22:18
 http://www.hosiken.Afis.To/
> > TSinEditを見てて「ウラヤマシイ!!」と思っていた日々も終わりそうです。
>
> あ、やっぱり。悔しかったですよね。<SynEdit

> ハンパンマンって?(^^; いや失礼(^^;
うまいっ!! おーい、山田くん、全部もってい…あ、いや、何でもないです(笑)

> さすが、ほしけんさんイジメどころを心得ていらっしゃる(^^;
実は、後述の現象が気になっていたので、いろいろ試しているうちに偶然発見したんです(笑)
その現象ですが、サンプルプロジェクトのImageBarタブを例に説明します。
# さらにいろいろイジメてみました(^^;

(その1)
1.53行(アンパンマン)を一行選択
2.削除キーを押す
3.アンパンマンと下のショクパンマンが52行のニコちゃんマークに移動してしまう
4.しかもアンドゥしても、元の場所に戻らない

(その2)
1.環境設定から、フォントを変更(例えば、MS ゴシックの9P)にしてみる。
2.それだけで、アンパンマン、ピカチュウ、ニャースがなくなって、ドラえもんが一行上に移動する

(文字数オーバーのため次の記事に続きます)



1439 Re^3: TEditor ver 2.20 コメント数:  0件
  KWX   | 2001/07/16 (月) 05:14
 http://homepage2.nifty.com/kwx/
> まんまだと出来ないですね。K2さんやDEKOさんのは出来ていたような
> 気がしたのですが、どうやってるのでしょうねぇ。

なるほど。 UndoObj あたりに手を加えているのかな?
まあ、気にしないことにします(^^)




1438 Re^3: テキストエディタ情報 コメント数:  0件
  本田勝彦  |  2001/07/16 (月) 01:36
 http://member.nifty.ne.jp/~katsuhiko
http://www.egroups.co.jp/files/sakura-editor/Source/sakura_2001-07-14_RC4.3_src.zip

からソースコードをダウンロード出来ました。

C/C++ のコードって美しくない(^^;




1437 TEditor ver 2.21 コメント数:  4件
  本田勝彦  |  2001/07/16 (月) 01:25
 http://member.nifty.ne.jp/~katsuhiko
公開です。ハンパンマン現象が回避されました。
FValidRowMarks データ更新処理が少し美しくなりました。



1436 Re^4: TEditor ver 2.20 コメント数:  0件
  本田勝彦  |  2001/07/16 (月) 01:23
 http://member.nifty.ne.jp/~katsuhiko
> 説明不足ですみません。やりたいことは、クリックにより、mr10..mr15が
> 順に切り替わっていき、mr15になったらmr10に戻すという操作でした。
> 数が多かったので、ジャンプではなくマークの方を使ってました。
> が、これだとマークは自分で消さないといけないのですね。

そうですね。rm10..rm15 を設定するときに、ListRowMarks の値を参照して
該当 TRowMark データをあてがうという処理が必要になると思います。





1435 Re^2: TEditor ver 2.20 コメント数:  1件
  本田勝彦  |  2001/07/16 (月) 01:21
 http://member.nifty.ne.jp/~katsuhiko
> v2.20 さっそく使わせてもらってますが、
> しおり機能とイメージ表示機能いいっすね(^。^)
> すげぇ便利です。

どもです。

> すが、Undo したときに文書が編集前に戻ったか
> を知る方法って無いですか?

まんまだと出来ないですね。K2さんやDEKOさんのは出来ていたような
気がしたのですが、どうやってるのでしょうねぇ。



1434 Re^3: TEditor ver 2.20 コメント数:  1件
  Km   | 2001/07/15 (日) 20:47
 http://homepage2.nifty.com/Km
>PutRowMarks, DeleteRowMarks を利用する限り、rm0..rm9 はトグル
>しますが、rm10..1m15 はトグルしませんね。

説明不足ですみません。やりたいことは、クリックにより、mr10..mr15が
順に切り替わっていき、mr15になったらmr10に戻すという操作でした。
数が多かったので、ジャンプではなくマークの方を使ってました。
が、これだとマークは自分で消さないといけないのですね。

>TEditorScreenStrings に ValidRowMarks メソッドがありますが、
>それでは機能不足ですか?

調べてみます。どもでした。



1433 Re: TEditor ver 2.20 コメント数:  2件
  KWX   | 2001/07/15 (日) 18:44
 http://homepage2.nifty.com/kwx/
本田さん、こんにちは。

v2.20 さっそく使わせてもらってますが、
しおり機能とイメージ表示機能いいっすね(^。^)
すげぇ便利です。

ところで、 v2.20 の新機能とは異なる話なので
すが、Undo したときに文書が編集前に戻ったか
を知る方法って無いですか?
アプリの終了時に、文書が変更されていると保存
するかどうかを尋ねるのですが、編集後 Undo で
戻した場合は尋ねたくないのです。
Modified かなと思いましたが、True のままで
した。



1432 Re^2: TEditor ver 2.20 コメント数:  2件
  本田勝彦  |  2001/07/15 (日) 17:08
> 早速v2.20のマーク機能を使ってみました。いい感じですね。

どうもです。

> で、要望なのですが、マーキングをトグル式にしたいので、
> 現在何個のマークがあるかを返すRowMarkCountプロパティが
> 欲しいです。作る予定が無ければTEditorExに実装しますが、
> もし作っていただけるのならうれしいです。

PutRowMarks, DeleteRowMarks を利用する限り、rm0..rm9 はトグル
しますが、rm10..1m15 はトグルしませんね。
TEditorScreenStrings に ValidRowMarks メソッドがありますが、
それでは機能不足ですか?

次のでは、FValidRowMarks 更新処理がもう少しマトモになります。



1431 Re^2: TEditor ver 2.20 コメント数:  0件
  本田勝彦  |  2001/07/15 (日) 17:04
> おお〜っと、以外と早かったですね!!!
> 感謝と感激しながら、使わせていただきます。

どうもです。何か不具合がありましたら、レポート宜しくお願い致します。

> DEKOさんも、ぼちぼち2.XXに移行してみてはどうでしょう!

どうでしょう(^^;



1430 Re^2: TEditor ver 2.20 コメント数:  3件
  本田勝彦  |  2001/07/15 (日) 17:02
> TSinEditを見てて「ウラヤマシイ!!」と思っていた日々も終わりそうです。

あ、やっぱり。悔しかったですよね。<SynEdit

> イメージ表示中に、LeftBarの行番号の桁数が変更されると、
> ドラ○もんやアンパ○マンが2体に分裂したり(桁数が増えたとき)、
> 右半分がなくなったりします(桁数が減ったとき)。(^^;

ハンパンマンって?(^^; いや失礼(^^;

さすが、ほしけんさんイジメどころを心得ていらっしゃる(^^;
確認出来ました。次のではなおしますね。
レポートありがとうございます。



1429 Re^4: テキストエディタ情報 コメント数:  0件
  本田勝彦  |  2001/07/15 (日) 16:59
> TEditorが負けていると言えるのは
>
> 1) 1行に表示できる文字数
> 2) 検索・置換の遅さ(TEditorの文字列の保持の仕方が問題かな)
> 3) 行頭や行末、→や←等に割り当てられた手続きの変更不可

いよいよ TStringsStream を書かなければいけないようですね。
3) については、2.30 で実装したいと思っています。

> # 今回はHEditor.pasを重ねて10MBのテキストを作ってテスト
> # したんですが、実際にそういったサイズのテキストをエディターで
> # 扱うことってあるんですかね。

CAD な方はそんなモンみたいですよ。ねぇ夜ゲイツさん。



1428 Re: TEditor ver 2.20 コメント数:  3件
  Km   | 2001/07/15 (日) 15:17
 http://homepage2.nifty.com/Km
ども、Kmです。
早速v2.20のマーク機能を使ってみました。いい感じですね。
で、要望なのですが、マーキングをトグル式にしたいので、
現在何個のマークがあるかを返すRowMarkCountプロパティが
欲しいです。作る予定が無ければTEditorExに実装しますが、
もし作っていただけるのならうれしいです。
以下は試しにちょっと作ってみたものです。どうでしょうか。

function TEditor.GetRowMarkCount: Integer;
var
I, C: Integer;
Mark: TRowMark;
begin
C := 0;
for I := 0 to FList.Count - 1 do
if FList.RowMarks[I] <> [] then
for Mark := rm0 to rm15 do
if Mark in FList.RowMarks[I] then
Inc(C);
Result := C;
end;



1427 Re: TEditor ver 2.20 コメント数:  1件
  夜ゲイツ  | 2001/07/15 (日) 11:51
こんにちは、本田さん。

> というわけで、ver 2.20 の公開です。
>
> しおり機能とイメージ表示機能が追加されています。
>
> どうぞお試し下さいませ。

おお〜っと、以外と早かったですね!!!
感謝と感激しながら、使わせていただきます。
DEKOさんも、ぼちぼち2.XXに移行してみてはどうでしょう!



1426 Re: TEditor ver 2.20 コメント数:  4件
  ほしけん  | 2001/07/15 (日) 08:58
 http://www.hosiken.Afis.To/
> というわけで、ver 2.20 の公開です。
>
> しおり機能とイメージ表示機能が追加されています。
>
> どうぞお試し下さいませ。

わお!! 予想もしていなかった新機能ですね。お疲れ様です。(^^)
TSinEditを見てて「ウラヤマシイ!!」と思っていた日々も終わりそうです。

イメージ表示機能にちょっとした不具合が見つかりました。
イメージ表示中に、LeftBarの行番号の桁数が変更されると、
ドラ○もんやアンパ○マンが2体に分裂したり(桁数が増えたとき)、
右半分がなくなったりします(桁数が減ったとき)。(^^;
サンプルプロジェクトのImageBarタブで、行数を100行に増やした(減らした)
瞬間に確認できました。再描画されると直ります。



1425 Re^3: テキストエディタ情報 コメント数:  1件
  みずほちゃん  | 2001/07/15 (日) 04:07
 http://www.portnet.ne.jp/~mzh/
ざっと使ってみた感じでは
エディターとしての基本性能で
TEditorが負けていると言えるのは

1) 1行に表示できる文字数
2) 検索・置換の遅さ(TEditorの文字列の保持の仕方が問題かな)
3) 行頭や行末、→や←等に割り当てられた手続きの変更不可

の三つくらいですね。

色付き表示はTEditorの方が遅いですが、
それは各FountainParserがそれぞれのフォーマットに
特化した解析をしているからだと思います。
各FountainParserに解析を簡略化するオプションがあれば
この問題は回避できるように思います。

# 今回はHEditor.pasを重ねて10MBのテキストを作ってテスト
# したんですが、実際にそういったサイズのテキストをエディターで
# 扱うことってあるんですかね。

1、2、3の問題はすでに要望として一度は出てきているものなので、
将来は改良されるのではないでしょうか?



1424 Re^2: テキストエディタ情報 コメント数:  3件
  みずほちゃん  | 2001/07/15 (日) 02:59
 http://www.portnet.ne.jp/~mzh/
> 情報ありがとうございます。C/C++ はワカランしなぁ(^^;
>
> TEditor もそろそろその役目を終えようとしているのかもしれませんね。
新版のテキストエディターはGPLライセンスなので、
シェアウェア等を作るのは無理です。
そういった意味ではTEditorの意味はあると思います。

# それにDelphiだとC/C++のソースは簡単には使えないですし(^^;

あと、補足ですが、GPLライセンスだとソースコードの入手は自由なので、
一時的とはいえ、ソースが公開されていないというのは
ライセンス的におかしいです>ゆうきひろさん



1423 TEditor ver 2.20 コメント数:  14件
  本田勝彦  |  2001/07/15 (日) 01:12
 http://member.nifty.ne.jp/~katsuhiko
というわけで、ver 2.20 の公開です。

しおり機能とイメージ表示機能が追加されています。

どうぞお試し下さいませ。



1422 Re: テキストエディタ情報 コメント数:  4件
  本田勝彦  |  2001/07/15 (日) 00:53
 http://member.nifty.ne.jp/~katsuhiko
>  今日 'テキストエディタ' というテキストエディタを遅まきながら知りまし
> た。

情報ありがとうございます。C/C++ はワカランしなぁ(^^;

TEditor もそろそろその役目を終えようとしているのかもしれませんね。

といいつつ、ver 2.20 を公開しました。しおり機能を実現するための新機能
が実装されました。

あとは、コマンドを解釈する人を追加すれば、一応完成ですね。



1421 テキストエディタ情報 コメント数:  5件
  ゆうきひろ  | 2001/07/15 (日) 00:43
 http://homepage2.nifty.com/ultla7/mozart/_start.htm
 ここに来る方は知っている方が多いかもしれませんが・・・・・
 今日 'テキストエディタ' というテキストエディタを遅まきながら知りまし
た。
 私はテキストエディタについては、正規表現検索や大規模なテキストを処理
するときは秀丸、ソースコードの編集は TeraPad でという組み合わせで使い分
けてきたのですが、ここでいっきに 'テキストエディタ' に移行するかもしれ
ません(^_^;)。
 なにしろとても高機能・多機能で、検索・置換スピードも十分早く 20MB 程
度の巨大テキストの読み書きも秀丸に匹敵するか上回るくらいです。それでい
て TeraPad と同じくとくに面倒な設定をしなくてもソースコードの色分けが可
能です。
 まだ見てはいないですが TEditor と同じくソースコードも公開していてで、
すでに個人の開発というより共同開発となっているようです(コンパイラは
Visual C/C++)。
 もしご存じない方は下記のHPで。
 http://hp.vector.co.jp/authors/VA016528/
※ソースコードは常時公開しているわけではないようです。



1420 Re^2: カーソルがぷるぷる [解決] コメント数:  0件
  ほしけん  | 2001/07/13 (金) 21:53
 http://www.hosiken.Afis.To/
> SetRowCol メソッドを ver 2.10 の実装に戻して頂ければ治りますので、
> お手数ですがソースコードを修正して下さい。

レスどうもです。直りました。ありがとうございます。m(_ _)m



1419 Re^3: SearchText コメント数:  0件
  ゆうきひろ  | 2001/07/13 (金) 02:06
 http://homepage2.nifty.com/ultla7/mozart/_start.htm
 いや、別に深い意味はじぇんじぇんないのです(^^;)。
 動作確認のための使い捨て文字列処理プログラムを作るとき、検索には
AnsiPos を使うことが多いのでその代わりにならないかなと思ったまでです。
 失礼しました。




1418 Re^2: SearchText コメント数:  1件
  本田勝彦  |  2001/07/13 (金) 01:37
 http://member.nifty.ne.jp/~katsuhiko
どういうことを実装されたいのかが、わからんです(^^;
そのあたり、もう少し情報を頂けますか?




1417 Re^4: テスト コメント数:  0件
  本田勝彦  |  2001/07/13 (金) 01:31
 http://member.nifty.ne.jp/~katsuhiko
解説ありがとうございます。少し見えました。
もう少しソースコードを追ってみます。



1416 Re: カーソルがぷるぷる コメント数:  1件
  本田勝彦  |  2001/07/13 (金) 01:21
 http://member.nifty.ne.jp/~katsuhiko
> だいぶ前に、全角文字列やタブの中で、左クリックしながら微妙にマウスカーソルを動かすと、キャレットが左右にぷるぷる震えるバグがありましたが、V2.13で復活してしまったようです。(^^;
> ご確認、よろしくお願いします。

確認出来ました。レポートありがとうございます。
以下言い訳モード。ExpandTabLength を導入した際、ver 2.11 で SetRowCol
メソッドを何げに元に戻したのが敗因です。

SetRowCol メソッドを ver 2.10 の実装に戻して頂ければ治りますので、
お手数ですがソースコードを修正して下さい。



1415 Re: SearchText コメント数:  2件
  ゆうきひろ  | 2001/07/12 (木) 23:07
 http://homepage2.nifty.com/ultla7/mozart/_start.htm
続きです。
【使用例】
 TEditor1.SelectAll;
 TEditor1.SelText :=
  ReplaceStr(TEditor1.SelText, FSearchValue, FReplaceValue);



1414 SearchText コメント数:  3件
  ゆうきひろ  | 2001/07/12 (木) 23:06
 http://homepage2.nifty.com/ultla7/mozart/_start.htm
  SearchText を AnsiPos のように使おうと思って以下のようにコーディング
したのですがうまくいきません。デバッガで追うとTEditor のソースの
TEditor.GetSelText の辺をうろうろします(^^;)。もっともTMemoでやってもお
かしいので使用法に根本的な誤りがあるのだろうと思いますが。
※インデントは全角空白です。

//AnsiPos とは Substr と S の順序が逆!
function TForm1.SearchTextPos(S, Substr: string; SOp: TSearchOptions): Integer;
var
 Info: TSearchInfo;
begin
 Info.Start := 0;
 Info.Length := 0;// これが怪しいような・・・・・
 if SearchText(PChar(S),Info, Substr, SOp) then
  Result := Info.Start
end;

//一括置換
function TForm1.ReplaceStr(S, Substr, RS: string): string;
var
 i, L: Integer;
begin
 Result := '';
 L := Length(Substr);
 i := SearchTextPos(S,Substr,FSearchOptions);
 while i <> 0 do
 begin
  Result := Result+Copy(S, 1, i-1) + RS;
  Delete(S, 1, i+L-1);
  i := SearchTextPos(S,Substr,FSearchOptions);
 end;
 Result := Result+S;
end;



1413 Re^3: テスト コメント数:  1件
  みずほちゃん  | 2001/07/12 (木) 02:24
 http://www.portnet.ne.jp/~mzh/
続きを書こうと思ったのですが、
かなり長いので、私の日記の7/11の部分に移しました。

http://www.portnet.ne.jp/~mzh/diary/recent.html




1412 Re^2: テスト コメント数:  2件
  みずほちゃん  | 2001/07/11 (水) 23:30
 http://www.portnet.ne.jp/~mzh/
> 遅くなりまして、すみません。見せて頂きました。が、いまだにロジックを
> 読みとれていません。やろうとしているのは、そこにあるべき単語を前後の
> トークンの連なりから見つけて書き出すという処理ですよね。
YeanaEditorの

GetExpandingStringは略語展開されるトークンを切りだし、
Search〜はTEditorDabbrevのオブジェクトと連係して略語の候補を探し、
DabbrevNextCandidateは略語の条件に一致する候補を設定し、
WriteCandidateは設定された略語の候補の書き出しを行います。

> セレロン533ですが、十分に速いですよ。
遅いです。
HEditor.pasを三つ重ねて、1MBのテキストファイルにし、
「hhhhhhhh」と入力してから補完してみてください。

> TEditorDabbreb の仕組みが読みとれないんですよね(^^;
> よろしかったらキモを少し解説していただけると有り難いです。
これに関しては次の投稿で。

> TEditor にジャンプマークを表示させる実装にハマっていたのが本当の
> トコロで申し訳ないのですが。
いえ、意見が聞けたら良いなと思って載せてあるだけですので、
TEditorの開発が忙しいのでしたら、そちらの方を優先してください。



1411 カーソルがぷるぷる コメント数:  2件
  ほしけん  | 2001/07/11 (水) 21:16
 http://www.hosiken.Afis.To/
こんにちは、いつもお世話になってます。

だいぶ前に、全角文字列やタブの中で、左クリックしながら微妙にマウスカーソルを動かすと、キャレットが左右にぷるぷる震えるバグがありましたが、V2.13で復活してしまったようです。(^^;
ご確認、よろしくお願いします。



1410 Re: テスト コメント数:  3件
  本田勝彦  |  2001/07/11 (水) 01:31
 http://member.nifty.ne.jp/~katsuhiko
> 動的略語展開の件ですが、とりあえず作ったので、載せてみます。

遅くなりまして、すみません。見せて頂きました。が、いまだにロジックを
読みとれていません。やろうとしているのは、そこにあるべき単語を前後の
トークンの連なりから見つけて書き出すという処理ですよね。
セレロン533ですが、十分に速いですよ。

TEditorDabbreb の仕組みが読みとれないんですよね(^^;
よろしかったらキモを少し解説していただけると有り難いです。

TEditor にジャンプマークを表示させる実装にハマっていたのが本当の
トコロで申し訳ないのですが。



1409 Re^6: D2 & Ver 2.13 コメント数:  0件
  みずほちゃん  | 2001/07/10 (火) 20:06
 http://www.portnet.ne.jp/~mzh/
> UPXをオリジナルのまま使用するぶんには、圧縮したものは商用も含めて自由に配布出来ると解釈して良いと思います(英語力が貧弱なので、確証は...(^^;)。
私もそう解釈しています。

> で、ふと思ったのですが、
> 4)既にウィルスに感染している実行ファイルを圧縮した場合には、ウィルスチェッカーで見つからない?
> といった問題も考えられます。
> #手元にウィルス感染したファイルが無いので確認は出来ませんが...(^-^;
私も良く分かりませんが、可能性はあると思います。

# ウィルスチェッカーは信用していないので、
# 私的にはどうでも良いと思っていますが。



1408 Re^5: D2 & Ver 2.13 コメント数:  1件
  M&I  | 2001/07/10 (火) 09:56
 http://member.nifty.ne.jp/m-and-i/
> 3) ライセンス

UPXをオリジナルのまま使用するぶんには、圧縮したものは商用も含めて自由に配布出来ると解釈して良いと思います(英語力が貧弱なので、確証は...(^^;)。

で、ふと思ったのですが、
4)既にウィルスに感染している実行ファイルを圧縮した場合には、ウィルスチェッカーで見つからない?
といった問題も考えられます。
#手元にウィルス感染したファイルが無いので確認は出来ませんが...(^-^;



1407 Re^4: D2 & Ver 2.13 コメント数:  2件
  みずほちゃん  | 2001/07/09 (月) 19:24
 http://www.portnet.ne.jp/~mzh/
# こういう問題に首を突っ込んでもなあ>自分

> 1)実行時にメモリが余計に必要
> 2)圧縮したものを元に戻した場合に、元ファイルとの差異が発生する
> の二点だったと思います。
3) ライセンス

http://wildsau.idv.uni-linz.ac.at/mfx/upx-license.html

によればきちんとUPXライセンスを守らないと、
UPXで圧縮した自分のソフトを配布する際に
GPLに従って配布しなければなりません。
GPLでも構わないというのならともかく
そうでないのなら注意が必要です。
まあ、普通に使う分にはGPLで配布する事態に
はならないと思います。

# でも、UPXMaskはUPXライセンスに違反している可能性があります。



1406 Re^3: D2 & Ver 2.13 コメント数:  3件
  M&I  | 2001/07/09 (月) 17:05
 http://member.nifty.ne.jp/m-and-i/
>本当に何か問題になる点はないのでしょうか。

以前私の所の掲示板にUPXの問題点について書き込みがありました。

1)実行時にメモリが余計に必要
2)圧縮したものを元に戻した場合に、元ファイルとの差異が発生する
の二点だったと思います。

1)については自分でも確認しましたが、実行時にメモリ上に元ファイルを展開するためか確かに大きくなります。
しかしながら余程大きな実行ファイルを圧縮したのでない限りは問題にならないレベルです。
2)については、実行ファイル中のゴミ部分をはしょって圧縮しているために、この部分が元に戻らないのであろうと推察されます。

他の人が作ったものを圧縮するのならともかく、自作品をUPX圧縮して自分で動作確認するのであれば、まったく問題ないと考えます。
#ちなみに最近の拙作ソフトは全てUPX圧縮したうえでリリースしていますが、現在まで原因不明の動作異常は報告されていません。



1405 Re^2: D2 & Ver 2.13 コメント数:  4件
  ゆうきひろ  | 2001/07/09 (月) 00:32
 http://homepage2.nifty.com/ultla7/mozart/_start.htm
> 最近 DelphianWorld で UPXMask というアプリケーションが
> アップロードされたのですが、この UPX というものを使えば、
> 実行ファイル自体が圧縮されます!圧縮されたまま実行可能で、
> ロードも速くなるし配布も軽いしで、一石2鳥!!
> 凄いのがこれまた、DLLでもSCRでも圧縮可能だということ!!

 いや、これ実は前から気になっていたのですが、なんとなくなかなか導入に踏み切れなかったのです。Readme.txt を見ればいいことずくめなんですが、本当に何か問題になる点はないのでしょうか。本家のUPXのHPも覗いてみましたがなにせ英語がさっぱりなので(;_;)。今日本語で詳細な説明をしているサイトを捜しているのですがなかなか見つかりませんねえ。




1404 テスト コメント数:  4件
  みずほちゃん  | 2001/07/08 (日) 04:22
 http://www.portnet.ne.jp/~mzh/
動的略語展開の件ですが、とりあえず作ったので、載せてみます。

今のところ

1 日本語の扱いが変
2 ファイルの先頭の方向に向かって補完候補を探索する時に
同じ行に複数の補完候補があると、一つしか補完されない
3 遅い(間違ってもPC98とかでテストしないでください)
4 既にでてきた補完候補が何度も補完されることがある

といった具合になっています(^^;

http://www.portnet.ne.jp/~mzh/archive/test.lzh

にはソースしかないので、RubyFountain.pasとHEditor.pasを
testディレクトリに突っ込んで、コンパイルしてください。
D4なら無修正でいけると思います。

# Heditor.pasはテスト用にエディターに読みこみます。




1403 Re: D2 & Ver 2.13 コメント数:  5件
  かとちん  | 2001/07/08 (日) 03:52
 http://homepage2.nifty.com/t-katochin
>  いまどき D2 を使用している人は滅多にいないと思いますが(^^;)
>  D2 でのProject1.exeのサイズ 596480 bytes
>  D5 でのProject1.exeのサイズ 784896 bytes
良い方法があります!
最近 DelphianWorld で UPXMask というアプリケーションが
アップロードされたのですが、この UPX というものを使えば、
実行ファイル自体が圧縮されます!圧縮されたまま実行可能で、
ロードも速くなるし配布も軽いしで、一石2鳥!!
で、lzh圧縮したらどうなるかなぁと試したのですが、UPXしたEXEと
そうでないEXEのそれぞれの、lzh でも、UPX の方がサイズが小さく
なるようです!!
凄いのがこれまた、DLLでもSCRでも圧縮可能だということ!!
私は、これが手放せなくなっちゃいました。
いやあ久しぶりにビックリしました。



1402 Re: D2 & Ver 2.13 コメント数:  0件
  本田勝彦  |  2001/07/06 (金) 01:58
 http://member.nifty.ne.jp/~katsuhiko
>  さて、サンプルの実行ファイルでについてですが D5 では問題ないですが D2
> では
>
>   EReadErrorがモジュールProject1.exeの
>   0000B3D3 で発生しました。
>   Props.OldCreatorOder の読み込み中のエラー:プロパティが存在しません。

あり?サンプルやコンポの .dfm を一度全部D2で開いて保存したハズなので、
EReadError は出ないハズなのですが・・・忘れたかもしれません。(^^;

CharSet など、D3以降で追加されたプロパティがありまして、D2ではそれを
開けない旨のエラーです。

これが出たときは、D2で一旦全部の .dfm を持つ .pas を開いて
(Delphi が文句たれますが「総て無視」ボタンが強力です)
全部保存して再構築すれば大丈夫です。

D3以降で同じことをすると、またD2が文句たれるようになります。

> ですので、できたら TEditor はもうしばらく D2 でも使いたいです。

使えますよ。動作確認はいまだにD2ですから(^^;

>  しかし、まあサンプルファイルとは思えないような、堂々たるアプリになりま
> したね(^_^;)。

メニュー付いたし、後はスピードボタンか(^^;;;



1401 D2 & Ver 2.13 コメント数:  7件
  ゆうきひろ  | 2001/07/05 (木) 03:06
 http://homepage2.nifty.com/ultla7/mozart/_start.htm
 Ver 2.13 を遅ればせながら試用しています。Ver 2.03 からの以降ですので
TFountainParser などにとまどいながら楽しんでます。
 さて、サンプルの実行ファイルでについてですが D5 では問題ないですが D2
では

  EReadErrorがモジュールProject1.exeの
  0000B3D3 で発生しました。
  Props.OldCreatorOder の読み込み中のエラー:プロパティが存在しません。

という実行エラーが出ます(Win98)。

 いまどき D2 を使用している人は滅多にいないと思いますが(^^;)
 D2 でのProject1.exeのサイズ 596480 bytes
 D5 でのProject1.exeのサイズ 784896 bytes
ですので、できたら TEditor はもうしばらく D2 でも使いたいです。
 しかし、まあサンプルファイルとは思えないような、堂々たるアプリになりま
したね(^_^;)。