- このトピックには11件の返信、1人の参加者があり、最後に
TZにより21時間、 43分前に更新されました。
-
投稿者投稿
-
TZキーマスターTZEditor v0.1.38~0.1.41 を公開しました🚀
エディタ内部のテキスト管理に VS Codeと同じ Piece Table を適用しました。
もともとはVS Code と同じ Piece Tree(Piece Table + 赤黒木)で考えていたのですが、赤黒木の実装が難しすぎて最終的にはPiece Treap(Piece Table + Implicit Treap)となりました。
また、ファイルアクセス方式をメモリマップドファイルに変更し巨大ファイルの読み込み性能を改善しました。
ちなみに、現在の巨大ファイルの対応状況ですが、1000万行(1.25GB)を開くまでの平均処理時間は下記です。
v0.1.37:17.91 秒
v0.1.38:8.23 秒かなりよくなったのですが、まだまだ遅いので引き続き改善していきます。
TZキーマスター不具合が見つかりましたので TZEditor v0.1.39 を公開しました。
よろしくお願いいたします。
igy
ゲストv0.1.39で気になった点がありましたので、報告いたします。
少し大きめのファイルでのキー操作が遅い
再現手順は
(1) 新規で以下を入力
1行目:🍌
を入力し、これをコピーし、3033606行作ります。
(2) 名前を付けて保存します。
ファイル名:🍌.txt (サイズ:18,201,630 byte)
(3) 175万行あたりで、キー操作
矢印キーや Enterキー連打、BackSpaceキー連打 など。です。
igy
ゲストちなみに、このファイルを開くのに、TZEditorは 11.637秒 かかりました。
(なお、EmEditorでは一瞬、Meryでは 5秒ぐらい。)
TZキーマスター> igy さん
ご連絡ありがとうございます。
> 少し大きめのファイルでのキー操作が遅い
確認しました。スクロールバーのための
文字幅の計算に時間がかかっているようです。致命的のようですので見直します。> ちなみに、このファイルを開くのに、TZEditorは 11.637秒 かかりました。
> (なお、EmEditorでは一瞬、Meryでは 5秒ぐらい。)こちらは、私の環境では 1 秒未満で開きました。環境の違いとは思うのですが、毎回 11 秒ぐらいかかるでしょうか?
開いたファイルは TZEditor を起動した PC に保存したファイルでしょうか?よろしくお願いいたします。
igy
ゲスト> 毎回 11 秒ぐらいかかるでしょうか?
TZEditor 起動して、このファイルを開いたら、毎回 11秒ぐらいかかりました。
> 開いたファイルは TZEditor を起動した PC に保存したファイルでしょうか?
はい。PC内の ダウンロードフォルダ に保存しています。
igy
ゲスト> はい。PC内の ダウンロードフォルダ に保存しています。
なお、ストレージはHDDです。
TZキーマスターigy さん
ご連絡ありがとうございます。
可能でしたら、メモリマップドファイル適用前のバージョンで
開くとどれくらいの処理時間がかかるかご確認いただけないでしょうか?igy
ゲスト読み込み時間を調べてみました。
どちらのバージョンも、設定をデフォルトの状態から、少しずつ設定を変えています。v0.1.37
解凍直後のデフォルト設定
4.638 秒
DirectWrite有効
4.654 秒
ウィンドウの右端で折り返し有効
6.044 秒v0.1.39
解凍直後のデフォルト設定
1.627 秒
DirectWrite有効
1.622 秒
ウィンドウの右端で折り返し有効
11.x 秒
(その後、TZEditor自体が不安定に…タスクバーには表示しているが画面表示せず・・)
TZキーマスターigy さん
ご確認ありがとうございます。
> v0.1.39
> 解凍直後のデフォルト設定
> 1.627 秒
> DirectWrite有効
> 1.622 秒
> ウィンドウの右端で折り返し有効
> 11.x 秒
> (その後、TZEditor自体が不安定に…タスクバーには表示しているが画面表示せず・・)再現できました。遅い箇所がわかって良かったです。
ただ、現在修正しているのですが、v0.1.37 より速くならないようです😭新バージョンからファイル読み込みは速くなったのですが、テキストを改行も含めた一塊で管理しているため
行頭を知るのに何度も検索が必要になり遅くなっています。なんとか速くならないか試行錯誤してみます。
TZキーマスターTZEditor v0.1.40 を公開しました✨
スクロールバーのつまみ表示位置のために一番大きい行長を特定する必要があるのですが、前のバージョンは算出に時間がかかっていたため、巨大ファイルを編集するとカクカクになることがありました。
本バージョンはこちらを改善しカーソル操作がより快適になりました。
ただ、折り返しの計算はまだまだ遅く、暫定で対応してみましたが300万行だとカクカクになります。こちらも改善予定です。
よろしくお願いいたします🙇♂️
TZキーマスターTZEditor v0.1.41 を公開しました✨
行の文字列長の算出に時間がかかるためエディタに表示している行のみ計算するようにしました。この変更で巨大ファイルを開く時間が短縮されました。また、マウスホイールによるフォントサイズの変更も快適になりました。
引き続きよろしくお願いいたします🙇♂️
-
投稿者投稿