Aspell字典无法打开。

21

当我尝试添加一个单词或忽略所有时, Aspell 抛出错误“无法打开文件 ‘C:/Program Files (x86)/Aspell/en.pws’ 进行写入”。有人知道是什么原因导致了这个问题以及如何修复它吗?

6个回答

19

确保当前用户对"C:/Program Files (x86)/Aspell"文件夹的安全设置允许修改和写入。

我也遇到了同样的问题,这个解决办法完美解决了。


7
这实际上是一种解决方案,用于存储应用程序文件夹内用户数据的错误位置选择。Aspell 应该将其设置为 %appdata%,即类似于 C:\Users<current user>\AppData\Roaming\ 的路径。 - R. Schreurs
R. Schreurs,如何解决这个问题? - Jess Riedel

15

以下是关于缺失的en.pws和en.prepl文件的一些帮助。我不知道为什么开发人员没有为Windows提供这个简单的解决方案。

  1. 进入“Aspell”的目录,它应该已经作为NotePad++的子目录安装了。
  2. 在主Aspell目录中右键单击,选择“新建”,然后选择“文本文档”。
  3. 将新文本文档重命名为“en.pws”(不带引号),去掉“txt”扩展名,按回车键。
  4. 重复操作,创建另一个新文本文档并将其重命名为“en.prepl”。
  5. 在NotePad++中打开en.pws
  6. 将以下内容复制并粘贴到en.pws中,完全按照以下方式;

    personal_ws-1.1 en 2
    µÄ
    

    (注意:µÄ符号在personal_ws-1.1 en 2下方的新行中。)

  7. 打开NotePad++菜单,点击“编码”,确保选择了“ANSI编码”(旁边有一个点)。

  8. 保存文件并关闭文件。
  9. 在NotePad++中打开en.prepl文件
  10. 将以下内容复制并粘贴到该文件中:

  11. personal_repl-1.1 en 0 
    
  12. 确保选择了“编码为ANSI”。

  13. 保存并关闭文件。

注意:在使用NotePad ++拼写检查和“学习”按钮之前,必须关闭每个文件。否则会损坏文件,您必须重新做。

NotePad ++现在将起作用,您可以将单词保存到“.pws”文件中。


我在点击“学习”后遇到了无法打开文件的错误,但拼写检查仍然继续。拼写检查完成后,它会弹出“完成”的提示,现在当我使用它时,不再出现错误。 :thumbup: - HPWD
+1:虽然该解决方案可行,但是启用修改和写入权限(如接受的答案中所述)就足够了,因此不必要。如果en.pws和en.prepl文件不存在,则会自动创建它们。 - JFK
谢谢,我尝试了权限路线,但它不接受权限更改,所以这些步骤非常有帮助。 - Niseonna
@ JFK,我猜并不总是这样。在我的情况下它们并没有自动生成。 - Corio
@Corio嗯,我的评论是在2013年5月的时候说的,那可是很久以前的事情了。现在肯定有所改变。 - JFK

6

GNU Aspell自定义单词文件的可能位置:

%localappdata%\VirtualStore\Program Files\Aspell
%programfiles%\Aspell

例如,对于英语,自定义单词文件名为en.pws(文件名=语言代码),第一行必须如下所示:
personal_ws-1.1 en 286

其中"en"是文件名(=语言),286是该文件中单词(行)的数量。最后一行必须为空。 GNU Aspell不允许以数字结尾的单词(例如Beta1)。如果您的pws文件中有这样的单词,则Aspell或使用它的应用程序(例如Notepad ++)可能会崩溃/挂起...

您可能需要删除您的en.pws文件并创建一个新文件(例如使用Notepad ++)。文件格式如上所述,否则GNU Aspell将无法正常工作。


在我的情况下,你对错误原因的假设不适用。我已经在Windows 7上进行了干净的安装。我正在使用Notepad++中的Aspell。当以普通用户模式运行时,Notepad++根本没有权限在%programfiles%\Aspell中创建文件,即使该用户属于本地管理员组。这是Windows 7的标准行为。 - R. Schreurs
那么,如何让ASpell将en.pws文件放置在其中一个位置? - Adrian

1
我把 "C:/Program Files/Aspell" 文件夹的只读属性去掉了。 但 N++ 仍然显示
GNU Aspell
错误: 文件 "C:/Program Files/Aspell/en.pws" 无法打开进行写入。
英语 .50 词典安装不能正确地安装到您的 C:/Program Files/Aspell 目录中。我必须在 WinRAR 中打开安装程序 .EXE 并复制文件夹。
我应该将英语词典安装程序复制到我的 C:/Program Files/Aspell 文件夹并从那里安装吗?

“只读”是文件属性,您没有更改目录的安全性。右键单击该目录,选择属性,然后使用安全选项卡允许访问。 - Mesh

1
请确保当前用户的"C:/Program Files (x86)/Aspell"文件夹的安全设置允许修改和写入。
我将"C:/Program Files/Aspell"文件夹的只读属性去掉了,但错误信息仍然存在。
这不是只读问题,而是权限问题。在安全性中,给予“用户”对.prepl和.pws文件的“完全控制”。

0
"sth"和"Mark"提供的回答很好,但在Windows 10中仍存在权限问题。不要在程序文件文件夹中为Aspell创建这两个文件,而是先在桌面上创建并初始化它们;这样将使您的帐户对这些文件具有完全控制权。(还要在粘贴初始化文本之前设置编码)。然后将这两个文件移动到Aspell的程序文件夹中,它们将保留您帐户的完全写入权限,而不会干扰Aspell程序文件夹的总体权限。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接