EmEditor v24.0.1 发布!

今天,我们发布了 EmEditor v24.0.1。

v24.0.1 包括以下错误修复和改进。

  • 修复了导入和导出设置无意中将设备 ID 复制到另一台计算机的问题。
  • 修复了在未启用“单元格选择模式”的情况下选择单个列时不会复制右侧分隔符的错误。
  • 修复了以下错误:在 CSV 中选择并转换(例如,转换为大写命令)语法无效的列时,EmEditor 会转换整行的错误。
  • 修复了用户报告的问题(12)。

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

感谢您使用 EmEditor!

EmEditor v24.0.0 发布(含技术评论)

今天,我们发布了EmEditor v24.0.0

在上一个版本 v23.1 中,我们介绍了如何通过调用OpenAI的 API 从宏中使用生成式 AI。通常,将文本用作调用生成式 AI 的参数,这表明文本编辑器与生成式 AI 之间存在高度的关联。在文本编辑器中编写文档时,使用生成式 AI 的目的之一是校对文档。在这种用例中,您希望轻松比较校对前后的文档,以便轻松决定保留或丢弃哪些更改部分的文本。在本版本中,我们在比较分割窗口中右键单击更改后的文本时添加了一个“复制到另一个”命令。选择此选项将更改部分复制到正在比较的另一篇文档中。如果您想一次性复制文档中的所有更改,请单击分割窗口标题部分新增的“全部复制到另一个”按钮。

比较完成后,您可能希望关闭不必要的文档,仅保留所需的文档。在这种情况下,您现在可以通过单击新增的[X(关闭)]按钮或按Ctrl+W或Ctrl+F4仅关闭当前活动窗格中的文档。

我们进一步开发了库的ChatOpenAI.jsee宏示例,并将其默认添加到 EmEditor 中名为AI.jsee的名称下。通过使用 AI 宏,您可以对所选文本或整个文档执行校对、摘要、翻译、生成图像或向 AI 提问。第一次运行此宏时,将提示您输入 OpenAI API 密钥。如果您已登录 OpenAI,则您可以在此处获取您的秘密 OpenAI API 密钥。为了将来跳过输入此密钥,请设置环境变量OPENAI_API_KEY

在本版本中,我们还回应了许多客户的请求。

1. Onigmo正则表达式现在支持\Q...\E语法。这种语法允许您在不需要转义的情况下禁用正则表达式元字符。例如,要搜索字符串[a.c],传统的正则表达式需要您使用反斜杠来转义元字符"[", ".", "]"\[a\.c\]。在新版本中,您只需编写\Q[a.c]\E,消除了转义元字符的需求。请注意,Boost的 Regex 已经支持\Q...\E语法已经有一段时间了。

2. 我们在查找下一个查找上一个命令中添加了一个选项,仅匹配不重叠的字符串。例如,如果在字符串“AAAAA”中搜索“AA”,最初只有前四个字符“AAAA”会被突出显示。当您执行查找下一个(F3)命令时,搜索位置每次移动一个字符,从而使您可以搜索所有“AA”对。通过在高级对话框中设置仅在查找下一个/上一个中查找非重叠字符串复选框,使命令操作的方式仅匹配不重叠的字符串,使最后的“A”未被搜索,从而使突出显示与搜索位置对齐。

3. 在 EmEditor 中,URI 和电子邮件地址会被突出显示,我们经常收到提取仅这些部分的请求。在以前的版本中,可以通过在查找对话框中指定合适的正则表达式并选择提取来实现此目的,但是很多客户不熟悉正则表达式。在本版本中,您可以通过指定选项在提取常见字符串命令中轻松提取仅 URI 或电子邮件地址。

4. 在 EmEditor 中打开 CSV 时,默认情况下会自动调整分隔符位置。然而,非常长的单元格可能导致列宽度变得非常宽,使得整个 CSV 难以查看。在本版本中,我们在自定义对话框的CSV 选项页面中添加了一个最大列宽文本框,允许您指定最大列宽度。

5. 在上一个版本中,当 EmEditor 中打开的文件被另一个应用程序删除时,EmEditor 开始显示警告消息。在本版中,您可以选择是否显示警告消息。可以在配置属性文件页面通过如果文件被删除则提示复选框进行指定。

6. 一些客户报告了在 Windows 11 的最新版本上 EmEditor 的启动时间较慢。这主要是由于启动时检索Windows 剪贴板历史记录。新版本默认情况下已禁用此选项,但可以在自定义对话框的剪贴板页面中启用。

7. 新版本默认禁用切换到不换行选项。

此外,在本版本中,我们显著优化了命令,例如拆分文件合并文件增加行缩进减少行缩进,相比 v23.1,速度提高了27到124倍,根据我们的测试

Makoto Emura 在他的博客上宣布的,从这个版本开始,在 EmEditor Professional 上使用超出 EULA(最终用户许可协议)允许的设备数量时,可能会出现警告消息。为了保持我们更低的许可费用,并确保已购买多个许可证的客户之间的公平性,请购买足够的许可证以遵守许可证条款。

