Package: dictionaries-common
Version: 1.20.4
Severity: normal

The following file contains two misspellings that are missed by "M-x
ispell-buffer" (in emacs24-24.3+1-2+b1).  To reproduce, start emacs with
"emacs -q -nw file.tex" and then "M-x ispell-buffer" and it'll report no
errors.

------- cut here ----------
% b/a.d
msucle
imaginging
------- cut here ----------

However, with the following slightly modified file, it does find the
errors:

------- cut here ----------
%   a.d
msucle
imaginging
------- cut here ----------

I ran both of them with "M-x ispell-buffer-with-debug", and am including
the diff between the respective *ispell-debug* buffers at the end of
this message.  The base file (first file in the diff) is the one that
works, and the second file is the one that fails.

The first diff is this line:

+ispell-region: First skip: /a.d at (pos,line,column): (4,1,3).

Thus, with the failing file, it spots a comment, skips over some stuff,
and then (as you can see later in the diff), keeps commenting out the
remaining lines.

With the working file, it doesn't spot the comment, and then finds the
spelling errors.  I think that's actually a second bug.  I put the point
at the beginning of the working file, and executed "(re-search-forward
(ispell-begin-skip-region-regexp)" and it did not match.  But it matched
using the failing file.  

I suspect that with the failing file, it (correctly) matches the
comment, and then incorrectly thinks that the rest of the file is
comments.  In the working file, it (incorrectly) fails to match, but
then does not conclude that the rest of the file is comments, so it
finds the spelling mistakes.

If I start emacs with "emacs -Q -nw", then the bug doesn't happen.  So,
it is a problem with the dictionaries-common version of ispell.el, in
comparison to the regular Emacs 24.3.1 version of ispell.el

I suspect the problem is in ispell-region() but cannot figure out where.

Despite the following information in
/usr/share/doc/dictionaries-common/README.emacs.gz

  Force disabling of dictionaries-common emacsen-stuff
  ----------------------------------------------------

  If you want to always use original {ispell,flyspell}.el instead of
  those provided by Debian dictionaries-common you should edit the
  file

  /etc/emacs/site-start.d/50dictionaries-common.el

  and add your flavor to the `skip-emacs-flavors-list' list.

I couldn't convince "emacs -q -nw" to load the generic ispell even after
I added "emacs24" to the "skip-emacs-flavors-list" list.  The startup
message showed that it was skipping the dictionaries-common stuff for my
flavor, but somehow it was still on the load path (and I cannot figure
out how).

-Sanjoy


diff -U0 simple-ok-ispell-buffer.log simple-ispell-debug-buffer.log
--- simple-ok-ispell-buffer.log 2013-12-30 15:57:21.434713562 -0500
+++ simple-ispell-debug-buffer.log      2013-12-30 15:53:41.630979165 -0500
@@ -30,0 +31 @@
+ispell-region: First skip: /a.d at (pos,line,column): (4,1,3).
@@ -32 +33 @@
-ispell-region: string pos (1->8), eol: 8, [in-comment]: [nil], [add-comment]: 
[nil], [string]: [^%   a.d
+ispell-region: string pos (1->4), eol: 8, [in-comment]: [nil], [add-comment]: 
[nil], [string]: [^% b
@@ -34,2 +35,2 @@
-ispell-region: string pos (8->8), eol: 15, [in-comment]: [nil], [add-comment]: 
[nil], [string]: [nil]
-ispell-region: string pos (9->15), eol: 15, [in-comment]: [nil], 
[add-comment]: [nil], [string]: [^msucle
+ispell-region: string pos (8->8), eol: 15, [in-comment]: [%], [add-comment]: 
[%], [string]: [nil]
+ispell-region: string pos (9->15), eol: 15, [in-comment]: [%], [add-comment]: 
[%], [string]: [^%msucle
@@ -37,2 +38,2 @@
-ispell-region: string pos (15->15), eol: 26, [in-comment]: [nil], 
[add-comment]: [nil], [string]: [nil]
-ispell-region: string pos (16->26), eol: 26, [in-comment]: [nil], 
[add-comment]: [nil], [string]: [^imaginging
+ispell-region: string pos (15->15), eol: 26, [in-comment]: [%], [add-comment]: 
[%], [string]: [nil]
+ispell-region: string pos (16->26), eol: 26, [in-comment]: [%], [add-comment]: 
[%], [string]: [^%imaginging
@@ -40 +41 @@
-ispell-region: string pos (26->26), eol: 27, [in-comment]: [nil], 
[add-comment]: [nil], [string]: [nil]
+ispell-region: string pos (26->26), eol: 27, [in-comment]: [%], [add-comment]: 
[%], [string]: [nil]



-- System Information:
Debian Release: jessie/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 3.11-2-686-pae (SMP w/2 CPU cores)
Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages dictionaries-common depends on:
ii  debconf [debconf-2.0]  1.5.52
ii  libtext-iconv-perl     1.7-5+b1

dictionaries-common recommends no packages.

Versions of packages dictionaries-common suggests:
ii  emacsen-common  2.0.5
ii  ispell          3.3.02-6
pn  jed-extra       <none>

-- debconf information:
* dictionaries-common/default-ispell: american (American English)
  dictionaries-common/remove_old_usr_dict_link: false
  dictionaries-common/default-wordlist: american (American English)
  dictionaries-common/invalid_debconf_value:
  dictionaries-common/move_old_usr_dict: true
  dictionaries-common/selecting_ispell_wordlist_default:
  dictionaries-common/ispell-autobuildhash-message:
  dictionaries-common/old_wordlist_link: true


-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to