From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Laurence Warne Newsgroups: gmane.emacs.bugs Subject: bug#56757: Python f-string font-lock logic is incomplete Date: Sat, 30 Jul 2022 15:58:00 +0100 Message-ID: References: <878roh5zoj.fsf@secretsauce.net> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="000000000000ddfd3205e506fec8" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="9729"; mail-complaints-to="usenet@ciao.gmane.io" To: 56757@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sat Jul 30 19:11:13 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oHpzc-0002Ib-8J for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 30 Jul 2022 19:11:12 +0200 Original-Received: from localhost ([::1]:36434 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oHpza-0007Fo-Nj for geb-bug-gnu-emacs@m.gmane-mx.org; Sat, 30 Jul 2022 13:11:10 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:38884) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oHpzS-0007FI-UB for bug-gnu-emacs@gnu.org; Sat, 30 Jul 2022 13:11:02 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:45946) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oHpzS-00017w-Lo for bug-gnu-emacs@gnu.org; Sat, 30 Jul 2022 13:11:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oHpzS-00047v-Hq for bug-gnu-emacs@gnu.org; Sat, 30 Jul 2022 13:11:02 -0400 X-Loop: help-debbugs@gnu.org In-Reply-To: <878roh5zoj.fsf@secretsauce.net> Resent-From: Laurence Warne Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 30 Jul 2022 17:11:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 56757 X-GNU-PR-Package: emacs Original-Received: via spool by 56757-submit@debbugs.gnu.org id=B56757.165920102215772 (code B ref 56757); Sat, 30 Jul 2022 17:11:02 +0000 Original-Received: (at 56757) by debbugs.gnu.org; 30 Jul 2022 17:10:22 +0000 Original-Received: from localhost ([127.0.0.1]:35688 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oHpyn-00046E-Dw for submit@debbugs.gnu.org; Sat, 30 Jul 2022 13:10:22 -0400 Original-Received: from mail-vk1-f174.google.com ([209.85.221.174]:43544) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oHnuz-0000I4-PR for 56757@debbugs.gnu.org; Sat, 30 Jul 2022 10:58:21 -0400 Original-Received: by mail-vk1-f174.google.com with SMTP id w129so3577539vkg.10 for <56757@debbugs.gnu.org>; Sat, 30 Jul 2022 07:58:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:from:date:message-id:subject:to; bh=i7gQkksPaRG5rn830ax8iUUSA0abgYkvXaptidaBjKU=; b=W4LDssLQX18SNJrAK1oQqhg9Hlw/A1bJsW26RF3+MojY+ilpt/gawpsNV72yl5M5L8 ++0qmYx4Ks54yIrzoa+y1zkQ5i0Gvl2KXCxBlJgyvZsJ+R+QrNCsUNbCi56HOn5RXnal LTlWMBjQKOj3fgtRQvFnLn1jvs/6wGhXAoUZcb5L341O/abteyaJ2eeftHvrWNvbOvTb /vyV3fGGVgaBsH2yxFaIsmpooCl7/yfW5+OxLF2NlNXaJQrnXCQm4dzminEw7HmlpmJ8 venZi3qySSGb3F3WTRiLAussgp5cZsXdd74V5R9pZMSX5wmN0BeV5jz4lpIfgSrC5eBX z/Ow== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=i7gQkksPaRG5rn830ax8iUUSA0abgYkvXaptidaBjKU=; b=YtIQiJr2V8vobde/s/IxrULEVcKidLLGoSmN92JHtSrwbV91x0Rp6ZaeO4l12hPwDN 8ckiQwpZbbQ3LrJ7kDBHv8JCjk/AcGW9A9i49r0KEheJU3W/zVsIp14UTje2mzimkckh za5JBgaQE7AzPfu0C9VKHaSd3/MqF0dfXGokNOQJqQfj0iti3p63aNK0GxEqYwNFUhp1 mu2WgT5fTUyBH403XhdO5dD2v4xgtMuVZN15t36ZDhgSsKiRsJ6otN0VcjXnSb+PcWM7 HCymgaUQpnI/RA45k3QZHrdHtiRafgO90dY8W9j3/FjmsbKrXlxil03eWDm/46GNpGS+ In0w== X-Gm-Message-State: ACgBeo0Egv2CPYKsDXb+/4ZxoZ5M98Bly39N5ANLEau32VFOLS6kPaaY vWBPEuQHn8iwYkVKEhoT9aC3J57NX5182HfnV2y3FmYuU/5nag== X-Google-Smtp-Source: AA6agR4cmOpeE473Ol8+w18rISSuoJXJcBXOHHt82LwtleQ3BB/68q6M0VpP0IXZRt+9niY7DgJLbdeGbtt2/8VQl5g= X-Received: by 2002:a1f:6142:0:b0:377:4b38:1156 with SMTP id v63-20020a1f6142000000b003774b381156mr375567vkb.28.1659193092069; Sat, 30 Jul 2022 07:58:12 -0700 (PDT) X-Mailman-Approved-At: Sat, 30 Jul 2022 13:10:21 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:238302 Archived-At: --000000000000ddfd3205e506fec8 Content-Type: multipart/alternative; boundary="000000000000ddfd2f05e506fec6" --000000000000ddfd2f05e506fec6 Content-Type: text/plain; charset="UTF-8" Hi, I've attached a patch which looks good to me locally using the above examples and others. In addition to the above, mixed capitalizations are also covered: https://docs.python.org/3/reference/lexical_analysis.html#string-and-bytes-literals . Thanks! --000000000000ddfd2f05e506fec6 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi, I've attached a patch which looks good to me = locally using the above examples and others.