卸载 EmEditor 会注销设备,从而允许您在不同设备上安装。您可以在这里查看您注册的设备。当 v24.0.0 发布时,我们已注销所有设备,因此旧设备将被注销。当您使用 EmEditor 时,设备将自动注册。

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

感谢您使用 EmEditor!
Yutaka Emura

请查看 EmEditor v24.0 新功能以获取详细信息和截图。

如果您使用桌面安装版,您可以在帮助菜单中选择检查更新来下载最新版本。如果该方法失败,请下载最新版本,然后运行下载的安装程序。如果您使用桌面便携版,您可以前往下载页面下载最新版本。应用商店版本可以在数天后通过Microsoft Store更新(64位32位)。

EmEditor v23.1.3 发布!

我们发布了 EmEditor v23.1.3。

v23.1.3 包括以下错误修复和改进。

  • 修复了一个潜在问题,可能无法保存非常大文件的一部分。

详细信息和屏幕截图,请参阅 EmEditor v23.1 新增功能。

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

EmEditor v23.1.2 发布!

今天,我们发布了 EmEditor v23.1.2。

v23.1.2 包括以下错误修复和改进。

  • 修复了各种问题并提高了稳定性。

详细信息和屏幕截图,请参阅 EmEditor v23.1 新增功能。

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

EmEditor v23.1.1 发布!

我们发布了 EmEditor v23.1.1。

v23.1.1 包括以下错误修复和改进。

  • 修复了打开的文件包含无效字符时可能发生崩溃的问题。
  • 修复了在不存在选区的情况下使用带有 eeFindReplaceSelOnly 标志的 BatchReplace 方法时出现的意外行为。

此版本还包括开发 v23.1 时的所有错误修复

详细信息和屏幕截图,请参阅 EmEditor v23.1 新增功能。

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

EmEditor v23.1.0 发布(含技术评论)!

我们发布了 EmEditor v23.1.0

在之前的 v23.0 版本中,我们介绍了如何使用新的网页浏览器和宏来访问生成式 AI 的网页并获取各种信息和服务。然而,那些有生成式 AI 站点的付费 API 密钥的用户可以通过直接调用 API 来获得更快、更高质量、运行更稳定的服务。为此,我们使用了 JavaScript 中的 fetch 函数,但由于该函数是异步操作的,因此在宏结束之前可能无法获取到函数的返回值。实际上,即使在 v23.0 中,如果显示了 EmEditor 内置的网页浏览器,也可以使用此方法,但存在如果不显示网页浏览器则无法使用异步函数(async)的问题。在新版本 v23.1 中,通过使用 KeepRunning 属性,现在可以等待异步函数完成而不结束宏(仅限 EmEditor Professional)。 在调用异步函数之前,请指定 KeepRunning 属性,如下所示。


shell.KeepRunning = true;

这使宏保持运行,让您能获取异步函数的返回值。要在获得异步函数的返回值后结束宏,可以指定如下:


shell.KeepRunning = false;

这相当于等待异步函数完成时的 Quit(),会立即结束宏。下面是一个宏的示例,其中使用 fetch 函数来利用 OpenAI API。要运行此宏,您需要将 {your-API-key} 替换为您的 API 密钥。当您运行以下宏时,它会发送问题“你好吗?” 到 OpenAI API 并在输出栏中显示答案。


#language="v8"

const apiKey = "{your-API-key}";

/**
* Sends prompt to OpenAI and returns the response.
* Docs: https://platform.openai.com/docs/guides/text-generation/chat-completions-api?lang=curl
* @param {string} endpoint URL for request
* @param {string} apiKey API key
* @param {string} messageContent The prompt
* @returns {string} The text content of the response
*/
async function callOpenAI(endpoint, apiKey, messageContent) {
const response = await fetch(
endpoint,
{
method: "POST",
headers: {
"Authorization": `Bearer ${apiKey}`,
"content-type": "application/json",
},
body: JSON.stringify({
"model": "gpt-3.5-turbo",
"messages": [
{
"role": "user",
"content": messageContent,
}
],
}),
}
);
if (!response.ok) {
alert(await response.text());
Quit();
}

const responseObj = await response.json();
if (responseObj.choices.length == 0) {
alert("choices length is 0");
Quit();
}

// Get content of first choice
return responseObj.choices.pop().message.content;
}

async function main() {
const endpoint = "https://api.openai.com/v1/chat/completions";
const sPrompt = "How are you?";
shell.KeepRunning = true;
const response = await callOpenAI(endpoint, apiKey, sPrompt);
OutputBar.writeln( response );
OutputBar.Visible = true;
shell.KeepRunning = false;
}
main();

CharOpenAI.jsee 宏示例进一步扩展了如何运用 OpenAI API。 这个宏能通过显示一个弹出菜单,让用户对所选文本或整个文档提出一系列的常用问题(例如,“校对”、“总结”、“查找”、“翻译”…)。选择要提问的问题后,EmEditor 会将问题发送到 OpenAI API 并在输出栏中显示答案。

