|
From: | GNU bug Tracking System |
Subject: | bug#67262: closed (python-ts-mode cannot identify triple-quoted-strings) |
Date: | Sun, 24 Dec 2023 03:11:02 +0000 |
Your message dated Sat, 23 Dec 2023 19:10:05 -0800 with message-id <50F7C069-4750-42E0-9B65-66CE31850C51@gmail.com> and subject line Re: bug#67262: python-ts-mode cannot identify triple-quoted-strings has caused the debbugs.gnu.org bug report #67262, regarding python-ts-mode cannot identify triple-quoted-strings to be marked as done. (If you believe you have received this mail in error, please contact help-debbugs@gnu.org.) -- 67262: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=67262 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems
--- Begin Message ---Subject: python-ts-mode cannot identify triple-quoted-strings Date: Sat, 18 Nov 2023 10:52:05 -0500
Inside this triple-quoted string, in a python buffer:a = """This is a test"""python-mode yields (python-info-triple-quoted-string-p)=t, whereas python-ts-mode gives nil, defeating the fancy doc string folding both modes implement.The reason seems to be that (syntax-ppss) returns something different in position 3 (which is "non-nil if inside a string”) between these modes:
- t for python-mode (which signals a triple quote)
- ?34=" in python-ts-mode
If you first load python-mode, then load python-ts-mode, the syntax parse becomes equal between the modes, and this bug vanishes.python.el v0.28, Emacs v29.1
--- End Message ---
--- Begin Message ---Subject: Re: bug#67262: python-ts-mode cannot identify triple-quoted-strings Date: Sat, 23 Dec 2023 19:10:05 -0800 > On Dec 23, 2023, at 4:45 PM, Dmitry Gutov <dmitry@gutov.dev> wrote: > > On 24/12/2023 01:51, Yuan Fu wrote: >> Something like this? IMHO the code is easier to understand without the >> syntax-propertize-rules. > > Sure, fine with me. > >> + (while (search-forward "\"\"\"" end t)+ (put-text-property >> (1- start) start > > I think we also should support the triple-single-quotes, like > python-syntax-propertize-function does. > >> + 'syntax-table (string-to-syntax "| ")) >> + (put-text-property end (min (1+ end) (point-max)) >> + 'syntax-table (string-to-syntax "| ")))))))) > > The spaces after "|" seem unnecessary. Thanks, fixed those things and pushed to emacs-29. Yuan
--- End Message ---
[Prev in Thread] | Current Thread | [Next in Thread] |