EmEditor v21.7.2 发布!

我们发布了 EmEditor v21.7.2。

v21.7.2 包括所有从 v21.8 beta 7 (21.7.907) 到 beta 11 (21.7.911) 的 bug 修复

详细信息和屏幕截图,请参阅 EmEditor v21.7 新增特性。

如果您使用的是桌面安装程序版,那您可以到帮助菜单下选择检查更新来下载最新版本。 如果此方法失败,请下载最新版本,并运行下载的安装程序。 如果您使用的是桌面便携版,则可以转到下载页面下载最新版本。商店应用版可以在几天后通过 Microsoft 商店更新( 64 位 / 32 位)。如果您使用 winget,您可以输入 “winget install emeditor” 来安装最新版本的 EmEditor(自动检测 64 位或 32 位)。

EmEditor v21.7.1 发布!

我们发布了 EmEditor v21.7.1。

从 v21.7.1 包括所有从 v21.8 beta 1 (21.7.901) 到 beta 6 (21.7.906) 的bug 修复

详细信息和屏幕截图,请参阅 EmEditor v21.7 新增特性。

如果您使用的是桌面安装程序版,那您可以到帮助菜单下选择检查更新来下载最新版本。 如果此方法失败,请下载最新版本,并运行下载的安装程序。 如果您使用的是桌面便携版,则可以转到下载页面下载最新版本。商店应用版可以在几天后通过 Microsoft 商店更新( 64 位 / 32 位)。如果您使用 winget,您可以输入 “winget install emeditor” 来安装最新版本的 EmEditor(自动检测 64 位或 32 位)。

感谢您使用 EmEditor!

EmEditor v21.7.0 发布(含技术评论)!

今天,我们发布了 EmEditor v21.7.0

许多请求的功能之一是在一个拆分窗口中显示比较结果,而不是在两个平铺窗口中。现在 v21.7 可以实现这个功能。当您在比较菜单上选择比较命令时,EmEditor 将在一个拆分窗口中显示比较结果。当您通过选择重置为普通模式命令完成比较后,EmEditor 将恢复为正常的选项卡式窗口。同步滚动命令的行为也相同。此功能在 EmEditor Professional 和 EmEditor Free 上可用。

之前版本的 EmEditor Professional (v21.6) 允许您同时快速地搜索多个字符串。EmEditor Professional v21.7 的主要特点是能够同时替换多个字符串,这个功能是应几个客户的要求(12)。我们将此新功能称为多项替换全部,这与现有的批处理替换全部功能有很大不同。批处理替换全部一次在整个文档中搜索一个字符串,并按搜索字符串的数量不断重复此过程。多项替换全部同时搜索所有搜索字符串。这个区别会导致替换后的结果完全不同,例如搜索/替换字符串配对包含以下内容:

1 → 5
2 → 4
4 → 2
5 → 1

并且如果源文档是

[1,2,3,4,5]

在这个情况下,如果用批处理替换全部,EmEditor 会先把整个文档中的 1 替换为 5,然后再将 2 替换为 4。这样,源文档会变为:

[5,4,3,4,5]

接下来,当它将 4 替换为 2 时,请注意它将替换两个 4(第二个和第四个数字)。最后,当它将 5 替换为 1 时,它将替换两个 5(第一个和最后一个数字)。因此,结果将是:

[1,2,3,2,1]

如果使用新的多项替换全部,EmEditor 将同时替换所有字符串。因此,结果将是:

[5,4,3,2,1]

如您所料。

多项替换全部的执行速度会比批处理替换全部快很多。在我的测试中,当搜索/替换配对有 100 万个时,多项替换全部的完成速度比批处理替换全部快 6310 倍。

多项替换全部的完成速度允许更多类型的使用。假设您需要致电客户列表中的客户。但是,另一个请勿呼叫列表中有数百万个电话号码。您需要确保客户列表中不包含任何请勿呼叫列表中的号码。在这种情况下,之前版本的 EmEditor (v21.6) 允许您快速搜索客户列表中的任何请勿呼叫号码。新版本的 EmEditor (v21.7) 不仅会找到匹配的号码,还会将匹配的号码替换为其他字符串(或空字符串)。换句话说,新功能让您能快速替换或删除文档中任何不需要的字符串。以前,此任务可能需要几个小时甚至几天才能完成,具体取决于搜索字符串的数量。目前,多项替换全部还不支持正则表达式、数字范围或包含换行符的字符串。

