ms windowsでのemacs 26.1のaspell


9

Windowsマシンでemacsをバージョン26.1に更新した後、flyspellから次のエラーメッセージが表示されます。

Error enabling Flyspell mode:
(c:/Program Files (x86)/Aspell/bin/aspell.exe release 0.60 or greater is required)

問題は、ここからaspell 0.6のWindowsバイナリをインストールした後でも、明らかに動作しないことです。

The Aspell 0.60 library is binary compatible with the Aspell 0.50 library. 
For this reason I chose _not_ to increment the major version number (so-name) of the shared library by default [...]

他の誰かがすでにこの問題を抱えていますか?emacsユーザーはWindowsでaspellに依存していますか、それともhunspellなどの代替手段を使用していますか?


1
私は個人的にWindowsでhunspellを使用しています。
InHarmsWay 2018年

自分でビルドしますか、それとも最近のWindowsバイナリの良い情報源はありますか?
B_old

私は自分自身をコンパイルしていなかった、私は私からそれを得たと考えているsourceforge.net/projects/hunspell
InHarmsWay

回答:


10

はい、hunspellはemacs 26.1で使用するスペルチェッカーです。当面はaspell 0.6のWindowsバイナリが存在せず、いつ存在するか予測することはできません。今朝、Windows 10のemacs 26.1でhunspellを試してみましたが、完全にうまくいきました。hunspell用に.emacsファイルを構成する方法に関する非常に役立つヒントがここにあります。ごきげんよう !


1
エラー:ispell-check-version:Wrong type argument:stringp、nil
Didier A.

9

aspellまたはhunspellは、https: //www.msys2.org/でインストールできます。MSYS2には、Emacs 26.1と互換性のあるaspell用のネイティブバイナリが用意されています。MSYS2を使用してemacsインストールすることもできます。

インストール後MSYS2 MinGW 64-bit、スタートメニューに表示されます。これを起動するとターミナルが表示され、を使用してパッケージを検索しますpacman -Ss aspell

いくつかのオプションがあります。最終的に、次の2つのパッケージを使用してaspellと英語の辞書をインストールしました。

pacman -S mingw64/mingw-w64-x86_64-aspell
pacman -S mingw64/mingw-w64-x86_64-aspell-en

これwhich aspellで、同じターミナルに入力して、その場所を見つけることができます。おそらくに入るでしょうC:\msys64\mingw64\bin

そのパスを「パス」環境変数に追加します。

emacs構成セットで(setq ispell-program-name "aspell")

すべてが正しく設定されていればflyspell-mode、メッセージバッファに次のようなエラーが表示されることなく有効にできるはずです。

Error enabling Flyspell mode:
(Searching for program No such file or directory aspell)

上記はすべてhunspellにも適用されます。Hunspellは、WindowsでMSYS2を使用してソースからビルドするためのgithubページにも指示を提供しています。


これは、aspell現在の構成をまったく損なうことなく使用できる、わかりやすい簡単なソリューションです。
Dean Seo

問題の真の理解を示す優れた投稿-そしてそれも機能します!
devcom

1

MSストアからUbuntuをダウンロードして、Ubuntuアプリケーション内でispellおよびemacsを使用できるため(sudo apt-get install ispell)、MSYSをWindows 10にインストールすることは避けます。マウントポイント/ mnt / cでWindowsファイルにアクセスできます。


1
それがどのように質問に答えるかを示すために、あなたの答えを詳しく説明することを検討してください。
ドリュー、

0

aspell-0.60.6.1のWin32 / Win64バイナリは常に存在しています。Emacsバージョンのaspell-0.60.6.1で完全に動作するスタンドアロンをCygwinから入手できます。基本的に、Cygwinに必要なのは次のファイルだけです。

bin\aspell.exe

bin\cygaspell-15.dll

bin\cyggcc_s-seh-1.dll

bin\cygiconv-2.dll

bin\cygintl-8.dll

bin\cygncursesw-10.dll

bin\cygstdc++-6.dll

bin\cygwin1.dll

lib\aspell-0.60

share\doc\ aspell + aspell-LANG (Optional)

share\info\ files aspell.info.gz and dir

share\man\man1\aspell.1.gz

私のWindows 10 init.elは次のように設定されています。

;;; Use Aspell for spell checking

(setq-default ispell-program-name "C:/Emacs/bin/aspell.exe")


;; Custom hotkeys for spell checking in emacs.

(global-unset-key (kbd "M-$"))  ;unbind emacs default key for ispell-word

(global-set-key (kbd "<f7>") 'ispell-word)

(global-set-key (kbd "C-<f7>") 'flyspell-mode)

;;; Specify which dictionary to use at startup (english, ...). Uncomment one of the following lines:

;(setq ispell-dictionary "english")

flyspell昨日、Aspell 0.60とEmacs 26.1でテストしました。私が言えることは、機能が遅く、うまく機能していないということです。私の意見では、別の高速Windowsネイティブプログラムがあるためお勧めしません。いくつかのバージョンのWindows 10でEmacsのインストールを微調整しているという事実にもかかわらず、このプログラムは私には向かないと思います。LaTeXソースを使用しているユーザーにとって、TeXStudioはWindows(さらにはLinux)で推奨されるソリューションです。


あなたはしていないバイナリへのリンクまたはリソースを提供します。Windows用に自分でコンパイルしたようです。
Welgriv

0

他の回答を完了するには、次のようにaspellの代わりにhunspellをインストールします。

  1. ここからhunspell win32 binairyをダウンロードし、hunspell-1.3.2-3-w32-bin.zipを探します(例:ctrl + F hunspell)
  2. 所定のリポジトリ内で解凍しますpath\to\my\repo(スマートなものも可能ですC:\Program Files (x86)\hunspell
  3. :ファイルのinitあなたのemacsにこれを追加します(setq-default ispell-program-name "C:/Program Files (x86)/hunspell/bin/hunspell.exe")。なお、\に変更がありますが/

特に他の辞書を使用してさらに詳細が必要な場合は、前述の手順に従いますが、hunspellをWindowsのPATHに追加する必要がないことに注意してください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.