I= n addition to the above, mixed capitalizations are also covered: https://docs.python.org/3/reference/lexical_analysis.html#string= -and-bytes-literals.

Thanks!
--000000000000ddfd2f05e506fec6-- --000000000000ddfd3205e506fec8 Content-Type: text/x-patch; charset="US-ASCII"; name="0001-Apply-syntax-highlighting-for-all-python-f-strings.patch" Content-Disposition: attachment; filename="0001-Apply-syntax-highlighting-for-all-python-f-strings.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_l680i9ay0 RnJvbSA5MzM1MDgxMTU2MTQyYmYwNmFiMGYxYjc3MTkyYmY0NDZmMWQ2YjNhIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBsV2FybmUgPGxhdXJlbmNld2FybmVAZ21haWwuY29tPgpEYXRl OiBTYXQsIDMwIEp1bCAyMDIyIDEzOjIyOjE4ICswMTAwClN1YmplY3Q6IFtQQVRDSF0gQXBwbHkg c3ludGF4IGhpZ2hsaWdodGluZyBmb3IgYWxsIHB5dGhvbiBmLXN0cmluZ3MKCkFwcGx5IHN5bnRh eCBoaWdobGlnaHRpbmcgdG8gYWxsIFB5dGhvbiBmb3JtYXR0ZWQgc3RyaW5nIGxpdGVyYWxzCihC dWcjNTY3NTcpLCBpbmNsdWRpbmcgbXVsdGlsaW5lIHN0cmluZ3MgYW5kIGZvcm1hdHRlZCBzdHJp bmdzIGFsc28KaGF2aW5nIHRoZSByYXcgc3RyaW5nIHByZWZpeCAoInIiKSBlaXRoZXIgZm9sbG93 aW5nIG9yIHByZWNlZGluZyAiZiIuCgoqIGxpc3AvcHJvZ21vZGVzL3B5dGhvbi5lbCAocHl0aG9u LS1mLXN0cmluZy1wLCBweXRob24tLWZvbnQtbG9jay1mLXN0cmluZ3MpOgpFZGl0IGZ1bmN0aW9u cyB0byB1c2UgYSByZWd1bGFyIGV4cHJlc3Npb24gbWF0Y2hpbmcgYWxsIGYtc3RyaW5ncy4KLS0t CiBsaXNwL3Byb2dtb2Rlcy9weXRob24uZWwgfCAxNyArKysrKysrKysrKysrKy0tLQogMSBmaWxl IGNoYW5nZWQsIDE0IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEv bGlzcC9wcm9nbW9kZXMvcHl0aG9uLmVsIGIvbGlzcC9wcm9nbW9kZXMvcHl0aG9uLmVsCmluZGV4 IGI4ZmM3ZDRjNTQuLjg3YTg0OWFhZjMgMTAwNjQ0Ci0tLSBhL2xpc3AvcHJvZ21vZGVzL3B5dGhv bi5lbAorKysgYi9saXNwL3Byb2dtb2Rlcy9weXRob24uZWwKQEAgLTQ5MywxMSArNDkzLDIyIEBA IHB5dGhvbi1mb250LWxvY2stc3ludGFjdGljLWZhY2UtZnVuY3Rpb24KICAgICAgICAgZm9udC1s b2NrLXN0cmluZy1mYWNlKQogICAgIGZvbnQtbG9jay1jb21tZW50LWZhY2UpKQogCisoZGVmY29u c3QgcHl0aG9uLS1mLXN0cmluZy1zdGFydC1yZWdleHAKKyAgKHJ4IGJvdworICAgICAgKG9yICJm IiAiRiIgImZyIiAiRnIiICJmUiIgIkZSIiAicmYiICJyRiIgIlJmIiAiUkYiKQorICAgICAgKG9y ICJcIiIgIlwiXCJcIiIgIiciICInJyciKSkKKyAgIkEgcmVndWxhciBleHByZXNzaW9uIG1hdGNo aW5nIHRoZSBiZWdpbm5pbmcgb2YgYW4gZi1zdHJpbmcuCisKK1NlZSBVUkwgYGh0dHBzOi8vZG9j cy5weXRob24ub3JnLzMvcmVmZXJlbmNlL2xleGljYWxfYW5hbHlzaXMuaHRtbCNzdHJpbmctYW5k LWJ5dGVzLWxpdGVyYWxzJy4iKQorCiAoZGVmdW4gcHl0aG9uLS1mLXN0cmluZy1wIChwcHNzKQog ICAiUmV0dXJuIG5vbi1uaWwgaWYgdGhlIHBvcyB3aGVyZSBQUFNTIHdhcyBmb3VuZCBpcyBpbnNp ZGUgYW4gZi1zdHJpbmcuIgogICAoYW5kIChudGggMyBwcHNzKQotICAgICAgIChsZXQgKChzcG9z ICgxLSAobnRoIDggcHBzcykpKSkKLSAgICAgICAgIChhbmQgKG1lbXEgKGNoYXItYWZ0ZXIgc3Bv cykgJyg/ZiA/RikpCisgICAgICAgKGxldCogKChzcG9zICgxLSAobnRoIDggcHBzcykpKQorICAg ICAgICAgICAgICAoYmVmb3JlLXF1b3RlCisgICAgICAgICAgICAgICAoYnVmZmVyLXN1YnN0cmlu Zy1uby1wcm9wZXJ0aWVzIChtYXggKC0gc3BvcyA0KSAocG9pbnQtbWluKSkKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1pbiAoKyBzcG9zIDIpIChwb2lu dC1tYXgpKSkpKQorICAgICAgICAgKGFuZCAoc3RyaW5nLW1hdGNoLXAgcHl0aG9uLS1mLXN0cmlu Zy1zdGFydC1yZWdleHAgYmVmb3JlLXF1b3RlKQogICAgICAgICAgICAgICAob3IgKDwgKHBvaW50 LW1pbikgc3BvcykKICAgICAgICAgICAgICAgICAgIChub3QgKG1lbXEgKGNoYXItc3ludGF4IChj aGFyLWJlZm9yZSBzcG9zKSkgJyg/dyA/XykpKSkpKSkpCiAKQEAgLTUxNiw3ICs1MjcsNyBAQCBw eXRob24tLWZvbnQtbG9jay1mLXN0cmluZ3MKICAgICAod2hpbGUKICAgICAgICAgKHByb2duCiAg ICAgICAgICAgKHdoaWxlIChhbmQgKG5vdCAocHl0aG9uLS1mLXN0cmluZy1wIHBwc3MpKQotICAg ICAgICAgICAgICAgICAgICAgIChyZS1zZWFyY2gtZm9yd2FyZCAiXFw8ZlsnXCJdIiBsaW1pdCAn bW92ZSkpCisgICAgICAgICAgICAgICAgICAgICAgKHJlLXNlYXJjaC1mb3J3YXJkIHB5dGhvbi0t Zi1zdHJpbmctc3RhcnQtcmVnZXhwIGxpbWl0ICdtb3ZlKSkKICAgICAgICAgICAgIChzZXRxIHBw c3MgKHN5bnRheC1wcHNzKSkpCiAgICAgICAgICAgKDwgKHBvaW50KSBsaW1pdCkpCiAgICAgICAo Y2wtYXNzZXJ0IChweXRob24tLWYtc3RyaW5nLXAgcHBzcykpCi0tIAoyLjMwLjIKCg== --000000000000ddfd3205e506fec8--