问题
Although the function aspell
comes standard with the utils
package, it doesn't seem to work for me. I keep on getting the same error:
aspell("love")
Error in aspell("love") : No suitable spell-checker program found
Any thoughts?
> sessionInfo()
R version 3.0.1 (2013-05-16)
Platform: i386-w64-mingw32/i386 (32-bit)
locale:
[1] LC_COLLATE=Dutch_Belgium.1252 LC_CTYPE=Dutch_Belgium.1252
[3] LC_MONETARY=Dutch_Belgium.1252 LC_NUMERIC=C
[5] LC_TIME=Dutch_Belgium.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
回答1:
For starters, the function aspell("love")
is improper. Please reference the correct function call at inside-r.org. This is, however, not your big obstacle. The reason you are getting the No suitable spell-checker program found
error is because, as you and @juba have hinted to here, your installation of aspell() is lacking. Please consider the following for proper installation.
Step 1. Download Aspell Win32 from following link (Yes, it's ancient) http://ftp.gnu.org/gnu/aspell/w32/Aspell-0-50-3-3-Setup.exe
Step 2. Install Aspell Win32 in Appdata roaming folder (it may be convenient to create a SpellCheckers parent folder before hand)
Step 3. Add Aspell Win32 to the Windows PATH. Learn how to add variables to your system path. In our example, type
C:\Users\UrPC\AppData\Roaming\SpellCheckers\Aspell\bin\
, where UrPC is the name of your PC.
Step 4. Confirm this environment variable edit by clicking OK several times and exiting the advanced systems property dialogue,
Step 5. Download Aspell dictionary from following link (I don't believe newer versions will work but who knows) http://ftp.gnu.org/gnu/aspell/w32/Aspell-en-0.50-2-3.exe
Step 6. In any directory run the Aspell dictionary 'installer' and it will unpack itself to a folder called TmpInstall
in the same directory.
Step 7. Open the TmpInstall
folder and run setup-Aspell-en-0.50-2.exe. It should auto detect where your Aspell Win32 installation is based on the system path we added in Step 3. If not, proceed to Step 8.
Step 8. Open windows PowerShell and type the word aspell
You should see command information vomit down your prompt. If you don't you may have entered the PATH information incorrectly (and need to fix it) or need to restart Windows. If after doing this you still throw an error, consider the Appendix.
Appendix: If Aspell was previously uninstalled you may need to delete it's orphaned registry key. Run regedit.exe and search for aspell. Delete any aspell key associated with an uninstalled aspell directory. Be very careful not to unintentionally change anything other than the aspell key in question as deleting something by accident could send you to Windows Hell.
This wisdom is an extension of the procedure to install Hunspell on Windows
Best of luck!
回答2:
Did you read the aspell
help page ?
If you read it, you will discover the program
argument :
program a character string giving the name (if on the system path) or full path of the spell check program to be used, or NULL (default). By default, the system path is searched for aspell, hunspell and ispell (in that order), and the first one found is used.
And you will also read the following in the Details section :
The spell check programs employed must support the so-called Ispell pipe interface activated via command line option -a. In addition to the programs, suitable dictionaries need to be available. See http://aspell.net, http://hunspell.sourceforge.net/ and http://lasr.cs.ucla.edu/geoff/ispell.html, respectively, for obtaining the Aspell, Hunspell and (International) Ispell programs and dictionaries.
来源:https://stackoverflow.com/questions/19093319/aspell-error-no-suitable-spell-checker-program-found