最后,希望您喜欢 EmEditor,无论您使用的是专业版还是免费版。如果您有任何问题、功能请求或想法,请联系我们在论坛中留言

感谢您使用 EmEditor!
Yutaka Emura

详细信息和屏幕截图,请参阅 EmEditor v21.7 新增特性

此版本还包括以下错误/问题修复:

  • 修复了在 CSV 模式下,半角/全角转换对话框中选择全部只会转换选取内容的错误。
  • 修复了筛选时与单元格工具栏相关的问题。
  • 如果设置了标题只读,新版本会在执行删除/剪切列命令时显示一个消息框,而不是禁用这些命令。
  • 当您选取了一列并设置了标题只读时,新版本可以启用转换命令。
  • 修复了替换表达式未正确解析 \x{hhhhh} 值的错误。
  • 修复了 editor.QueryStatusByID(EEID_TOOLBAR1 + n) 无法正常工作的错误。
  • 修复了 v21.6 中的某个筛选条件可能导致 EmEditor 崩溃的错误。
  • 修复了 v21.6 中提取替换可能没有提取一行中的所有匹配项的错误。
  • 修复了用户报告的问题(1, 2)。

如果您使用的是桌面安装程序版,那您可以到帮助菜单下选择检查更新来下载最新版本。 如果此方法失败,请下载最新版本,并运行下载的安装程序。 如果您使用的是桌面便携版,则可以转到下载页面下载最新版本。商店应用版可以在几天后通过 Microsoft 商店更新( 64 位 / 32 位)。如果您使用 winget,您可以输入 “winget install emeditor” 来安装最新版本的 EmEditor(自动检测 64 位或 32 位)。

EmEditor v21.6.1 发布!

我们发布了 EmEditor v21.6.1。

从 v21.6.0 进行的更新包括:

  • 修复了与配置属性的字符检查页面中的脚本/一般类别选取相关的错误。
  • 修复了与状态栏消息相关的错误。
  • 即使高级筛选处于活动状态,新版本也不会将筛选工具栏的筛选框设为只读。
  • 修复了下划线颜色未保存到配置属性的显示页面的主题中的错误。
  • 通过优化代码减小了程序大小。
  • 修复了 v21.6 上的某个搜索颜色问题。
  • 修复了对大文件执行转置命令可能出现的错误行为。
  • 修复了保存非常大的文件后可能立即出现“操作文件时发生严重错误”消息的问题。
  • 修复了在逻辑处理器数量为 1 的机器上保存非 Unicode 文件时可能发生的崩溃。
  • 新版本允许您在 Filters集合的 AddAddFindAddReplace 方法中使用 eeExFindLinkFile 标志。

详细信息和屏幕截图,请参阅 EmEditor v21.6 新增特性。

如果您使用的是桌面安装程序版,那您可以到帮助菜单下选择检查更新来下载最新版本。 如果此方法失败,请下载最新版本,并运行下载的安装程序。 如果您使用的是桌面便携版,则可以转到下载页面下载最新版本。商店应用版可以在几天后通过 Microsoft 商店更新( 64 位 / 32 位)。如果您使用 winget,您可以输入 “winget install emeditor” 来安装最新版本的 EmEditor(自动检测 64 位或 32 位)。

感谢您使用 EmEditor!

EmEditor v21.6.0 发布(含技术评论)!

今天,我们发布了 EmEditor v21.6.0

以前版本的 EmEditor 允许您可视化指定的字符,但您必须通过字符代码值来指定字符范围如果您选择了指定范围选项。当您感兴趣的字符代码值分散在 Unicode 图表中时,这可能会成为一项乏味的任务。新版本允许您通过 Unicode 脚本Unicode 一般类别来指定字符范围。例如,如果您只写拉丁文,最好选择 拉丁文 (Latn) 和 常用 (Zyyy ) 脚本,并设置警告不在指定范围的字符选项。您可以将 Unicode 脚本Unicode 一般类别结合使用。例如,您可以设置

"Latn,Zyyy,Ll,Lu"

来表示拉丁文 (Latn) 或 常用 (Zyyy) 脚本和小写字母 (Ll) 或大写字母 (Lu )。

