aspell com emacs 26.1 no windows ms


9

Depois de atualizar o emacs para a versão 26.1 em uma máquina Windows, recebo a seguinte mensagem de erro do flyspell:

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

O problema é que, mesmo depois de instalar um binário do Windows aspell 0.6 a partir daqui , ele ainda não funciona porque, aparentemente,

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 [...]

Alguém já teve esse problema? Os usuários do emacs dependem do aspell no windows ou estão usando alternativas como o hunspell?


11
Eu pessoalmente uso hunspell no Windows.
InHarmsWay

Você constrói você mesmo ou existe uma boa fonte de binários recentes do Windows?
B_old

Eu não me
compilei

Respostas:


10

Sim, o hunspell é o verificador ortográfico a ser usado com o emacs 26.1, já que não há janelas binárias do aspell 0.6 por enquanto e ninguém pode prever quando haverá um. Eu tentei hunspell esta manhã com o emacs 26.1 no Windows 10 e ele correu perfeitamente bem. Você encontrará algumas dicas muito úteis sobre como configurar seu arquivo .emacs para hunspell aqui . Tenha um bom dia !


11
Eu recebo o erro Erro: ispell-check-version: argumento do tipo errado: stringp, nil #
Didier A.

9

Você pode instalar o aspell ou hunspell em https://www.msys2.org/ . O MSYS2 possui binários nativos para aspell disponíveis, compatíveis com o Emacs 26.1. Observe que você também pode instalar o emacs usando o MSYS2.

Após a instalação, MSYS2 MinGW 64-bitdeve estar no seu menu Iniciar. Inicie isso, que abre um terminal, e procure pacotes usando pacman -Ss aspell.

Existem várias opções. Acabei usando os dois pacotes a seguir para instalar o aspell e um dicionário em inglês:

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

Agora você pode entrar which aspellno mesmo terminal para encontrar sua localização. Ele provavelmente vai estar em C:\msys64\mingw64\bin.

Adicione esse caminho à sua variável de ambiente "Path".

No seu conjunto de configurações do emacs (setq ispell-program-name "aspell").

Se tudo estiver configurado corretamente, você poderá habilitá-lo flyspell-modesem obter um erro como o seguinte no seu buffer de mensagens:

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

Todos os itens acima também se aplicam ao hunspell. Hunspell ainda fornece instruções na página do github para criar a partir da fonte usando o MSYS2 no Windows.


Esta é uma solução agradável e direta a ser usada aspellsem prejudicar sua configuração atual.
Dean Seo

Um excelente post que mostra uma compreensão real dos problemas - e funciona também!
Devcom 29/03/19

1

Evito instalar o MSYS no Windows 10 porque é possível baixar o Ubuntu da loja da Microsoft e usar o ispell e o emacs dentro do aplicativo Ubuntu (sudo apt-get install ispell). Você ainda tem acesso aos arquivos do Windows no ponto de montagem / mnt / c.


11
Por favor, considere elaborar sua resposta para mostrar como ela responde à pergunta.
Drew

0

Binários Win32 / Win64 para aspell-0.60.6.1 sempre existiram . Você pode obter um autônomo trabalhando totalmente com a versão Emacs do aspell-0.60.6.1 da Cygwin. Basicamente, tudo o que você precisa do Cygwin são os seguintes arquivos:

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

O meu windows 10 init.elestá configurado da seguinte maneira:

;;; 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")

Eu testei flyspellcom Aspell 0.60 e Emacs 26.1 ontem. Tudo o que posso dizer é que esse recurso é lento e não está funcionando bem. Na minha opinião, não é recomendado, porque existem programas nativos alternativos mais rápidos do Windows. Apesar de ter ajustado a instalação do Emacs no Windows 10 para várias versões, acho que esse programa não é para mim. Para aqueles que usam a fonte LaTeX, o TeXStudio é a solução recomendada no Windows (e até no Linux).


Você não fornece nenhum link ou recurso para os binários. Parece que você mesmo o compilou para o Windows.
Welgriv 16/04

0

Para concluir as respostas de outras pessoas, instale o hunspell e faça o seguinte:

  1. Faça o download do hunspell win32 aqui , procure hunspell-1.3.2-3-w32-bin.zip (ex: ctrl + F hunspell)
  2. Descompacte-o em um determinado repositório path\to\my\repo(pode ser inteligente C:\Program Files (x86)\hunspell)
  3. Adicione isso ao seu arquivo de inicialização do emacs: (setq-default ispell-program-name "C:/Program Files (x86)/hunspell/bin/hunspell.exe")observe que eles \foram alterados /.

Se você precisar de mais detalhes, especialmente usando outros dicionários, siga estas instruções como mencionado anteriormente, mas cuidado, NÃO há necessidade de adicionar hellspell ao PATH do Windows.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.