mp3のID3v2タグは何故あんなに取得が面倒なんでしょうか。自力で取得しようと英語読んだりして少し頑張りましたが、眠くなったので外人さんの書いたコンポを使わせて頂くことにしてしまいました。
とりあえず、Dimの基幹部分が出来ました。概要は...
以上です。あとはホットキーをペンペンと付けて、申し分程度の例外処理をすれば、晴れて廃物の仲間入りです。機能が恐ろしく少ないですが、それが味噌です。多機能はWinampとかWMP等にまかせておけば良いのですよ。作者はあまりに高機能なアプリケーションというのは実はそれほど好きではなかったりするのです。
Dim造ってて思ったのですが、使用者が自由に定義出来るコマンドという仕様を構築するに当たり、GetProcAddressを利用すれば物凄く楽が出来るじゃないですか。アプリケーション側があらかじめコマンドを宣言しておき、あとはIniFile等から読み出した文字列を引数としてGetProcAddressでアドレスを取得、実行。こ、これは楽だ…。何故今まで気付かなかったのだろう?…まぁ、そんなことは如何でも良い。折角ですので、この仕様を採用してみるとします。巧くいった暁にはChevronにも還元しますか。
…Chevronリソース生成ツール試作品用の作業フォルダが二十個超えてしまいました。ここまで仕様に悩むのは初めてです。う〜む。ここは一つ、気分転換に何か他のブツでも造ってみることにします。ああ、そうだ、丁度良い機会ですので、簡易mp3プレイヤーのDimでも造り直してみます。内部の最適化とGUIでの操作を実装させましょう。…あれ?Dimの公開が停止してるじゃないですか…。おかしいな、確か公開して放置してあったはずですが…?う〜む…。まあ、良いか。とりあえず、サクサクと造ってしまい、廃物を増やすことします。
Chevron用リソースのGUI操作による作成支援ツールのようなブツを造ろうかと画策しているのですが、如何にも良くない。何がと申しますと、見た目です。UIの仕様が全くもって決まらないんですよ。まず、普通のアプリのようにするか、それとも設定ダイアログ風にするかで悩みます。そして、特に後者の場合にはTreeViewを使うか、それともTabControlを使うか、いや、ここは一つ「プロジェクト切り替え型」みたいな良くわからない謎の仕様にしてみるか…などなど、候補がありすぎて決められません。悩んでいてもしかたありませんので、とりあえず候補から適当に一つ選んで造り始めよう…と行動し始めるのですが、枠組みを造っている段階で他の案が「この上なく」面白そうに思え、そっちの案に乗り換えたくなるんですよ。いや、参った。意味が全く違うような気がしないでもないですが、感覚的には要はアレです、「三すくみ」みたいな感じです。迂闊に動けない。う〜む…。困ったものだ…。
カレンダーを何となく描きあげました。下の投稿のURLに上書きアップです。まだカスタマイズを提供出来ていませんが、ちゃんとSimDiaryに付けているカレンダーと同程度のカスタマイズ性は考慮してあったりします。SimDiary付属カレンダーと比較すると、安定性が低いこと、メモリーリークしてそうな気が多少すること、そして保守に掛かるコストが高いこと等が駄目駄目ですが、メモリ使用量と描写コストの低さで五分五分といったところでしょうか。
こんな感じになりました。何も変わっていない様に見えると思いますが、中身は完全に別物です。よって、Xreaさんのとこにあるプラグインは読み込めません。また、同梱してある"SimDiary.dll"は仕様を変更するかもしれません。あと、タイトル欄ですが、本体やエディタからは切り離し、タイトル一覧プラグインでも拵え、それで管理する事にしました。どこにあのタイトル用エディットを設けるか、という問題がUIのバランスを考慮すると余りに難しいため、面倒になってうっちゃってしまいました。
…とりあえずタイトル一覧はおいといて、次はカレンダーでも描いてみます。今SimDiaryに付いてるカレンダーと較べて同等か少し劣る程度のブツを目指してみようかと思ってます。
ああ、そうそう。画像表示については実装は…恐らくありません。DelphiのVCLを使わないで色々な画像処理を行うのは無理です。面倒過ぎます。本体の再構築にやっと目処が立ちました。コンセプトは相変わらず「本体は何もしないソフト」であり、SimDiary互換的な日付管理処理を直系プラグインに丸投げし、SimDiary互換的機能を孫プラグインとして保持する、そんな仕様にすることにしました。この仕様、Xreaさんに今放置してあるChevronとは違い、孫プラグインを導入した点が味噌です。これにより、日付管理プラグインとの親和性が段違いに増すはずです。
さて。ここで上述した仕様に対し、恐らく浮かんでくるだろう疑問に対してサクッとお答えしておきます。「何故、日付管理を本体がしないか」。「何故、わざわざ日付管理用プラグインを介在させるのか」。その理由はただ一つ。もしも、本体に日付管理等の処理をさせた場合、そのソフトの概要…と言うよりキャッチコピーの方がより的確でしょうか、とりあえずそのキャッチがですね、"本体は日付を管理するだけのソフト"になってしまうからです。ありきたりで実に詰まらない。"本体は何もしないソフト"というヤル気のないキャッチと較べ、何とも陳腐だと思いませんか?…何言ってるのかコイツは、という声が聞こえてきそうですが、そんな下らないことに拘るのも時には悪くないものだと思います、多分。
そうそう、前回の投稿内容に誤りがありますね。FindTextはCommDlg.pasに宣言されている関数ですね。名前が似ているため、投稿時には全く間違いに気付きませんでした。失礼しました。
ああ、そうだ。長々駄弁っているついでに、もう一つほど駄弁ってしまいましょう。お題は"Chevron"という名前の由来です。Googleさんの検索で御理解頂けるとは思いますが、そもそも"Chevron"とはツールボタンの可視の制御状態に応じて器用に現れる">>"みたいなブツを指します。見た事ない、という方は、Internet Explorerでツールバーを表示したままウィンドウのサイズを縮めてやって下さい。IEのバージョンが一定以上であれば、恐らく、ツールボタンの可視状態の遷移と共に使用者に不可視状態のボタンへのアクセスを提供してくれる働き者が表示されるはずです。そして、そうした舞台における器用で黒子的な役割を演じて欲しい、そう思って本体に"Chevron"と名付けたり名付けなかったりします。
何故か"FindText"関数で例外が多発します。Delphi6 Personalに付属してくるCommCtrl.pasにTFindReplaceやFindTextが定義されていることから、少なくともDelphiの開発者さんの環境では正常に動くのでしょう…が、作者の環境では動かない…。C++のサンプルプロジェクトでは想定通りの動きをしてくれたという結果を見るに、恐らくいつも通り作者のコードに何か致命的な問題点があるに違いないはずなのですが…原因がサッパリわかりません。今日、三時間唸ってわからない以上、これは放置するしかありませんね。と言う訳で、止むを得ず検索ダイアログのリソースを自作です。う〜む。便利な関数が用意されている(はず)なのに使えない…虚しいです。
そうそう、リソースを造っていてふと気付いたのですが、Resource Hackerというソフト、これってリソースの改変だけでなく、RAD環境でバリバリとリソースを造れるじゃないですか。いや、これは凄いです。このソフトは何年か前から使わせて頂いてますが、ダイアログ編集用の使い方を今更になって発見しました。作者はヘルプ等はほとんど読まないのですが、この悪癖は少し直した方が良いかもしれないなぁとボンヤリ感じました。
Chevronですが、DelphiのVCLとの親和性が予想をはるかに上回る低さで困っています。Delphi知らんという方に噛み砕いて申しますと、要はSimDiaryに乗せている無限アンドゥ機能のあるエディタエンジンや作者がチマチマと描写したカレンダー等が使えない、ということです。もしかするとカレンダーの方は何とかなるかもしれないのですが…エディタの方は全然駄目ですね。試しに無限アンドゥ付きメモ帳代替コントロールを造ってみようかと思ったのですが、アンドゥバッファの管理があまりに面倒で早々と挫折してしまいました。つまり、エディタはWindowsのEditコントロール以上のブツをChevronに乗せることは現状では困難ということです。……何やらヤル気が一気に減退したのですが、とりあえず漕ぎ出した船、もう少し漕いでみることにします。当面の目標は動作の最適化を高めるために再構築、及びメモ帳代替プラグインの製作といったところです。
何やら物凄く不味いことになってきました…。もしもアレヨアレヨといってしまった場合、Chevronの構想を真っ白にする必要があるかもしれません。う〜ん…。ここまで造って打っ遣るのは少し惜しいですしねぇ…。困った。
小人さんが現れないので、止むを得ず書きましたよドキュメントを。理解しにくいという致命的な問題点がありますが、とりあえず読めば設定出来るはずですので大丈夫でしょう。それぞれのバイナリ更新の際に同梱する形で配布していきます。
配布ページですが、あれはもう少し構成を考える必要があるかもしれませんね。更新履歴を書こうと思ったのですが、イマイチ書く場所に困り、結局書きませんでした。この手の場合には…フレームや別ベージが一般的ですか。しかし、作者はフレームや別ページへポンポン飛ばすような構成はあまり好みじゃない…。う〜む。困ったものだ。
何やら、プラグインベースのアプリというのは面倒ですねぇ…。システム的な複雑さを考慮すると本体用マニュアル、そしてプラグインの個別マニュアルが必要そうではありませんか…。なんという面倒臭さ…。実は、ドキュメントを書くという作業は作者にとって、コードを書く以上に労力と気力を要する作業だったりします。う〜む。寝ていてる間にドキュメントを書いてくれる小人さんはどこかにいませんかねぇ。
何だか良くわかりませんが、作者が"Hikage"という名前を通して活動している領域はこの開発関連だけです。他のトコでの"Hikage"さんはほぼ間違いなく作者とは違う別人ですので、他の"Hikage"さんを想定したメールはご遠慮頂けたら幸いです。
この"Hikage"という名前。Vectorさんに登録する際にハンドルネームが必要とのことで思案していた折、ふと窓の外を眺めるとサッと日が陰ったことにヒントを得て、丁度作者の属性とも符合するではないかと勢いそのまま付けてみたのですが…いささか安易過ぎましたか。でも、今更変えられませんしねぇ…。う〜む。困ったものだ…。
とりあえず試作品として上げてみました。これから一週間程作者自らが人柱となって動作検証や安定性検証を行う予定です。はぁ、疲れました。
プラグイン開発において最も難しいところ、それは保存・読み込み処理です。一番簡単なのはプラグイン内部で完結した処理の場合ですが、柔軟性を欠くため、異なる仕様を望む場合にはバイナリを改良・改善する必要があります。かと言って、"保存用プラグイン"という特定の"役割"を持たせたプラグインに処理を丸投げすると、そこには安定性、確実性を著しく欠くという実用上の問題に加え、煩雑なメッセージ処理の必要性やメッセージに渡す引数の問題等、内部的にも大量の問題を抱え込むことになります。しかし、そうした問題の代償はそれなりのはずです。プラグイン側は保存の際には保存対象を丸投げすれば良く、そして読み込みの際には何も考えず要求だけをすれば後は"保存者"がよきに計らってくれるはずですからね。そして、保存仕様を変更したければ"保存者"を交替させてしまうだけで良い。これは良い。良いので、やはりコッチを採用すべきかね。
とりあえずWindowsの仕様をソックリ真似てWindowProcを一つ設け、独自メッセージをwParamとlParamを利用して流してみましょうか。Windowsで採用されている以上、恐らく仕様としてある程度以上優秀だろうことが期待出来ますしね。Chevronは後のFakerのための重要な試金石ですので、それなりに気合入れて造ります。
う〜ん。Chevronですが、Win32APIの構造を参考にしながら造り直す必要がある気がしてきました。今の仕様ですと、恐らく将来的に少し苦しくなりそうです。ある程度プラグインが出来てしまいますと、その仕様はおいそれとは崩せないばかりか、いわゆる負の遺産になってしまいますので、流石に良い加減で行き当たりばったりな作者でも先を考慮しながら開発せざるを得ませんね。
こっそり開発してました。Chevronです。概要としましては、日付管理以外の処理を全てプラグインに丸投げするという怠慢なソフトです。この先、作者が飽きずに開発を続けられるかどうか分かりませんが、とりあえず当面の開発はこれに振り分けてみます。
今何やっているかと申しますと、ちょっと実験品を造っています。巧くいけば公開、巧くいかなければそのまま破棄する予定です。SimDiaryにつきましてはBuild 1.3.1.0に対する目ぼしい不具合や要望はこれといって頂いておりませんので、それらが来るまではとりあえず放置の予定です。
SimDiary関連の要望は実に多彩です。しかも、相反する要望が結構な率です。ソフト柄、当然と言えば当然なのですが、これは困った事態です。現状ではとりあえず作者が独断的に採択を決定すると言う恐怖政治を敷いてしまっていますが、これはかなり良くない状態です。では打開すべし、ですが、それが中々難しい。例えば、作者はこっそり、ゆっくりとFakerというプラグインベースのアプリを開発しているのですが、この仕様が実に難しい。何故なら、APIの公開レベルを上げれば上げる程プラグインの自由度が上がる反面、いわゆる「脆弱性」も抱え込むことになるからです。プラグインに良心を求めれば済む話なのですが、果たしてそれで良いのものなのかと実に悩ましいところです。枯れたソフトの脆弱性を突くなんていう殊勝な方はいないとは思いますが、セキュリティホール全開も気持ち良くありませんしね…。う〜む、困ったものだ。作者はプラグインベースのアプリをまともに開発したことがありませんので、こういう場合にどうするのかサッパリです
まあ、困ってても解決策は天から降って来るわけじゃありませんので、とりあえずプラグインは変なことはしないと信じて開発を進めてしまいますけどね。信じる者も時には救われるでしょう、多分。
SimDiary Build 1.3.1.0に起動日時調整が狂っているという不具合を発見し、直しました。…しかし、ほいほいとバージョン番号を上げるのも何だかなぁという感じです。そこで、α版とかβ版とか適当に名前付けて公開することにしました。些細な修正事項等であれば今後はそうすることにします。
というわけで、適当にBuild 1.3.0.0をリリースしてみました。バージョンアップに際しては設定ファイルの混同を避ける為、新規にフォルダを用意し、そこで保存先の指定等をなさることをお奨めします。
…て、何でこんなとこでそこそこ大切そうなこと駄弁ってるかと言いますと、送っちゃったんですよね、その注意書きを含めないでVectorさんに。別に問題は発生しないとは思うんですけどね…。ふーむ。困ったものだ。
あと、前回の投稿に何か謎のCommentが付いてますね。何でしょうかね、あれ?ふ〜む、謎です。あのCommentを見る限りでは、やはり掲示板は設けなくて大正解だったような気がしてきます。
Xreaさんの方は少し真面目にサイト造りました。慣れないことはするべきじゃありませんね。たったあの程度でも疲れました。
不測の事態に襲われたため、Grepの別バイナリ計画は早々と頓挫しました。う〜む。何だかなぁ。
従来と同じでは面白くありませんので、画像処理にキャッシュの保持という概念を持たせてみました。従来の仕様との互換性保持という苦しい台所事情のため中々に捻じ曲がった仕様になってしまいましたが、とりあえず高速に表示させることが出来るかもしれません。ただし、その代償としてキャッシュに何らかの瑕疵があった場合には何かトンデモな事態が発生する危険性がありますが、まあ、それはそれ。気にしないでいきましょう。
と、言うわけで、やっと出来ました画像処理。そして、ようやくSimDiary Build 1.2.0.0候補の完成です。ん?新版は1.3.0.0でしたか?まあ、そんな瑣末な事はどうでも良いか。バイナリが出来たということが重要ですしね。Grepが相変わらず「準備中...」と出ますが、Grepは負担が大きすぎるため別バイナリするため、とりあえず評価に当たっては無視します。Grepが出来るまで動作を適当に検証し、Grepが出来た上に作者の想定内の動作において不具合を発見出来なくなった段階で正式リリースします。
画像処理に一応成功しました。あとは色々な設定を付加していくだけです。そして、画像が終わったら簡易Grepを付けて、それでリリースです。
さて、一息付いたSimDiaryと違い、Fakerは再設計しようかとさえ思ってます。どう変えるかと言いますと、本体とCloudyの両方を今よりも少しだけ省メモリにさせようかと思ってます。
とりあえずサクッと造ってみました。拡張式常駐アプリ"Faker"と、簡易コマンド型ランチャーの"Cloudy"です。GUIでの設定が無いため、手早く造れました。本当はキーワード入力の際にAutoCompleteを付けたかったのですが、残念ながら力尽きてしまいました。
そうそう。愕然とする事実に気付いてしまったため、Seekerの公開はサクッと止めました。何故もっと早く気付かなかったのかと自分の軽率さに悲しくなりました。
申し訳御座いませんが、画像処理、少々大変なことになってきました。予想以上に時間掛かりそうです。いやー、困った。
これだけ書いてサヨナラもあれですので、今後の方針でも書き散らしてみます。まあ、とりあえずはSimDiary新版リリースですね。これは流石に作者でもうっちゃるというわけにはいきません。それで、SimDiaryの新版を出した後ですが、常駐アプリを造ってみようかと思ってます。具体的にはランチャーです。最近、作者のマウスが挙動不審なため某コマンド型のランチャーを使わせていただいているのですが、どうも肌に合わない。機能なんてほとんどいらない代わりに限界までシンプルなのが欲しいのですが、それが中々。ならば、自分で造るまで、といった具合です。しかし、ただランチャー造るだけでは能がありませんので、Dimやら何やらをPluginで使用出来たりしたら良いなぁなんて妄想してます。完成するかどうかはわかりませんが、とりあえず設計に少しずつ取り掛かってます。
あ、マウスの話が出たのも何かの縁、折角ですから申し上げておきますが、作者はマウス派です。カチカチのマウス派というわけではありませんが、作者の造るブツにおいてキーボード操作が余り考慮されていないのは作者がマウス派だからです。
SimDiary新版の画像処理を造ってみたのですが、酷い目に遭ってしまいました。節穴精度には定評のある作者の不具合発見眼にすら大量の不具合が映る始末。話になりませんね。
と言うわけで、申し訳御座いませんがどうも時間が掛かりそうです。どうぞご容赦下さい。
XreaさんのURLです。plain
とりあえず試作品はこっちに移しました。「一覧」はほとんど動きませんが気にしないで下さい。
Xreaさんのとこのアカウントを取りました。いやー、嬉しい。かなり前から取りたい取りたいと思ってました。頃合を見計らって、ココを除いてさくっと移行しようかと思ってます。
…不図、気付いたのですが、そういえばVector様に出したDimの登録願い、一向に音沙汰ないですねぇ…?メーラーの送信履歴には確かに登録願いが残ってますし…おかしいなぁ?う〜む…。まあ、良いか。そもそも、自分のサイトで細々と配布してる方が性に合ってますし、さしたる問題でもないでしょう、多分。
カレンダーが何とか完成しました。Trial版更新です。ヘルプとかありませんが、適当に使えるよう配慮してありますので気合で操作して下さい。また、カレンダーに限らず、カスタムアクション(動作設定で設定出来るアクション)を増やして欲しいという場合には、とりあえず作者にその旨お知らせ下さい。適当に善処します。
画像アップロードの実験です。
今回はカレンダーの下にタイトル一覧を表示させてみました。う〜む…。ちょっと画像大きすぎたかな…?おまけにスキンを標準に戻して撮るの忘れているではないですか。う〜む。…まあ、良いか。
とりあえずエディタ部分だけの試作品が出来ました。
http://hp.vector.co.jp/authors/VA038550/bin/SimTrial.zip
TSonEditの使い方が今一つ理解出来ないため"置換"がなかったり、カスタマイズ性が激減したりしていますが、とりあえず気にしないで下さい。プロポーショナルフォントが使えるというメリットの方が大きいでしょう、多分。
あと、一番重要な暗号の互換性ですが、恐らく互換性を保てていると期待されますが、やはり暗号を用いていらっしゃる方はバックアップは忘れずにとっておいて下さい。何を隠そう、BlowFish("堅牢"暗号用)コンポをバージョンアップさせようと思ったところ、どうも互換性が吹き飛んでしまう?ようですので、互換性の維持には本当に手を焼かされました。いや、正直なところ、良くわからないの域に達していたりするかもしれません。全く、困ったものだ。
久しぶりにプロジェクト"SimDiary"を再開させてます。…実は"また"一から再構築しているんですけどね。何度目でしょうかね、"SimDiary"の再構築…。…う〜む。まあ、どうでも良いか。あ、ちなみに今回の再構築における趣旨ですが、プロポーショナルフォントとリソースの使用の二点です。
まず、フォントについて。何故か「使えるフォントを増やせ」という御要望が多かったので、適当にエディタコントロールを変えてみようかという試みです。具体的には、現在のTEditorという等幅フォント専用のコントロールをプロポーショナルなフォントも使えるというTSonEditへと変えてみようかといったところです。その代償としてエディタ部のカスタマイズ性が激減しますが、まあ、しょうがないですね。そういうわけで、一から実装させ直してます。
次にリソースの使用について。単刀直入に申しますと、IniFileの名前をリソースとしてバイナリに保持させてみました。その結果、リソース改変ツールなどで"SimDiary.ini"の拡張子を".dll"等へと変えてやればそれなりに面白いかもしれない、といったところです。こういう下らない事はやっててワクワクします。
"Bass"という高機能ライブラリの存在を知り、かつDelphi用のヘッダも付属してましたので、作者好みのMP3Playerをちょっと造ってみました。あとはプレイリストをポップアップで表示出来るようにすれば文句なしですね。…あ、ちなみに、RButtonDownに独自のアクションを割り振る場合、どこかしかにAShowMenuを割り振ることを強くお奨めします。でないと、タスクマネジャーからしか終了できなくなってしまいます。
図らずも、遊び過ぎと怒られてしまいました。う〜む…。何故遊んでいるとわかったのだろう?…まあ、良いか。良くわかりませんが、そういうわけでDimのGUI設定はとりあえず放置することにしました。どうせユーザーも作者一人でしょうし。さっきVector様へバイナリを送りましたが、さっさと設定画面付けろと文句がくるまで…おおよそ半年程と見て、その間は適当にうっちゃっときましょう。いざという時には硬派なMP3Playerなんだと押し通せば良いし、特に問題なさげですしね。
さて、じゃあ遊びは終わりでそろそろ真面目に開発を…って、あれ?作者は一体何をしていたんでしたっけ?
DimのGUI設定用バイナリ造ってます。やはり手間掛かりますねぇ、GUI。でも、まあしょうがないか。
作者の開発用ノートですが、いよいよ危険水準に到達したようです。CPU使用率が30%程度の作業状態で30秒くらい放置すると、ファンが猛烈に回転するのは何時ものこととしまして、何と、画面の再描写が追いつかなくなってしまいました。あ、何言ってるのかわからない、ですか?端折って申しますと、要は、30秒くらいそれなりにCPUを使う作業をするとそれだけで熱暴走を起こす、という感じです。作者はハードのことは良くわかりませんが、もしかしたら結構危険かもしれません。一応、一連の危険兆候を受けて最近は三ヶ月に一回くらいはバックアップを心掛けてますが…。お金が空から降ってきたら、とりあえず買い替えですかね、コレは。
もうそろそろDimは完成です。後はVCLをゴリゴリ使ったPlayList編集用バイナリを仕上げればVector様に上げることが出来そうです。
"Bass"という高機能ライブラリの存在を知り、かつDelphi用のヘッダも付属してましたので、作者好みのMP3Playerをちょっと造ってみました。あとはプレイリストをポップアップで表示出来るようにすれば文句なしですね。…あ、ちなみに、RButtonDownに独自のアクションを割り振る場合、どこかしかにAShowMenuを割り振ることを強くお奨めします。でないと、タスクマネジャーからしか終了できなくなってしまいます。
どうでもいいことなのですが、作者はやっと暇になりそうです。去年の12月頃からですから、丁度半年。流石に疲れました。何時の間にか4/30日も過ぎ去り、作者も出没一周年を迎えてしまってます。光陰矢の如しというやつですか。
Chevronですが、バラバラなウィンドウ群ですね。Delphi6のIDEのような具合です。作者には違和感ありませんが、もし違和感があり過ぎる方がいらっしゃいましたら、ごめんなさい。他のソフトへ移行なさるか、作者の気が変わるのをお待ち下さい。
出来に関しては割と気に入ってますので、画像表示と設定画面を適当に付けてからこのバイナリをVector様に上げましょうかね。そしたらSimDiaryの方はVector様から下げて、作者の個人サイト内でひっそり配布…という形式に…。ああ、そうだ。それなら、SimDiaryの方は単一ウィンドウ式にしてみるのも面白いかもしれませんね。
ふ〜む。とりあえずその方針で行ってみましょうか。
TEditorを弄っていて気付いたのですが、TEditor上で「Ctrl + H」を入力すると何故かBackSpaceのような動作が発生しています。この動作は何?とりあえず他のTEditorを利用されているエディタで「Ctrl + H」と入力したところ、やはり同様にBackSpaceのような動作が発生しています。ふ〜む…。まさか…ついに作者のパソコンも来るべき時が近づいているということなのでしょうか…?う〜む。調べるの面倒ですし、まあ、そういうことでも良いか。
本体はウィンドウすら持たないChevronLite版ですが、造っていて面白くありません。VCLをあまり使っていないことも手伝い、開発も面倒です。と言うわけで、Lite版につきましては何か御要望等ありましたら、その都度手を入れるという形にさせていただきたいと思います。
ChevronのLite版を造ってみました。概要は、現在の保存仕様に従ってテキストファイルを生成し、それをエディタで開くというモノです。本体は事実上存在しないため、物凄く軽いです。快適です。しかし、これだと当たり前ですが、カレンダー等が見れないんですよねぇ。とりあえずカレンダーを別Exeで用意しておいて、それをオプションに従って起動する、という仕様が思いあたりますが、それだとプロセスが増えるためメモリ使用量が増えるような…。う〜む。まあ、良いか。
手元のChevronを画像表示出来るよう弄ってみたのですが、何か作者のイメージと違いますねぇ。このままだと、「統合日記作成環境」みたいなブツになってしまいますよ。まあ、それはそれで悪いことではなく、誰かが開発なさるのならば、むしろ応援するところ。問題は、作者がそれを開発してしまっていることです。作者は軽いソフトが好きですので、全くもって由々しき事態です。
う〜む。抜本的な仕様変更してしまいましょうかねぇ。例えば、本体はスッカラカンで、各機能は別の実行ファイルを起動していく、といった具合です。現行のChevronは開発の利便性や実行時パッケージ(ランタイム)問題、本体との親和性等の理由で「オブジェクト」として内包させていますが、これがそもそもの間違いだったという気さえしてきました。
う〜む…。仕様がウニ状態ですが、とりえあず何でも良いのでやってみますか。ああだこうだと考えることも大切ですが、動かなければ何も始まりませんしね。
軽いと風の噂に聞くExciteさんへ移行しました。う〜む。確かに軽い。おまけに画像も上げることが出来るそうです。至れり尽くせりですね。