Version 17.4¶
2018年 1月 17日
一般の新機能¶
正規表現を使用した [選択範囲のみ] の検索、置換に関するオプションが増え、動作をより細かく指定できるようになりました。例えば、[「^」と「$」が選択の最初と最後に一致することができる] オプションを有効にすると、選択範囲の開始/終了位置のみにマッチする正規表現が利用できます。また、[選択範囲のみの検索で周辺を見る] オプションを有効にすると、前方参照、後方参照を使用する正規表現において選択範囲外のテキストを調べて、選択範囲内のみにマッチすることができます。
CSVセル選択モードに関するオプションが増え、セル選択モードで編集中、自動的に列数をそろえたり、編集範囲外の場所をダブルクリックするだけで、新規にセルを作成できるようになりました。
Boost.Regex のバージョンを v1.66.0 に更新しました。
中国語以外のダイアログ ボックスのフォント サイズを 9 ポイントから 8 ポイントに戻しました。
高 DPI モニター用にアイコンを最適化しました。
Windows 7 以上に最適化しました。実行ファイルのデジタル署名は、SHA256 のみを使用するようになり、従来の SHA1 とのデュアル署名は廃止しました。本バージョンは、Windows Vista/Server 2008 では動作しません。
アンチウィルス ソフトウェアの誤検出を防ぐための一環として、インストーラーのファイル拡張子を従来の .exe より .msi に変更しました。
改行を含む文字列を、改行を含まない文字列に、すべて置換する動作と、それを元に戻す動作が大幅に高速化されました。
測定結果例¶
v16.5 | v16.6 | v16.9 | v17.4 | v16.5 との比較 | |
---|---|---|---|---|---|
「9\n」を「a」にすべて置換 | 32.7 秒 | 22.4 秒 | 0.17 秒 | 0.141 秒 | 232 倍に高速化 |
上を元に戻す | 73.5 秒 | 29.2 秒 | 27.8 秒 | 6.89 秒 | 10.7 倍に高速化 |
\* テスト条件は、 Version 16.6 と同じです。
新しい設定¶
[高度 (検索)] ダイアログ ボックス に [「^」と「$」が選択の最初と最後に一致することができる] と [選択範囲のみの検索で周辺を見る] チェック ボックスを追加しました。
[カスタマイズ] ダイアログ ボックスの [編集] ページ に [非常に長い行が存在する場合にダイアログを表示する] チェック ボックスを追加しました。
[カスタマイズ] ダイアログ ボックスの [CSV] ページ に [セル選択モードで編集中、列数をそろえる]、[セル選択モードでTABキーを押してセルを新規作成する]、[セル選択モードでヘッダー/行番号をダブルクリックして列/行を新規作成する]、[セル選択モードで外側をダブルクリックしてセルを新規作成する] チェック ボックスを追加しました。
[検索]/[置換] ダイアログ ボックスの [>] ボタンをクリックして表示されるメニューにより多く正規表現の例を追加しました。
プラグインの新機能¶
[単語数] プラグインの単語数の計算方法は、EmEditor 本体の [カスタマイズ] ダイアログの [編集] ページ で [次の文字を英数字として扱う] テキスト ボックスに指定されている文字を単語の構成要素として使用します。例えば、アポストロフィ (') をテキスト ボックスに指定すると、プラグインは I'm を 1単語として数え、ステータス バーに表示される単語数と一致します。
プラグイン API の新機能¶
FIND_REPLACE_INFO 構造体 の nFlags フィールドに FLAG_FIND_BOL、FLAG_FIND_EOL、FLAG_FIND_LOOKAROUND 定数を追加しました。
マクロの新機能¶
Selection オブジェクトの Find メソッド と Replace メソッド の nExFlags パラメータに eeExFindBOL、eeExFindEOL、eeExFindLookaround 定数を追加しました。
不具合の修正¶
巨大ファイルからすべての改行コードを削除すると異常終了する可能性があった不具合を修正しました。
巨大ファイルの編集に関する様々な問題を修正しました。例えば、2バイト文字を含む巨大ファイルで特定の操作を行った後、カーソル位置が正しくないことがありました。
正規表現を使用した特定の検索、置換の不具合を修正しました。例えば、[検索] ダイアログ ボックスで、[選択した範囲のみ検索] を指定して、正規表現「^a+」をで、[前を検索] ボタンをクリックした時、正しい位置がマッチしないことがありました。