From: Stefan Monnier <monnier@iro.umontreal.ca>
To: emacs-devel@gnu.org
Subject: Re: ispell.el, flyspell.el: better ispell/aspell switching
Date: Tue, 15 Apr 2008 14:40:23 -0400 [thread overview]
Message-ID: <jwvd4or9dsj.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <20080404120217.GA7503@agmartin.aq.upm.es> (Agustin Martin's message of "Fri, 4 Apr 2008 14:02:17 +0200")
>>>>> "Agustin" == Agustin Martin <agustin.martin@hispalinux.es> writes:
> Hi,
> I come back with a rewritten approach for a problem in current ispell.el and
> flyspell.el when switching spellchecker in an emacs session.
> The problem is as follows, when in an emacs run aspell is used for the first
> time, ispell-dictionary-alist is filled with the aspell values, and if
> ispell-program-name is customized or changed to ispell during that emacs run
> it inherits the aspell values, thus failing if there was an aspell entry
> with the same name. Since ispell is still (rarely) needed for pseudo-encodings
> like [\'a -> á] I think this should not happen and all ispell values should
> be restored in such case. Also current behavior is too ispell/aspell
> centric, in case support for another spellchecker is ever added.
> In the proposed attached patches (ispell-maybe-find-aspell-dictionaries) is
> replaced by (more neutral) new (ispell-set-spellchecker-params) function.
> That function will check if spellchecker is changed and fill
> ``ispell-dictionary-alist'' with the appropriate values. As written it has
> support for info provided by distros. Patches are mostly as currently used
> in Debian, with some comments rewritten, and a naive check for [:alpha:]
> used (instead of just discarding that for xemacs as in Debian). Keeping
> those xemacs checks saves me a couple of patches, please leave them there if
> possible.
This is a good change, but there are a few minor issues with it:
- ispell-spellchecker-init-pre-hook is not documented. What are
distro-override-dicts-alist and distro-fallback-dicts-alist?
- (setq ispell-last-program-name ispell-program-name) should be done
right after checking if they're equal, not at the end of the function.
- (defvar ispell-aspell-dictionary-alist...) should be before the first
use of that variable.
BTW (this is unrelated to this patch, but I just noticed it while
looking at the code): why are ispell-dictionary-alist* autoloaded?
I just tried to remove the autoloads on them and I couldn't notice any
negative effect.
Stefan
next prev parent reply other threads:[~2008-04-15 18:40 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-04 12:02 ispell.el, flyspell.el: better ispell/aspell switching Agustin Martin
2008-04-15 18:00 ` Agustin Martin
2008-04-15 18:14 ` Lennart Borgman (gmail)
2008-04-15 18:40 ` Stefan Monnier [this message]
2008-04-15 18:47 ` Jason Rumney
2008-04-16 1:22 ` Stefan Monnier
2008-04-16 9:49 ` Agustin Martin
2008-04-16 15:21 ` Stefan Monnier
2008-04-17 17:56 ` Agustin Martin
2008-04-18 1:38 ` Stefan Monnier
2008-04-21 17:15 ` Agustin Martin
2008-04-23 20:40 ` Stefan Monnier
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=jwvd4or9dsj.fsf-monnier+emacs@gnu.org \
--to=monnier@iro.umontreal.ca \
--cc=emacs-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.