实际上,我在撰写此文章时使用了 CharOpenAI.jsee 宏进行翻译和校对。通过将生成式人工智能与文本编辑器相结合,我已经能够显着提高我的工作效率。

v23.1 的另一个主要变化是在处理大文件时的速度提高。在 v23.0 中,行的更改是存储在内存中,而不是临时文件中,以便更快地运行。但是,在内存有限的系统中,这可能会由于系统内存不足而导致速度缓慢甚至崩溃。在 v23.1 中,对内存相关算法进行了修改,以更高效地运行。此外,当虚拟内存不足时,EmEditor 可以使用临时文件来存储数据。用户不再需要担心虚拟内存的大小,并且因内存不足而导致崩溃的频率也显著降低。另外,我们改进了与内存相关的代码,并且使用了多线程SIMD 指令集。这使得在编辑大文件(包括 CSV 文件)时,v23.1 的速度比 v23.0 提高了 1.51 至 41.2 倍

帮助功能现在默认使用外部浏览器,而不是 EmEditor 的内置网页浏览器,类似于 v22.5 及更早版本。此外,在自定义对话框中添加了帮助页面,让您能更改与帮助相关的设置。

最后,Makoto Emura 添加了完成列表功能。要使用此功能,必须在配置属性的语言服务器页面中启用语言服务器协议,并且还必须启用显示完成列表选项(仅限 EmEditor Professional)。目前,只有 JavaScript 支持此功能。

希望您喜欢 EmEditor,无论您使用的是 Professional 还是 Free。如果您有任何问题、功能请求或想法,请联系我们到论坛中留言

感谢您使用 EmEditor!br> — Yutaka Emura

详细信息和截图,请参阅 EmEditor v23.1 新增特性

此发布还包括了 在开发 v23.1 时的 bug 修复

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

EmEditor v23.0.5 发布!

我们发布了 EmEditor v23.0.5。

今天,我们发布了 EmEditor v23.0.5。

v23.0.5 包括以下错误修复和改进。

  • 修复了在状态栏上显示“光标处的字符代码”时打开 CSV 文件可能发生的崩溃的问题。
  • 修复了在运行 CSV 验证时在滚动条上显示小地图时可能发生崩溃的问题。
  • 修复了在垂直选择模式下禁用多选区编辑时缩进命令可能发生崩溃的问题。
  • 修复了 CommitList 插件上使用 Unicode 路径可能发生崩溃的问题。
  • 修复了帮助上的各种问题 (1)。

详细信息和屏幕截图,请参阅 EmEditor v23.0 新增功能。

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

感谢您使用 EmEditor!

EmEditor v23.0.4 发布!

我们发布了 EmEditor v23.0.4。

今天,我们发布了 EmEditor v23.0.4。

v23.0.4 包括以下错误修复和改进。

  • 新版本在隐藏网页浏览器时完全关闭它。
  • 解决了在不支持 SSE4.2 的旧 CPU 上运行时发生崩溃的问题(例如 2006 年发布的 Intel Core 2 Duo)。该崩溃是由于 Visual Studio v17.8 中的错误造成的。
  • 修复了菜单中的查找关键字(帮助)命令。
  • 修复了选择多个单元格、按 F2 或 Enter 键并键入会将单元格内容更改为同一字符串的问题。
  • 修复了在 CSV 单元格编辑模式下按 ESC 并不总是重置单元格的问题。
  • 修复了使用某些选项时“合并列”命令可能发生崩溃的问题。
  • 修复了在 CSV 语法检查期间运行“拆分文件”命令时可能出现的崩溃问题。
  • 修复了使用语言服务器协议显示悬停工具提示时可能发生的崩溃。

详细信息和屏幕截图,请参阅 EmEditor v23.0 新增功能。

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

感谢您使用 EmEditor!

EmEditor v23.0.3 发布!

我们发布了 EmEditor v23.0.3。

今天,我们发布了 EmEditor v23.0.3。

v23.0.3 包括以下错误修复和改进。

  • 修复了以下问题:如果从配置属性的“文件”页面的“被其他程序更改时”下拉列表中选择“保持锁定”,EmEditor 可能无法保存工作区、换行或显示大纲。
  • 修复了各种崩溃问题。

详细信息和屏幕截图,请参阅 EmEditor v23.0 新增功能。

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

感谢您使用 EmEditor!

EmEditor v23.0.2 发布!

我们发布了 EmEditor v23.0.2。

今天,我们发布了 EmEditor v23.0.2。

v23.0.2 包括以下错误修复和改进。

  • 修复了宏可能无法在默认设置下运行的错误。 即使存在多个群组窗口,新版本也限制一个网页浏览器。

详细信息和屏幕截图,请参阅 EmEditor v23.0 新增功能。

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

感谢您使用 EmEditor!