为使此功能成为可能,我们更新了 EECommon.dll 库中包含的 Unicode 数据库,让您能通过 Unicode 脚本 和/或 Unicode 一般类别来指定字符范围。当您选择字符代码值命令时,新信息也将包含在显示的对话框中。EECommon.dll 库在请求信息之前不会加载到内存中,因此 EmEditor 加载时间不会受到此功能的影响。EECommon.dll 库最初由 Makoto Emura 开发。

EmEditor v21.1 支持所有在 Emoji 序列Emoji ZWJ 序列中的表情符号序列,但是,如果将来引入新的表情符号序列,它们并不全面,也没有延展性。新版本的 EmEditor 使用 Unicode Technical Standard #51 – Unicode Emoji 中指定的定义来支持所有可能的表情符号。这意味着这些表情符号字符只要被字体支持就可以正确显示,并且表情符号周围的光标移动也是正确的。在进行这些更改时,我们将 Unicode 数据库更新到了最新版本 (Unicode v14.0.0)。
一位用户询问是否可以可以将文本文件中的各种日期格式转换为一种日期格式。EmEditor v21.3 支持数字范围中的日期/时间格式。虽然此功能对于查找和筛选特定的日期/时间范围很有用,但如果您需要将它们转换为一种特定的日期/时间格式,它就没有用了。新版本把 \D\T 表达式引入到替换表达式语法中。例如,如果您有一个包含各种格式的日期的文本文件:

3/23/2022
03/23/2022
March 23,2022
Mar 23,2022
23-Mar-2022
2022-03-23
2022年3月23日

如果您想将以上日期转换为一种格式“2022-03-22”,您可以按 CTRL+H 调出替换对话框,选择数字范围选项,然后输入:

查找:

[1/1/1900 , 1/1/2200 "M/d/yyyy|MM/dd/yyyy|MMMM d,yyyy|MMM d,yyyy|dd-MMM-yyyy|yyyy-MM-dd|yyyy年M月d日" ]

替换为:

\Dyyyy-MM-dd

查找表达式将在 1/1/19001/1/2200 之间搜索这些格式,并将匹配的日期转换为 yyyy-MM-dd 格式。

在处理替换表达式语法时,我还添加了新的 \Nc\Nd\NC\ND 表达式来规范化字符串,用 EmEditor v19.8中介绍的 Unicode 规范化。 当您需要规范化匹配特定搜索条件的字符时,这些新表达式很有用。

EmEditor Professional 和 EmEditor Free 支持上述所有功能。

EmEditor Professional v21.6 的主要特点是通过许多简单的非正则表达式搜索字符串显著提高了高级筛选多项查找的速度。一位用户询问是否是否可以在文件中搜索 2500 万个电话号码。这在 EmEditor 的早期版本中并不容易,因为当指定超过数千个搜索字符串时它变得非常慢。我针对这种情况提出了一种新算法,并对代码进行了优化。现在 EmEditor 可以同时接受 2500 万个搜索字符串。在我进行此优化的同时,我还使高级筛选批处理查找/替换对话框能够接受链接文件。链接文件可以包含多个由换行符分隔的搜索字符串。您可以将链接文件从资源管理器拖放到 高级筛选批量查找/替换对话框的列表框中。您也可以将链接文件拖放到筛选工具栏上的筛选框以立即启动高级筛选。链接文件可以更轻松地维护一组搜索字符串并将更改立即应用到高级筛选多项查找中。由于 EmEditor 在进行搜索之前会在内部对搜索字符串进行排序(按长度和字母顺序),因此您可以通过对链接文件进行预先排序来提高速度。如果您决定对链接文件进行预先排序,请在自定义对话框中的排序页面上选择快速二进制比较稳定排序选项。如果您不匹配高级筛选上的大小写,则应选择忽略大小写选项。打开一个链接文件,先选择按字母升序排序,然后选择按文本长度从短到长排序。对链接文件进行预先排序不会改变搜索结果,但会提高搜索或筛选的速度。

此外,筛选工具栏上的提取全部按钮现在是一个下拉按钮,单击该按钮将显示一个菜单,您可以在其中选择提取所有行提取匹配字符串命令。如果多个字符串匹配,提取匹配字符串命令将每行仅提取一个字符串。

