Subject: 24.3.50; Underscore in LaTeX comments can mess up ispell
From: Ivan Andrus <[email-masked]>
To: [email-masked]
Date: Mon, 28 Jan 2013 18:49:52 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Starting from emacs -Q add the following to a buffer and put it in
latex-mode (I checked both AUCTeX and the builtin latex-mode):

% Again, we ignore the actual values of $\zeta_{i}$.
It is clear that $Z(G)=\angles{c_{i}}\cong \mathbb{Z}_{p}^{2}$ and $G'=\angles{b_{i},c_{i}}$.
Missssspeelllllled.

Run ispell-buffer.  I have to do the following to get ispell to work on
my system:

(setq-default ispell-program-name "hunspell")
(setq ispell-dictionary "american")

You will notice that it tries to correct G', when it should not (since
it's in math mode).  It also ignores Missssspeelllllled.  It seems it's
getting math mode backwards.  However, if the first line is uncommented
then everything works correctly.

-Ivan

In GNU Emacs 24.3.50.19 (i386-apple-darwin12.2.0, NS apple-appkit-1187.34)
of 2013-01-25 on oroszlan.local
Bzr revision: 111607 [email-masked]
Windowing system distributor `Apple', version 10.3.1187
Configured using:
`configure --with-ns --no-create --no-recursion'

Important settings:
  value of $LC_CTYPE: UTF-8
  locale-coding-system: utf-8-unix
  default enable-multibyte-characters: t

Major mode: Fundamental

Minor modes in effect:
  shell-dirtrack-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  tool-bar-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
- b u f f e r SPC C-e <left> <left> C-t C-e C-x C-e 
q <C-left> <C-left> <C-left> <C-left> <C-right> M-t 
C-e C-x C-e M-x <up> <return> SPC SPC SPC SPC SPC SPC 
SPC SPC SPC <C-tab> C-x 0 C-x b * s <backspace> i <tab> 
<return> <C-up> <C-up> C-s - C-a C-s _ C-s C-s C-s 
C-s C-s C-s C-s C-s C-x 1 <help-echo> <wheel-down> 
<wheel-down> C-x 2 C-x b <return> <tool-bar> <kill-buffer> 
C-x b <return> <return> , , i <backspace> <backspace> 
<backspace> M-( i s p e l l - b u f f e r C-e C-x C-e 
SPC SPC SPC SPC SPC SPC SPC SPC SPC SPC <down> <down> 
<down> C-; C-a % SPC <C-up> <C-down> C-x C-e SPC SPC 
SPC SPC SPC SPC SPC SPC SPC SPC SPC <down> <down> <down> 
<down> C-k <up> <up> <down> C-y <up> C-a C-k C-k C-k 
<C-up> <C-up> C-y <return> <up> <return> <up> <up> 
<down> <down> <down> <return> <C-tab> <help-echo> <down-mouse-1> 
<mouse-1> <help-echo> <down-mouse-1> <mouse-1> C-x 
C-e <down> C-x C-e SPC <help-echo> <down-mouse-1> <mouse-1> 
d d d d d <down-mouse-1> <mouse-1> C-x C-e SPC SPC 
<C-tab> <down-mouse-1> <mouse-1> C-3 C-a <C-up> <C-up> 
<C-up> C-M-SPC <C-down> <C-down> <C-down> <C-down> 
C-w <C-backspace> <C-backspace> <C-backspace> <C-tab> 
<help-echo> <down-mouse-1> <mouse-1> C-x C-e SPC <help-echo> 
<wheel-up> <double-wheel-up> <wheel-down> <double-wheel-down> 
<triple-wheel-down> <wheel-up> <double-wheel-up> <triple-wheel-up> 
<triple-wheel-up> <wheel-down> <double-wheel-down> 
<triple-wheel-down> <triple-wheel-down> <triple-wheel-down> 
<triple-wheel-down> <triple-wheel-down> <triple-wheel-down> 
<wheel-up> <double-wheel-up> <triple-wheel-up> <triple-wheel-up> 
<wheel-down> <double-wheel-down> <triple-wheel-down> 
<triple-wheel-down> <triple-wheel-down> <triple-wheel-down> 
<down-mouse-1> <mouse-1> C-M-SPC <C-up> C-w <down> 
<down> <C-tab> C-x o C-x C-e SPC <C-tab> <down-mouse-1> 
<mouse-1> <wheel-down> <double-wheel-down> <triple-wheel-down> 
<wheel-down> <double-wheel-down> <triple-wheel-down> 
<triple-wheel-down> <wheel-up> <double-wheel-up> <triple-wheel-up> 
<triple-wheel-up> <triple-wheel-up> <triple-wheel-up> 
<triple-wheel-up> <triple-wheel-up> <down-mouse-1> 
<mouse-1> C-a <up> <up> <up> <C-right> <C-right> <C-right> 
<C-right> <C-right> <C-left> <left> <left> C-s C-w 
C-w C-s <C-tab> <C-tab> M-x r e p o <tab> r t <tab> 
<return>

Recent messages:
byte-code: Beginning of buffer [3 times]
byte-code: End of buffer [5 times]
Mark set
End of buffer [2 times]
Spell-checking *scratch* using hunspell with american dictionary...done
0
byte-code: End of buffer
byte-code: Beginning of buffer [3 times]
Mark saved where search started
Making completion list...

Load-path shadows:
None found.

Features:
(shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml
mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev
gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util
mail-prsvr mail-utils misearch multi-isearch debug help-mode easymenu
help-fns ispell tex-mode compile shell pcomplete comint ansi-color ring
time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel ns-win
tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment
lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar
mouse jit-lock font-lock syntax facemenu font-core frame cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev
minibuffer loaddefs button faces cus-face macroexp files text-properties
overlay sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process ns multi-tty
emacs)