EmEditor v22.2.0 を公開しました (テクニカル レビューを含む)。

本日、EmEditor v22.2.0 を公開いたしました。

以前のバージョンでクラッシュ レポート機能を改善して以来、多くのユーザーの皆様よりクラッシュ レポートを受信しました。これらのクラッシュ レポートにより EmEditor の信頼性と頑強性を向上させることができました。受信したすべてのクラッシュ レポートを調べて、それがなければ見つからなかったであろう多くの問題を修正することができました。クラッシュ レポートを送信していただいたユーザーの皆様に感謝いたします。多くのクラッシュ (異常終了) は、低メモリ状態によるメモリ割り当て失敗が原因で発生していることがわかりました。この状況は、ユーザーがシステムの仮想メモリを増やしていれば、避けられるものでした。v22.2 では、このような状況が発生したら、メッセージ ボックスを表示して低メモリ状態であることを示し、さらに仮想メモリを増やす方法を説明するクリック可能な URL も表示するようになりました。

メモリ不足への対処法

[カスタマイズ] ダイアログ ボックスの [高度] ページでは、巨大ファイルを開くために使用するメモリ サイズを指定できます。ここには大きなサイズを指定した方が EmEditor は高速に動作しますが、メモリ割り当てが失敗するほど大きくすることはできません。例えば、1 GB のファイルを開く場合、[ファイル毎最大メモリ サイズ] に 1 GB より少し大きな値を入力すると、EmEditor が最も速く動作します。以前のバージョンでは、これらの既定値は物理メモリ サイズのみにより決定されていました。しかし、より大きな仮想メモリを持つシステムは、小さな仮想メモリを持つシステムに比べて、より多くのメモリを利用できるようにするべきです。そこで、v22.2 では、[すべてのメモリ サイズを自動的に管理する] オプションを追加しました。このオプションは既定ではオンになっていて、物理メモリ サイズだけでなく利用可能な仮想メモリ サイズも調べて最適なメモリ サイズを決定します。

[カスタマイズ] ダイアログ ボックスの [高度] ページ

クラッシュ レポートを調べると、多くのクラッシュは [元に戻す] 情報を保存している間に低メモリ状態で発生していることがわかりました。例えば、ユーザーが 10 GB のファイルを開いて、[並べ替え] コマンドの 1 つを選択すると、既定では [元に戻す] 機能を提供するために、並べ替えが始まる前に 10 GB のファイル全体がメモリに保存されます。10 GB はメモリでは相当なサイズです。多くのユーザーが大きなメモリ サイズを犠牲にしてまで [元に戻す] 情報が欲しいとは思えません。EmEditor では、[常に長い元に戻す情報を破棄して速くする] というオプションが存在して、このような問題が発生するのを防いでいますが、このオプションは既定ではオフになっています。v22.2 では、これと同じオプションを [進捗状況] ウィンドウにも表示して、ユーザーがこれに気付きやすくなり、簡単にオンにできるようになりました。

[進捗状況] ウィンドウ

EmEditor の以前のバージョンでは、CSV ファイルを開くと、CSV ファイル全体の中身をロードし終えるまでは、CSV モードに切り替わりませんでした。v22.2 では、CSV を検出すると、ファイルの最初の 1 MB だけ開いた時点で、CSV モードに切り替わります。さらに、CSV モードでファイルを表示、スクロール、検索を開始している間に、CSV 構文チェックはバックグラウンドで実行されます (CSV 構文チェックが進行中は、編集は無効にされています)。また、新バージョンでは、埋め込み改行が存在する場合でも CSV 自動検出を可能にしました。

v22.2 では、巨大ファイルを扱っている時の CSV 区切り位置の調節、CSV 構文チェック、CSV モードから通常モードへの切り替え、各種変換コマンド、各種並べ替えコマンドを高速化しました。高速化は、前述したメモリ サイズの自動管理により、さらに顕著なものとなっています。私共のテストでは、[AからZへの並べ替え] コマンドは、10 GB のランダム ASCII データを使用した場合、v22.1.4 と比較して 4.69 倍に高速化しています。

[ファイルから検索] を実行して結果ファイルを保存し、後でまたそのファイルを開くと、ファイルにあったハイパーリンクは消えてしまいます。以前のバージョンでは、このハイパーリンクを再表示するには、document.HighlightTag = true; というマクロを実行する必要がありました。v22.2 では、[タグ リンク] という新コマンドにより、簡単にハイパーリンクを再表示できるようになり、既定では [表示] メニューから利用可能です。

V22.2 では、置換表現構文に \V を追加し、V8 JavaScript エンジンを使用した置換表現が可能になりました。ただし、前回のテクニカル レビューでも書いたように、V8 表現を使用すると、以前の \J (JScript) よりも遅く動作する可能性があります。そこで、\V は、必要な場合だけ使用することを推奨します。

\V 表現

最後に、江村誠により開発されている [コミット リスト] プラグインは、プル、プッシュ、フェッチを行う機能を追加し、さらにコミット メッセージ、オーサー、コミット ID (ハッシュ)、タグにより、コミットの履歴にフィルターを設定する機能を追加して改善されました。

[フィルターの履歴] ダイアログ

Pro版、Free版とも お気に入りいただけましたら幸いです。将来、ご質問、機能のリクエスト、アイディアなどがございましたら、ご連絡いただくか、フォーラムにご発言ください。

今後も EmEditor を引き続きご愛顧くださいますよう、よろしくお願い申し上げます。
— 江村豊

主な変更点、画面図など、詳しくは、「Version 22.2 の新機能」をご覧ください。

さらに本リリースは、v22.1 を開発中の不具合/問題の修正を含みます

デスクトップ インストーラー版をご使用の場合、[ヘルプ] メニューの [更新のチェック] を選択して更新していただけます。この方法で更新できない場合には、最新版をダウンロードして、そのダウンロードしたインストーラーを実行してください。デスクトップ ポータブル版の場合、こちらよりダウンロードして、更新していただけます。ストア アプリ版の場合、数日後、Microsoft ストア (64ビット または 32ビット) よりダウンロードまたは更新していただけます。winget を使用されている場合は、”winget install emeditor” とタイプして最新版の EmEditor のインストールが可能です (64ビットか32ビットは自動検出されます)。