From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: "R. Diez" Newsgroups: gmane.emacs.help Subject: Flyspell difficult to configure, documentation not honest Date: Thu, 12 Jul 2018 14:59:01 +0000 (UTC) Message-ID: <974173872.5393015.1531407541695@mail.yahoo.com> References: <974173872.5393015.1531407541695.ref@mail.yahoo.com> Reply-To: "R. Diez" NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Trace: blaine.gmane.org 1531407464 8705 195.159.176.226 (12 Jul 2018 14:57:44 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Thu, 12 Jul 2018 14:57:44 +0000 (UTC) To: Help-gnu-emacs Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Thu Jul 12 16:57:40 2018 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1fdd2J-0002Ap-UH for geh-help-gnu-emacs@m.gmane.org; Thu, 12 Jul 2018 16:57:40 +0200 Original-Received: from localhost ([::1]:60620 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fdd4R-0003iW-33 for geh-help-gnu-emacs@m.gmane.org; Thu, 12 Jul 2018 10:59:51 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:56538) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fdd3s-0003hE-NZ for help-gnu-emacs@gnu.org; Thu, 12 Jul 2018 10:59:18 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fdd3o-0002lp-My for help-gnu-emacs@gnu.org; Thu, 12 Jul 2018 10:59:16 -0400 Original-Received: from sonic309-24.consmr.mail.ir2.yahoo.com ([77.238.179.82]:45623) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fdd3o-0002jk-Bw for help-gnu-emacs@gnu.org; Thu, 12 Jul 2018 10:59:12 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.de; s=s2048; t=1531407550; bh=p9hghqB3c6BKrBPQiZTQSM8Ilsvf1PzMIlDHqhZvBFU=; h=Date:From:Reply-To:To:Subject:References:From:Subject; b=DD3vkv5aozu12pgpCY9byti4YTsB2Etp3yDDqY6q8YYBdHTECCX+bkYR3Xx/ZZQ/MpFRijGAPXktL5R4H7r3/ZQ3fzd+/FHNWR4fpNJ1KtXGG/tKEOm34sO3ZrgxzDMBtRhNmD7dkgKxt0EMFvLlx8pHQSQfR0BhIpf5zDHqaumZD+vbiYFbSzoHXh53ufj7XCgwJIpgiLHF9XgrenwOV48x+QusrOZz9VpSGxsWcfv/z9OoO67y9SCNs6N3ij3FTDtBG+DOEDo3psm6lOxSisfu+4eS377SMQ0AvAxuMzza5Y7lBlEAUBZSyLt0nDMfglMLYvtx7F0GJ3NBYa1q9w== X-YMail-OSG: 2f98A1UVM1nNEDi8T9qELfuEPrTvdKMK5GV7f_rYcBVcACV8loSQKdjUgM0MYJ3 tc6qXO3yMitObrdYHBZDjHfgEIreVY7UK0QAegcX1HAEN8LJdQsMW4MWqOoc61o3CrjtF9BAt9PP QdJVHucWwT0E00ORthQ8.ZZcn.hd9Zcp6Zo_KlhWAONZZDeUmA4enS8Oh6p.1atUR3s2NgQnkZwG 31hVqgPCe6fmHQ79bFVeUFnAEcIXLBFQSfesW4woiFHJpXDIfxEFChy5wbknRAhUlt1CjT2XIq.K NO2Sr1cWf5uzwspOKNZPS8XIX1MlUcFqme29V2kK0UZTr3Sbf7GxcETzOnd26S24vF5NdhaazSdq oaNTqyTq2ZpICHtmK4NhNEIJQEWJIHfA.zlKqtKdtOFMgvAMSyHmPduTg_n1ZIryHbjbmBNEzmKy .VVjHXM_j9gzEqc8WDSKGQc3Rri2NL3ZeJfzDTa9hEK7_f0h4NJmNzHqk76LrEqVORx3.qcLnn2E RCkTaREIfS6jjZsVtE4wJRpJ49QZm26Wc2wEyShvZ3Jbe2_kUWtQbgpEa5EJiHU00bd27Ejf3qSl G9obH1UGp0jzCjUDzDmN4G.3kv8zFt6A.DIZBTT0SvsvtMmamsv0I8_8uaAXBsspJ6xlczR3u.bW X8ljwl5AzKEgQswHlof9CgQDfOT06dnDpgJDH42Wc.ufLwq.wFNeJGo2E3TNo3sGDM5FEfYBACfI bZJZxsvqGA8iESaXvVr4BZOj4Zt21xs4xgXzREcMm8Oui4D5W8RHHFWLTl3TWausK6vECAETVYfF Wc5Mgsa95B0FuRm4Amz8FssNOClfcfpnojklgJ8s70 Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic309.consmr.mail.ir2.yahoo.com with HTTP; Thu, 12 Jul 2018 14:59:10 +0000 X-Mailer: WebService/1.1.12062 YahooMailNeo Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:61.0) Gecko/20100101 Firefox/61.0 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x [fuzzy] X-Received-From: 77.238.179.82 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.org gmane.emacs.help:117411 Archived-At: 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 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