From: "Björn Lindqvist" <bjourne@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 67045@debbugs.gnu.org, Stefan Kangas <stefankangas@gmail.com>
Subject: bug#67045: No way to control location of .aspell.en.prepl from within Emacs
Date: Sat, 11 Nov 2023 17:39:00 +0100 [thread overview]
Message-ID: <CALG+76fiwY7QK1JtipSrbCuVGDSMjewRTmzi8vzpgaXbCHQJKw@mail.gmail.com> (raw)
In-Reply-To: <837cmoydx2.fsf@gnu.org>
I care little about what speller backend Emacs uses. I just want it to
follow the XDG (which I think it should do by default because dumping
dotfiles in ~/ is for neanderthals, but that's a different
story). Getting it to work was very difficult especially as I'm
often switching between languages. Here is part of my setup:
(defun set-language (code name)
(let* ((dir (expand-file-name "~/.config/aspell/"))
(pd (concat dir code ".pws"))
(rd (concat dir code ".prepl")))
(make-directory dir t)
(setq ispell-personal-dictionary pd)
(setq ispell-extra-args (list "--repl" rd)))
(ispell-change-dictionary code)
(flyspell-buffer)
(message (format "Switched to %s" name)))
(setq flyspell-issue-message-flag nil)
(add-hook 'text-mode-hook 'flyspell-mode)
(add-hook 'flyspell-mode-hook
(lambda ()
(set-language "en" "English")))
I also have keybindings setup to quickly restart aspell because having
one buffer spell-checked in one language and another buffer in a
different language is not supported. I would be happier if I could
write:
(setq ispell-personal-directory "~/.config/aspell")
and have ispell understand that it should dump all user configuration
files to that directory.
Den lör 11 nov. 2023 kl 07:58 skrev Eli Zaretskii <eliz@gnu.org>:
>
> > From: Björn Lindqvist <bjourne@gmail.com>
> > Date: Fri, 10 Nov 2023 22:33:17 +0100
> > Cc: 67045@debbugs.gnu.org
> >
> > > Can't you customize ispell-extra-args? In addition,
> > > ispell-dictionary-alist supports language-specific options, AFAIK.
> >
> > I didn't know about that variable and it's not in the manual afaics. I
> > managed to piece some elisp together using it to set the --repl
> > option. It works, though I don't think it is a very user-friendly
> > solution.
>
> Why do you consider it not a user-friendly solution? There's no limit
> to command-line options a speller can have, so it is not reasonable
> IMO to expect Emacs to have a separate variable for each one of them.
> Thus, our solution to have a single variable that can hold any
> additional options is a reasonable compromise.
>
> As for its discoverability: in general, when you are faced with a
> problem in some Emacs Lisp package, my advice is first to see whether
> a solution already exists by browsing all the defcustom's of that
> package (and its parent packages, if that is appropriate). One way of
> doing that is by using "M-x customize-group" bu giving it the group of
> the package.
>
> Stefan, WDYT?
--
mvh/best regards Björn Lindqvist
next prev parent reply other threads:[~2023-11-11 16:39 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-10 16:01 bug#67045: No way to control location of .aspell.en.prepl from within Emacs Björn Lindqvist
2023-11-10 16:49 ` Eli Zaretskii
2023-11-10 21:33 ` Björn Lindqvist
2023-11-11 6:58 ` Eli Zaretskii
2023-11-11 16:39 ` Björn Lindqvist [this message]
2023-12-24 20:10 ` Stefan Kangas
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CALG+76fiwY7QK1JtipSrbCuVGDSMjewRTmzi8vzpgaXbCHQJKw@mail.gmail.com \
--to=bjourne@gmail.com \
--cc=67045@debbugs.gnu.org \
--cc=eliz@gnu.org \
--cc=stefankangas@gmail.com \
/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 public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).