EmEditor v22.3.0 released (including technical review)!

Today, we are releasing EmEditor v22.3.0.

We have been receiving many crash reports since we improved the crash reporting feature, and I’ve spent much of my time investigating the cause of reported crashes. Fortunately, many crashes have been resolved, and we released frequent minor releases between v22.2.0 and v22.3.0 because we wanted to help those customers who experienced crashes as early as possible. We also added more information to the crash report to provide more context. Thanks to those crash reports and fixes, we are receiving fewer crash reports on newer versions. We thank all the users who submit their crash reports. We strongly recommend all users update to this latest version of EmEditor because of the improved reliability and robustness. The crash reporting feature is available on EmEditor Professional and EmEditor Free.

During investigations, we found that some crashes were caused by the Find/Replace command while CSV syntax check was running in the background immediately after opening a large CSV file. We determined that the Find/Replace commands should wait until the background CSV syntax check has completed. Thus the new version shows a message box to abort CSV syntax check before Search, Replace, and some other operations by default. This prompt message can be disabled by clearing the Prompt when CSV Syntax Check is still running option in the CSV Options page of the Customize dialog box. The background CSV syntax check will be aborted automatically when you are about to Find/Replace while the prompt message is disabled. The CSV-related features are available only on EmEditor Professional.

The speed of various operations is as important as reliability for EmEditor. The new version improved the speed of the Extract command in the Find dialog box using improved algorithms. In our test, the Extract command became up 3.46 times faster compared to v22.2.0. These commands are available only on EmEditor Professional.

A customer has asked for the ability to sum numbers even if numbers contain digit grouping (thousand) separators. For instance, if the selected text is:

1,001.5 2,001.1

On previous versions of EmEditor, the sum was 1 + 1.5 + 2 + 1.1 = 5.6 because a comma (,) was not recognized as a part of a number.

On the new version, the sum is 1001.5 + 2001.1 = 3002.6 if the Allow digit grouping option in the Sort page of the Customize dialog box is set, and EmEditor shows “3,002.6” on the status bar. The actual separator depends on the selected Locale, which can be set on the same page. If German (Germany) (de-DE) is selected for the current Locale, and if the selected text is:

1.001,5 2.001,1

EmEditor shows “3,000.6” on the status bar. The number format displayed on the status bar depends on Windows Locale.

The digit grouping separator must appear at every 3 digits (thousand, million, billion, …). EmEditor currently does not support other digit grouping formats such as 2- or 4-digit grouping. If the selected text is:

1,04 2,0005

commas behave as simple separators of four independent numbers because they are not at thousand positions. Thus, EmEditor shows “12” (= 1 + 4 + 2 + 5).

The ability to parse numbers with digit grouping separators extends to the Sort Smallest to Largest and Sort Largest to Smallest commands.

Moreover, v22.3 allows Number Range Expressions to match numbers with digit grouping separators. For instance, a number range:

[ 1000.0 , 2000.0 ]

does match both

1203,3

and

1,203.3

Number range expressions allow you to specify the decimal point independently from the current locale. If the digit grouping separator of the current locale is identical to the custom decimal point, the decimal point takes higher priority over the digit grouping separator, thus the digit grouping separators will not be used. For instance, if the selected locale is English (United States) (en-US), a number range expression:

[ 1000,0 , 2000,0 "," ]

does match:

1203,3

but does NOT match:

1,203,3

By default, the digit grouping separators are disabled to be compatible with older versions of EmEditor. To enable all the above features related to the digit grouping separators, you will need to set the Allow digit grouping option in the Sort page of the Customize dialog box. This option is available only on EmEditor Professional.

Another customer has asked for the ability to Use ISO date time format for rename and Set Hidden and/or Read-only attributes while backing up files. These options became available in the Backup page of configuration properties. The time is always UTC time so that we won’t need to worry about file name conflicts when you change the system time zone. For instance, a backup of:

filename.txt

can be saved as:

filename_2023-04-09T180943.2016212Z.txt

if the same file name already exists in the same folder. These new backup options are available on EmEditor Professional and EmEditor Free.

Makoto Emura added experimental support for the Language Server Protocol (LSP), which has been requested by several customers including this customer. v22.3 shows tooltips when you hover the mouse pointer on function names and other symbols. We plan to support other LSP features in the future. Currently, supported programming languages include HTML, CSS, JavaScript, Perl, C/C++, and Python, but we plan to add more programming languages in the future. Some programming languages require you to install the language server. Click the ? button or press F1 in the Language Server page of configuration properties to see Help for additional installation instructions. The tooltip feature is disabled by default, and you will need to set the Enable Language Server Protocol (experimental) option in the Language Server page of configuration properties to use this new feature. We labeled this feature experimental because the UI and feature set may be changed in the future. The tooltip feature is available only on EmEditor Professional.

The CommitList plug-in, also developed by Makoto, was improved by allowing you to select more than one changed file in the sidebar. This allows you to stage or unstage multiple files simultaneously.

Finally, Makoto has also improved the WebPreview plug-in so that it could preview Markdown files. This feature was requested by several customers (1, 2). To preview Markdown files, the “Markdown” configuration, which is one of the default configurations of EmEditor, must be selected. Plug-ins are available only on EmEditor Professional.

I hope you like EmEditor, whether you use the Professional or Free version. Please contact us or write in forums if you have any questions, feature requests, or any ideas in the future.

Thank you for using EmEditor!
Yutaka Emura

Please see EmEditor v22.3 New Features for details and screenshots.

This release also includes all bug fixes while developing v22.3.

If you use the Desktop Installer version, you can select Check for Updates on the Help to download the newest version. If this method fails, please download the newest version, and run the downloaded installer. If you use the Desktop portable version, you can go to the Download page to download the newest version. The Store App versions can be updated through Microsoft Store (64-bit or 32-bit) after a few days. If you use winget, you can type winget install Emurasoft.EmEditor to install the latest version of EmEditor (64-bit or 32-bit detected automatically).