GNU bug report logs - #13973
thingatpt.el and end-of-sexp in python-mode

Previous Next

Package: emacs;

Reported by: Andreas Röhler <andreas.roehler <at> easy-emacs.de>

Date: Sat, 16 Mar 2013 07:53:02 UTC

Severity: minor

Full log


View this message in rfc822 format

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Andreas Röhler <andreas.roehler <at> easy-emacs.de>
Cc: 13973 <at> debbugs.gnu.org
Subject: bug#13973: Subject: 24.3; thingatpt.el, end-of-sexp
Date: Mon, 23 Aug 2021 03:09:27 +0200
Andreas Röhler <andreas.roehler <at> easy-emacs.de> writes:

> (defun end-of-sexp ()
>   "Move point to the end of the current sexp.
> \[This is an internal function.]"
>   (let ((char-syntax (char-syntax (char-after))))
>     (if (or (eq char-syntax ?\))
> 	    (and (eq char-syntax ?\") (in-string-p)))
> 	(forward-char 1)
>       (forward-sexp 1))))
>
> "or" asks if inside a string and calls (forward-char 1).
>
> This must fail with some probability with
> triple-quoted-strings as used in Python.
>
> Solution:
>
> When inside a string, jump to (nth 8 (syntax-ppss)) and
> call (forward-sexp 1) from there.

(I'm going through old bug reports that unfortunately weren't resolved
at the time.)

It's not quite clear to me what the actual problem here is.  Do you have
a test case where thingatpt does the wrong thing in Python mode?

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




This bug report was last modified 3 years and 40 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.