我还用与高级筛选命令类似的算法优化了合并 CSV 命令的速度,特别是当 … 包含 …… 以 … 开始… 以 … 结尾条件被选中时。

一位用户请求了一个新选项,即自定义对话框中的状态页面上的选择模式项。如果勾选了此选项,则状态栏会在垂直选择模式处于活动状态时显示“垂直”,在行选择模式处于活动状态时显示“”。

一位用户在启动 EmEditor 时报告了崩溃,并给我发送了一个崩溃报告文件。我查看了崩溃报告,发现由于一个非常大的文件历史记录而使 EmEditor 因内存不足的情况崩溃。该用户将保存光标位置选项设置为 30000 天,并在 自定义对话框中的历史记录页面上选择了永不清除书签选项。这会导致创建一个非常大的文件历史记录。为了防止此类问题的发生,新版本去掉了永不清除书签复选框,并将光标和书签的保存时间限制为100天。

最后,希望您喜欢 EmEditor,无论您使用的是专业版还是免费版。如果您有任何问题、功能请求或想法,请联系我们在论坛中留言。)

感谢您使用 EmEditor!
Yutaka Emura

详细信息和屏幕截图,请参阅 EmEditor v21.6 新增特性

此版本还包括以下错误/问题修复:

  • 修复了查找下一个/上一个警告字符/Unicode 命令可能会丢失代理用户定义字符的错误。
  • 修复了如果批处理数组为空,EmEditor 可能在 BatchReplace 方法处崩溃的错误。
  • 修复了与布局相关的问题。
  • 修复了查找对话框中的 查找下一个/上一个按钮不适用于代理字符的问题。
  • 修复了字符间距可能变得不规则的错误。
  • 修复了在垂直拆分窗口和切换文档时垂直滚动位置可能位于底部的错误。
  • 修复了打开某些 CSV 文件时出现语法错误但单击检查语法按钮会清除所有错误的问题。
  • 修复了 v21.5 中的错误,其中 EmEditor 可能会在打开网络文件时显示“文件已被另一个程序更改。是否重新加载更改?”消息框。
  • 修复了用户报告的问题 (1)。

如果您使用的是桌面安装程序版,那您可以到帮助菜单下选择检查更新来下载最新版本。 如果此方法失败,请下载最新版本,并运行下载的安装程序。 如果您使用的是桌面便携版,则可以转到下载页面下载最新版本。商店应用版可以在几天后通过 Microsoft 商店更新( 64 位 / 32 位)。如果您使用 winget,您可以输入 “winget install emeditor” 来安装最新版本的 EmEditor(自动检测 64 位或 32 位)。

永久授权价格调整声明

随着 EmEditor 的费用成本大幅度的提高,我们决定调整价格,以便能够继续为 EmEditor 用户开发更多新功能并提供完善的服务。从 2022 年 4 月 1 日开始,单一永久授权的价格从 $179.99 变为 $252。批量折扣也会随之调整。年订阅则不受这个价格调整的影响。

我们将持续努力开发 EmEditor 并不断完善和提高我们的服务。

感谢您使用 EmEditor 以及对我们的支持。

EmEditor v21.5.2 发布!

我们发布了 EmEditor v21.5.2。

从 v21.5.1 进行的更新包括:

  • 修复了如果打开警告隐形字符选项,EmEditor 可能会冻结某些表情符号序列的错误。
  • 修复了 v21.5 之前的问题,即书签行可能在执行上/下一行命令时消失。
  • 如果出现正则表达式错误,新版本会停止在文件中查找
  • 更改了左移一个单词命令在单词后跟有空格时的行为。
  • 调整了在换行时编码/解码所选内容命令后的垂直滚动位置。
  • 修复了 EmEditor 在某些电脑上异步运行时无法在 alert()、confirm()、prompt() 方法处停止宏的问题。
  • 修复了用户报告的问题(1)。
  • 修复了打开 XML 文件时可能发生的崩溃(读取文件时避免了语法检查)。
  • 支持更多 Emoji ZWJ 序列,并修复字符检查的行为。
  • 修复了在粘滞垂直模式查找/替换对话框中勾选仅搜索选区选项的问题,即使只有选取一行。

