From: "R. Diez" <rdiezmail-emacs@yahoo.de>
To: Help-gnu-emacs <help-gnu-emacs@gnu.org>
Subject: Flyspell difficult to configure, documentation not honest
Date: Thu, 12 Jul 2018 14:59:01 +0000 (UTC) [thread overview]
Message-ID: <974173872.5393015.1531407541695@mail.yahoo.com> (raw)
In-Reply-To: 974173872.5393015.1531407541695.ref@mail.yahoo.com
Hi there:
I have been trying to use Flyspell, and I found it difficult to configure.
You have to search the Internet in order to find good tips. After some time, I found this page, which summarises Flyspell's shortcomings:
http://ergoemacs.org/emacs/emacs_spell_checker_problems.html
Flyspell's documentation is made of a few source-code comments, and this page:
https://www.gnu.org/software/emacs/manual/html_node/emacs/Spelling.html
If the documentation were honest, it would mention those shortcomings itself, maybe as part of a CAVEATS section. Otherwise, you are lead to believe that Flyspell is fine and dandy, which clearly is not the case. After all, we are all used to 'proper' spell checkers all around us (for example, in LibreOffice).
I am using Emacs 26.1. The source code comments are outdated. For example:
;; Some user variables control the behavior of flyspell. They are
;; those defined under the `User variables' comment.
However, I found no "user variables" comment anywhere on that file.
Furthermore, this comment does not mention anything about literal strings being checked too (more on that further below):
;; To enable Flyspell in text representing computer programs, type
;; M-x flyspell-prog-mode.
;; In that mode only text inside comments is checked.
The first big gotcha was trying to set up automatic language detection, which should arguably be part of Flyspell. I would say that a sizeable part of the population has to handle languages other than English everyday. Who wants to manually switch dictionaries every time? After some struggling, I found and configured another package to achieve that.
I have a big text file with all my assorted notes (I haven't learnt Org Mode yet). I cannot spell-check all of it, that would turn up too many spurious errors.
I tried flyspell-region, and that is one of the biggest surprises: the spell check is performed just once, and is not updated as I type inside that region. Well, I can manually recheck, however inconvenient. But the biggest surprise is trying to remove the spelling marks at the end. After some searching, I found out about flyspell-delete-all-overlays and flyspell-delete-region-overlays, but alas, they are not marked as 'interactive'. I wonder how Flyspell thinks users should remove those marks (how to end the flyspell-region command).
I nevertheless tried to push forwards with Flyspell, because alternatives like Wcheck Mode or Speck did not seem quite ready yet. Next step was flyspell-prog-mode . And here I found the next big drawback: it checks literal strings too, even the filenames inside C's #include <blah/blah-h> preprocessor directives, littering too much source code with error marks.
Trying to limit spell checking to just source-code comments is hard. I found this page that explains how to do it:
http://blog.binchen.org/posts/effective-spell-check-in-emacs.html
But I haven't quite understood it yet (I am no Lisp expert). How about adding a simple customizable variable to turn literal string checking on and off?
To top it all, there is one little surprise in store: disabling flyspell-persistent-highlight renders flyspell-region useless.
The whole experience reminds me of the expression "death by a thousand paper cuts".
Please copy me on all the answers or comments, as I am not subscribed to this mailing list.
Thanks in advance,
rdiez
next parent reply other threads:[~2018-07-12 14:59 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <974173872.5393015.1531407541695.ref@mail.yahoo.com>
2018-07-12 14:59 ` R. Diez [this message]
2018-07-12 16:26 ` Flyspell difficult to configure, documentation not honest Eli Zaretskii
[not found] ` <mailman.3464.1531407559.1292.help-gnu-emacs@gnu.org>
2018-07-12 17:30 ` Emanuel Berg
2018-07-12 21:01 ` Brett Gilio
2018-07-13 7:15 ` Eli Zaretskii
2018-07-13 11:31 ` Gregor Zattler
2018-07-13 12:50 ` Devin Prater
2018-07-13 13:35 ` Teemu Likonen
[not found] ` <mailman.3518.1531488931.1292.help-gnu-emacs@gnu.org>
2018-07-13 14:42 ` Emanuel Berg
2018-07-13 7:41 ` Eric S Fraga
2018-07-13 17:08 ` Bob Newell
2018-07-14 8:58 ` Eric S Fraga
2018-07-14 9:15 ` tomas
2018-07-14 17:47 ` Bob Newell
2018-07-14 18:59 ` Devin Prater
2018-07-15 1:45 ` Brett Gilio
2018-07-15 2:42 ` Eli Zaretskii
[not found] ` <mailman.3502.1531467702.1292.help-gnu-emacs@gnu.org>
2018-07-13 10:22 ` Emanuel Berg
2018-07-13 17:04 ` Eric S Fraga
2018-07-13 19:02 ` Brett Gilio
2018-07-14 9:01 ` Eric S Fraga
[not found] ` <mailman.3536.1531501486.1292.help-gnu-emacs@gnu.org>
2018-07-13 18:41 ` Emanuel Berg
2018-07-13 19:06 ` Brett Gilio
2018-07-14 9:03 ` Eric S Fraga
2018-07-14 9:02 ` Eric S Fraga
[not found] <1186940967.5630978.1531432200575.ref@mail.yahoo.com>
2018-07-12 21:50 ` R. Diez
2018-07-13 6:35 ` Eli Zaretskii
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=974173872.5393015.1531407541695@mail.yahoo.com \
--to=rdiezmail-emacs@yahoo.de \
--cc=help-gnu-emacs@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.
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).