* Adding % to `ispell-tex-arg-end'
@ 2016-07-09 9:02 Arash Esbati
2016-07-09 9:16 ` Eli Zaretskii
0 siblings, 1 reply; 3+ messages in thread
From: Arash Esbati @ 2016-07-09 9:02 UTC (permalink / raw)
To: emacs-devel
Hi all,
when I run Ispell over the following snippet, the second [htbp] is
matched by Ispell:
\begin{figure}
[htbp]
\caption{foo}
\end{figure}
\begin{figure}%
[htbp] % <== matched by Ispell
\caption{foo}
\end{figure}
It is due to the regexp in `ispell-tex-arg-end':
(defun ispell-tex-arg-end (&optional arg)
"Skip across ARG number of braces."
(condition-case nil
(progn
(while (looking-at "[ \t\n]*\\[") (forward-sexp))
(forward-sexp (or arg 1)))
(error
(message "Error skipping s-expressions at point %d." (point))
(beep)
(sit-for 2))))
Would it be possible to add "%" to this function?
(defun ispell-tex-arg-end (&optional arg)
"Skip across ARG number of braces."
(condition-case nil
(progn
(while (looking-at "[ \t\n%]*\\[") (forward-sexp))
(forward-sexp (or arg 1)))
(error
(message "Error skipping s-expressions at point %d." (point))
(beep)
(sit-for 2))))
I hope that nobody writes such LaTeX code, but Ispell should match valid
code here.
Best, Arash
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Adding % to `ispell-tex-arg-end'
2016-07-09 9:02 Adding % to `ispell-tex-arg-end' Arash Esbati
@ 2016-07-09 9:16 ` Eli Zaretskii
2016-07-09 9:43 ` Arash Esbati
0 siblings, 1 reply; 3+ messages in thread
From: Eli Zaretskii @ 2016-07-09 9:16 UTC (permalink / raw)
To: Arash Esbati; +Cc: emacs-devel
> From: Arash Esbati <esbati@gmx.de>
> Date: Sat, 09 Jul 2016 11:02:27 +0200
>
> when I run Ispell over the following snippet, the second [htbp] is
> matched by Ispell:
>
> \begin{figure}
> [htbp]
> \caption{foo}
> \end{figure}
>
> \begin{figure}%
> [htbp] % <== matched by Ispell
> \caption{foo}
> \end{figure}
>
> It is due to the regexp in `ispell-tex-arg-end':
>
> (defun ispell-tex-arg-end (&optional arg)
> "Skip across ARG number of braces."
> (condition-case nil
> (progn
> (while (looking-at "[ \t\n]*\\[") (forward-sexp))
> (forward-sexp (or arg 1)))
> (error
> (message "Error skipping s-expressions at point %d." (point))
> (beep)
> (sit-for 2))))
>
> Would it be possible to add "%" to this function?
>
> (defun ispell-tex-arg-end (&optional arg)
> "Skip across ARG number of braces."
> (condition-case nil
> (progn
> (while (looking-at "[ \t\n%]*\\[") (forward-sexp))
> (forward-sexp (or arg 1)))
> (error
> (message "Error skipping s-expressions at point %d." (point))
> (beep)
> (sit-for 2))))
Maybe I'm missing something, but this solution doesn't look right to
me, because if we do that, any mis-spelling in the comment after %
will be skipped. E.g., imagine this text:
\begin{figure}% mysspelled word
[htbp] % <== matched by Ispell
\caption{foo}
\end{figure}
We do want the "mysspelled" part highlighted, right? I think your
suggestion makes Ispell skip it.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Adding % to `ispell-tex-arg-end'
2016-07-09 9:16 ` Eli Zaretskii
@ 2016-07-09 9:43 ` Arash Esbati
0 siblings, 0 replies; 3+ messages in thread
From: Arash Esbati @ 2016-07-09 9:43 UTC (permalink / raw)
To: emacs-devel
Eli Zaretskii <eliz@gnu.org> writes:
>> From: Arash Esbati <esbati@gmx.de>
>> Date: Sat, 09 Jul 2016 11:02:27 +0200
>>
>> when I run Ispell over the following snippet, the second [htbp] is
>> matched by Ispell:
>>
>> \begin{figure}
>> [htbp]
>> \caption{foo}
>> \end{figure}
>>
>> \begin{figure}%
>> [htbp] % <== matched by Ispell
>> \caption{foo}
>> \end{figure}
>>
>> It is due to the regexp in `ispell-tex-arg-end':
>>
>> (defun ispell-tex-arg-end (&optional arg)
>> "Skip across ARG number of braces."
>> (condition-case nil
>> (progn
>> (while (looking-at "[ \t\n]*\\[") (forward-sexp))
>> (forward-sexp (or arg 1)))
>> (error
>> (message "Error skipping s-expressions at point %d." (point))
>> (beep)
>> (sit-for 2))))
>>
>> Would it be possible to add "%" to this function?
>>
>> (defun ispell-tex-arg-end (&optional arg)
>> "Skip across ARG number of braces."
>> (condition-case nil
>> (progn
>> (while (looking-at "[ \t\n%]*\\[") (forward-sexp))
>> (forward-sexp (or arg 1)))
>> (error
>> (message "Error skipping s-expressions at point %d." (point))
>> (beep)
>> (sit-for 2))))
>
> Maybe I'm missing something, but this solution doesn't look right to
> me, because if we do that, any mis-spelling in the comment after %
> will be skipped. E.g., imagine this text:
>
> \begin{figure}% mysspelled word
> [htbp] % <== matched by Ispell
> \caption{foo}
> \end{figure}
>
> We do want the "mysspelled" part highlighted, right? I think your
> suggestion makes Ispell skip it.
Hmm, my Ispell (Hunspell 1.4.1, Emacs 25.0.95.1) does not check comments
at all with `ispell-check-comments' set to t, e.g.:
% mysspelled word
is not matched. It does work when `ispell-check-comments' is set to
exclusive though. Will play more with it and create a new case.
Best, Arash
PS: Also my congratulations to your new role!
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-07-09 9:43 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-07-09 9:02 Adding % to `ispell-tex-arg-end' Arash Esbati
2016-07-09 9:16 ` Eli Zaretskii
2016-07-09 9:43 ` Arash Esbati
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).