详细信息和屏幕截图,请参阅 EmEditor v21.5 新增特性。

如果您使用的是桌面安装程序版,那您可以到帮助菜单下选择检查更新来下载最新版本。 如果此方法失败,请下载最新版本,并运行下载的安装程序。 如果您使用的是桌面便携版,则可以转到下载页面下载最新版本。商店应用版可以在几天后通过 Microsoft 商店更新( 64 位 / 32 位)。如果您使用 winget,您可以输入 “winget install emeditor” 来安装最新版本的 EmEditor(自动检测 64 位或 32 位)。

感谢您使用 EmEditor!

EmEditor v21.5.1 发布!

我们发布了 EmEditor v21.5.1。

从 v21.5.0 进行的更新包括:

  • 修复了 EmEditor 可能在 查找下一个警告/Unicode 字符命令上崩溃的错误。
  • 修复了用户报告的问题(12)。

详细信息和屏幕截图,请参阅 EmEditor v21.5 新增特性。

如果您使用的是桌面安装程序版,那您可以到帮助菜单下选择检查更新来下载最新版本。 如果此方法失败,请下载最新版本,并运行下载的安装程序。 如果您使用的是桌面便携版,则可以转到下载页面下载最新版本。商店应用版可以在几天后通过 Microsoft 商店更新( 64 位 / 32 位)。如果您使用 winget,您可以输入 “winget install emeditor” 来安装最新版本的 EmEditor(自动检测 64 位或 32 位)。

感谢您使用 EmEditor!

EmEditor v21.5.0 发布(含技术评论)!

今天,我们发布了 EmEditor v21.5.0

使用 Unicode 的最大优势是您可以在文档中包含您想要的任何字符。缺点是它可以包含某些不需要的字符。这些不需要的字符可能包括隐形字符,例如U+200B(零宽度空格)和控制字符,例如U+0081。尝试复制以下文本并将其粘贴到 Notepad 或其他文本编辑器中。

"​" 隐形字符 (U+200B)
"" 控制字符 (U+0081)

由于这些字符在 Notepad 和许多其他文本编辑器中通常会变得不可见,因此如果无意使用它们可能会造成安全问题。包含隐形字符的不受信任的源代码可能包含隐藏的后门。例如您从 StackOverflow 等代码共享网站复制源代码并将其粘贴到您的文本编辑器中,您要确保源代码没有那些不需要的字符。 另一个示例是您可能正在编辑包含用户输入文本数据的数据文件。由于用户可以输入任何文本数据,因此文本可能包含隐形或控制字符,需要在解析之前对其进行清理。如果文本编辑器无法显示这些字符,则很难找到这些字符。

v21.5 的新功能在这些情况下变得有用。v21.5 可以可视化这些隐形和控制字符。虽然您可以将此功能与默认设置一起使用,但您可以选择自定义要警告的字符或要批准的字符。如果您要编辑仅包含某些字符类型(例如英文字母、数字和一些符号)的数据文件,您可能希望将这些字符定义为已批准的字符。您可以将 EmEditor 设置为仅警告指定字符范围内的字符,或仅警告指定字符范围之外的字符。此外,您可以在保存文档时让 EmEditor 自动检查那些不需要的字符。EmEditor Professional 和 EmEditor Free 都支持此功能。

v21.5 的另一个新功能是支持 EditorConfig。如果您需要团队工作,但团队中的每个成员都使用不同的文本编辑器,那么团队可以创建 .editorconfig 文件来统一定义编码样式,例如缩进样式、换行符和文件编码。由于 v21.5 符合 EditorConfig 规范,您无需手动更改 EmEditor 选项以符合团队项目设置,只要选项设置在 .editorconfig 文件中即可。

例如,如果您的团队希望您使用 LF 作为换行符并使用 4 的缩进大小,您的团队可以在同一(或父)文件夹中创建一个 .editorconfig 文件,其中包含以下行:

[*.txt]
end_of_line = lf
indent_size = 4

所有支持 EditorConfig 的文本编辑器,包括 EmEditor v21.5,都能查找到该文件,并为指定的文件类型自动设置选项。

即使您不需要团队合作,此功能也很有用。例如,如果您希望“a.txt”和“b.txt”文件不换行显示,但如果您希望其他文本文件有换行,您可以创建一个包含以下行的 .editorconfig 文件:

[{a,b}.txt]
max_line_length = off

这个功能让您能避免在 EmEditor 中为简单选项创建新配置。

虽然我优化了代码以提高速度,但 EditorConfig 支持会减慢打开文件的速度,尤其是当您从慢速驱动器或网络打开文件时。在这种情况下,您可以通过清除自定义对话框中编辑页面上的使用 .editorconfig 选项来关闭该选项。EmEditor Professional 和 EmEditor Free 都支持 EditorConfig 功能,但使用 .editorconfig 选项仅在 EmEditor Professional 上可用(EmEditor Free 始终启用该功能)。

由于我们支持 EditorConfiginsert_final_newline 属性 ,我们还在保存详细信息对话框中添加了确保每个文件末尾都有换行符选项。 EmEditor Professional 和 EmEditor Free 都支持此功能。

一位客户询问他是否可以在自己的宏中使用合计宏在状态栏上显示所选数字的总和。Selection 对象的新 SumAverage 属性让您可以计算所选数字的总和及平均值。由于这些属性工作得更快,原本包含的 合计 (Sum.jsee) 宏被重写为使用 Sum 属性。此功能仅支持在 EmEditor Professional 上使用。

最后,希望您喜欢 EmEditor,无论您使用的是专业版还是免费版。如果您有任何问题、功能请求或将来的任何想法,请联系我们发帖到论坛中。我也欢迎您撰写评论(您可以到帮助菜单上选择撰写评论命令),我会定期阅读它们。(您可能需要先下载商店应用版本,然后才能写评论。)

感谢您使用 EmEditor!
Yutaka Emura

详细信息和屏幕截图,请参阅 EmEditor v21.5 新增特性

此版本还包括以下错误/问题修复:

  • 修复了 v21.4 之前的问题,如果在特定条件下存在很长的路径,在文件中查找命令可能无法正常工作。
  • 修复了 v21.4 之前的问题,如果勾选了计算常用字符串选项,查找没有选择匹配大小写可能会失败的问题。
  • 修复了 v21.4.1 的问题,即使用搜索群组中所有文档选项进行正则表达式搜索可能会失败。
  • 修复了水平分割窗口时的水平滚动条问题。
  • 修复了与向上滚动时鼠标选取相关的 v21.4 之前的问题。
  • 修复了右键单击工具栏时可能发生崩溃的问题。
  • 修复了用户报告的问题(12)。

如果您使用的是桌面安装程序版,那您可以到帮助菜单下选择检查更新来下载最新版本。 如果此方法失败,请下载最新版本,并运行下载的安装程序。 如果您使用的是桌面便携版,则可以转到下载页面下载最新版本。商店应用版可以在几天后通过 Microsoft 商店更新( 64 位 / 32 位)。如果您使用 winget,您可以输入 “winget install emeditor” 来安装最新版本的 EmEditor(自动检测 64 位或 32 位)。

EmEditor v21.4.1 发布!

我们发布了 EmEditor v21.4.1。

从 v21.4.0 进行的更新包括:

  • 外部工具参数中的 $(DocText) 最多可允许 32768 个字符。
  • 修复了 v21.4 之前的问题,即字符代码值命令可能会在非常大的文件中显示空白文本。
  • 新版本在切换到 CSV 模式时总是解析所有行以计算所有分隔符。
  • 修复了停止宏不应显示未指定的错误消息的问题。
  • 修复了转置命令在仅有一列的 CSV 文件中无法运作的问题。
  • 修复了 v21.4 之前的问题,如果在特定条件下存在很长的路径,在文件中查找命令可能无法正常工作。
  • 修复了用户报告的问题(123456)。

详细信息和屏幕截图,请参阅 EmEditor v21.4 新增特性。

如果您使用的是桌面安装程序版,那您可以到帮助菜单下选择检查更新来下载最新版本。 如果此方法失败,请下载最新版本,并运行下载的安装程序。 如果您使用的是桌面便携版,则可以转到下载页面下载最新版本。商店应用版可以在几天后通过 Microsoft 商店更新( 64 位 / 32 位)。如果您使用 winget,您可以输入 “winget install emeditor” 来安装最新版本的 EmEditor(自动检测 64 位或 32 位)。

感谢您使用 EmEditor!