From unknown Thu Aug 14 17:28:18 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#75422 <75422@debbugs.gnu.org> To: bug#75422 <75422@debbugs.gnu.org> Subject: Status: 30.0.93; [PATCH] forward-sexp and backward-sexp jump outside of comments in tsx-ts-mode Reply-To: bug#75422 <75422@debbugs.gnu.org> Date: Fri, 15 Aug 2025 00:28:18 +0000 retitle 75422 30.0.93; [PATCH] forward-sexp and backward-sexp jump outside = of comments in tsx-ts-mode reassign 75422 emacs submitter 75422 Kohei Tsuruta severity 75422 normal tag 75422 patch thanks From debbugs-submit-bounces@debbugs.gnu.org Tue Jan 07 11:02:27 2025 Received: (at submit) by debbugs.gnu.org; 7 Jan 2025 16:02:27 +0000 Received: from localhost ([127.0.0.1]:44289 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tVC2E-0006xO-Ur for submit@debbugs.gnu.org; Tue, 07 Jan 2025 11:02:27 -0500 Received: from lists.gnu.org ([2001:470:142::17]:46628) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tVC2C-0006x1-EJ for submit@debbugs.gnu.org; Tue, 07 Jan 2025 11:02:25 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tVC20-0000Nw-UX for bug-gnu-emacs@gnu.org; Tue, 07 Jan 2025 11:02:14 -0500 Received: from mail-pl1-x62e.google.com ([2607:f8b0:4864:20::62e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tVC1y-0008OT-Q8 for bug-gnu-emacs@gnu.org; Tue, 07 Jan 2025 11:02:12 -0500 Received: by mail-pl1-x62e.google.com with SMTP id d9443c01a7336-21a1e6fd923so14729775ad.1 for ; Tue, 07 Jan 2025 08:02:07 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1736265725; x=1736870525; darn=gnu.org; h=mime-version:message-id:date:subject:to:from:from:to:cc:subject :date:message-id:reply-to; bh=IAnSBmQU7DOZp3R+Tb0L41ntWEP26Ym3fKaGSxyqnvU=; b=Qt/40hjXbILGSejpQGNAnFZrah2SP8krkP0t7DoMvZXkMT93RqyTgjy+AiJY6SAYTL chxn9MCpTR0mQi2RzzcP+8fZz9ErwQcILCfNXKv4koAw5oZeoIB9VUGn7yDxtCT9dITY v2Gc2TlBfjc8rt/14tVpeTT/z2yplEsRkGbkSFfBdhprGXF0mZkQ79BX6VnXzLLIovEb 4Nqad7LDq/NC6kf8/WDEm8kdgsTE5wnotvDb6F85PXcfmyh4QzzslMg6FNrF7/LtL6sX 3agzoW5obO4UuRJoaMvfGjaY3zP2MucuT2AZOuNGhK2qP7hBsD8nB/lnAon+SDT/yVgr nRnQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736265725; x=1736870525; h=mime-version:message-id:date:subject:to:from:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=IAnSBmQU7DOZp3R+Tb0L41ntWEP26Ym3fKaGSxyqnvU=; b=WsiZgOfbu8Y7pkzbrp1y1VMTh6Ojg8lyl0KkwOoKbdI8ezJQf71eCW293bTUjR0b/x WZkxdzcetUP7GcVX51cRgR+IhuJcGnVxGMoLPCCBT8Pp2kHX8DgzhIGLtB4wdagqCi9I vpqo4PyOQzuAVHqHV/IlQmcHW6q1bVPfr7c5oi4LUcK2IpKP+FehuAKUqedf53aElpIY +FO0kOo8o3y8mkHmdnxanYljOI4LBnRCYHIUw9PbByHXmov5HIzi8cUiVgvRlnsjFmW+ 3bXgMLhY3IvE7Tlg9dr/udz0+areQc5ZFlxxOE+2koRmOpBO24O/tvwZuId08WWEEG4t 45QA== X-Gm-Message-State: AOJu0YzcnbaIObXe3fPKDO6PvHtMJP1jGvapgzwhDwDbYSNsH+HHG3ZX p/cd5cpe9xDI2EHlerGzvSi9WC3SKVGiYvONnIDB/Tt6UtIqxkKv6ONqtQ== X-Gm-Gg: ASbGncsDzvrsEPOfogodClIwhVVNT3E1MptfH39wLufh+wkFkVU3/pwNgbxapV5YTg8 AyJFe1fB+jv9Rc7tmkz6Cd1ahGKF/CPT8+ZCSd7GARn5j1Bmb+P6GbX+jzHVByTlPPw6fmfP5mk syfK73MhFl5xQE/mf5yyj4qMYcY5jFc8vEo7lXIeKdLxmNeGBcqh/rWU3UdA7CFcViKWji2716s oAGIf8AS/pvd1ckh7/I2gmpGqX18EAFzsGZxSdc7lmw7PbHm8DnS7rrdNi8ows= X-Google-Smtp-Source: AGHT+IHxQqYhbXB3g+7E7hwUeDnTkadWF2hxRvYlkK7Y1HNGk93VAnhkuzRyDpYCP9A/sLKW6U8Yrg== X-Received: by 2002:a17:902:f548:b0:216:48dd:d15c with SMTP id d9443c01a7336-219e6ebd135mr681488615ad.27.1736265725221; Tue, 07 Jan 2025 08:02:05 -0800 (PST) Received: from localhost ([2a02:6ea0:e60c:5003:5f7:d06a:894:4b56]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-219dc96294bsm311997735ad.36.2025.01.07.08.02.03 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Jan 2025 08:02:04 -0800 (PST) From: Kohei Tsuruta To: bug-gnu-emacs@gnu.org Subject: 30.0.93; [PATCH] forward-sexp and backward-sexp jump outside of comments in tsx-ts-mode X-Debbugs-Cc: Date: Tue, 07 Jan 2025 08:02:02 -0800 Message-ID: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=2607:f8b0:4864:20::62e; envelope-from=seventhepg@gmail.com; helo=mail-pl1-x62e.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) --=-=-= Content-Type: text/plain Steps to reproduce - emacs -Q test.tsx - (tsx-ts-mode) - Move point at the end of the comment at line 3 - (backward-sexp) The expected point position after (backward-sexp) is "treesit-thing-|settings" or at least stay inside of the comment line, however, point moves to the beginning of "Hello". Likewise, if you C-x C-e at the end of the comment line, it evaluates "Hello". --- test.tsx (| is point) --- export const App = () => { const greeting = "Hello" // treesit-thing-settings| return <>{greeting} } --- END test.tsx --- It happens because tsx-ts-mode doesn't recognize comments. In typescript-ts-base-mode, treesit-thing-settings is set to have "text" as a thing for typescript but it's missing in tsx-ts-mode when it's set for tsx. --=-=-= Content-Type: text/x-patch Content-Disposition: attachment; filename=0001-Add-text-as-a-thing-in-tsx-ts-mode.patch >From d1c5aa45213e4011dfb641edb0d064e5d02e370d Mon Sep 17 00:00:00 2001 From: Kohei Tsuruta Date: Tue, 7 Jan 2025 07:36:14 -0800 Subject: [PATCH] Add "text" as a thing in tsx-ts-mode * lisp/progmodes/typescript-ts-mode.el (tsx-ts-mode): Add definition of "text" --- lisp/progmodes/typescript-ts-mode.el | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lisp/progmodes/typescript-ts-mode.el b/lisp/progmodes/typescript-ts-mode.el index 4a38d1da596..0ffcb144771 100644 --- a/lisp/progmodes/typescript-ts-mode.el +++ b/lisp/progmodes/typescript-ts-mode.el @@ -564,7 +564,9 @@ tsx-ts-mode (sentence ,(regexp-opt (append typescript-ts-mode--sentence-nodes '("jsx_element" - "jsx_self_closing_element"))))))) + "jsx_self_closing_element")))) + (text ,(regexp-opt '("comment" + "template_string")))))) ;; Font-lock. (setq-local treesit-font-lock-settings -- 2.39.5 (Apple Git-154) --=-=-= Content-Type: text/plain In GNU Emacs 30.0.93 (build 3, aarch64-apple-darwin24.1.0, NS appkit-2575.20 Version 15.1.1 (Build 24B91)) of 2025-01-05 built on mac.lan Repository revision: 505c1123e18a8a710fc60e05a4c870497bf580f4 Repository branch: emacs-30 System Description: macOS 15.1.1 Configured using: 'configure --with-native-compilation --disable-ns-self-contained --with-tree-sitter' Configured features: ACL GNUTLS LIBXML2 MODULES NATIVE_COMP NOTIFY KQUEUE NS PDUMPER SQLITE3 THREADS TOOLKIT_SCROLL_BARS TREE_SITTER ZLIB Important settings: value of $LANG: en_US.UTF-8 locale-coding-system: utf-8-unix Major mode: ELisp/l Minor modes in effect: bug-reference-prog-mode: t paredit-mode: t rainbow-delimiters-mode: t whitespace-mode: t which-function-mode: t corfu-terminal-mode: t corfu-history-mode: t global-corfu-mode: t corfu-mode: t marginalia-mode: t vertico-mode: t savehist-mode: t recentf-mode: t winner-mode: t repeat-mode: t save-place-mode: t delete-selection-mode: t electric-pair-mode: t minibuffer-depth-indicate-mode: t override-global-mode: t tooltip-mode: t global-eldoc-mode: t eldoc-mode: t show-paren-mode: t electric-indent-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t minibuffer-regexp-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t Load-path shadows: None found. Features: (shadow sort emacsbug mail-extr ispell log-edit message sendmail yank-media puny dired dired-loaddefs rfc822 mml mml-sec epa derived epg rfc6068 epg-config gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 mm-util ietf-drums mail-prsvr mailabbrev mail-utils gmm-utils mailheader pcvs-util vc consult-imenu help-fns radix-tree cl-print debug backtrace find-func dabbrev vertico-directory c++-ts-mode c-ts-mode js c-ts-common treesit cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs time-date misearch multi-isearch vc-git diff-mode track-changes vc-dispatcher bug-reference descr-text grep embark-consult embark ffap texinfo texinfo-loaddefs files-x consult bookmark pp add-log term/xterm xterm paredit cape rainbow-delimiters disp-table whitespace merge-n-save flymake project compile text-property-search comint ansi-osc ansi-color thingatpt which-func imenu corfu-terminal popon corfu-history corfu orderless marginalia vertico compat savehist recentf tree-widget wid-edit winner ring repeat saveplace delsel elec-pair finder-inf solarized-light-theme solarized-theme solarized solarized-faces color edmacro kmacro mb-depth delight comp comp-cstr warnings comp-run comp-common rx cl-extra help-mode use-package use-package-ensure use-package-delight use-package-diminish use-package-bind-key bind-key easy-mmode use-package-core avy-autoloads cape-autoloads corfu-terminal-autoloads corfu-autoloads delight-autoloads dumb-jump-autoloads dash-autoloads embark-consult-autoloads consult-autoloads embark-autoloads exec-path-from-shell-autoloads expand-region-autoloads marginalia-autoloads markdown-mode-autoloads info orderless-autoloads paredit-autoloads popon-autoloads popup-autoloads rainbow-delimiters-autoloads s-autoloads solarized-theme-autoloads vertico-autoloads package browse-url url url-proxy url-privacy url-expand url-methods url-history url-cookie generate-lisp-file url-domsuf url-util mailcap url-handlers url-parse auth-source cl-seq eieio eieio-core cl-macs icons password-cache json subr-x map byte-opt gv bytecomp byte-compile url-vars cl-loaddefs cl-lib rmc iso-transl tooltip cconv eldoc paren electric uniquify ediff-hook vc-hooks lisp-float-type elisp-mode mwheel term/ns-win ns-win ucs-normalize mule-util term/common-win tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode lisp-mode prog-mode register page tab-bar menu-bar rfn-eshadow isearch easymenu timer select scroll-bar mouse jit-lock font-lock syntax font-core term/tty-colors frame minibuffer nadvice seq simple cl-generic indonesian philippine cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite emoji-zwj charscript charprop case-table epa-hook jka-cmpr-hook help abbrev obarray oclosure cl-preloaded button loaddefs theme-loaddefs faces cus-face macroexp files window text-properties overlay sha1 md5 base64 format env code-pages mule custom widget keymap hashtable-print-readable backquote threads kqueue cocoa ns multi-tty make-network-process native-compile emacs) Memory information: ((conses 16 334937 64735) (symbols 48 32870 14) (strings 32 126791 4029) (string-bytes 1 4022076) (vectors 16 34459) (vector-slots 8 436900 32986) (floats 8 362 7583) (intervals 56 3954 480) (buffers 992 27)) --=-=-=-- From debbugs-submit-bounces@debbugs.gnu.org Tue Jan 07 12:47:07 2025 Received: (at 75422) by debbugs.gnu.org; 7 Jan 2025 17:47:07 +0000 Received: from localhost ([127.0.0.1]:44489 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tVDfX-0003yC-7C for submit@debbugs.gnu.org; Tue, 07 Jan 2025 12:47:07 -0500 Received: from relay3-d.mail.gandi.net ([2001:4b98:dc4:8::223]:47011) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tVDfV-0003xb-9O for 75422@debbugs.gnu.org; Tue, 07 Jan 2025 12:47:06 -0500 Received: by mail.gandi.net (Postfix) with ESMTPSA id C7D4760003; Tue, 7 Jan 2025 17:46:56 +0000 (UTC) From: Juri Linkov To: Kohei Tsuruta Subject: Re: bug#75422: 30.0.93; [PATCH] forward-sexp and backward-sexp jump outside of comments in tsx-ts-mode In-Reply-To: (Kohei Tsuruta's message of "Tue, 07 Jan 2025 08:02:02 -0800") Organization: LINKOV.NET References: Date: Tue, 07 Jan 2025 19:44:27 +0200 Message-ID: <87ldvmjz7o.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain X-GND-Sasl: juri@linkov.net X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 75422 Cc: Yuan Fu , 75422@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) > Steps to reproduce > - emacs -Q test.tsx > - (tsx-ts-mode) > - Move point at the end of the comment at line 3 > - (backward-sexp) > > The expected point position after (backward-sexp) is "treesit-thing-|settings" > or at least stay inside of the comment line, however, point moves to the > beginning of "Hello". > Likewise, if you C-x C-e at the end of the comment line, it evaluates "Hello". > > --- test.tsx (| is point) --- > export const App = () => { > const greeting = "Hello" > // treesit-thing-settings| > return <>{greeting} > } > --- END test.tsx --- > > It happens because tsx-ts-mode doesn't recognize comments. In > typescript-ts-base-mode, treesit-thing-settings is set to have "text" as > a thing for typescript but it's missing in tsx-ts-mode when it's set for > tsx. Thanks for the report. This is fixed in Emacs 31. However, maybe Yuan will agree to add this small fix to Emacs 30? > diff --git a/lisp/progmodes/typescript-ts-mode.el b/lisp/progmodes/typescript-ts-mode.el > index 4a38d1da596..0ffcb144771 100644 > --- a/lisp/progmodes/typescript-ts-mode.el > +++ b/lisp/progmodes/typescript-ts-mode.el > @@ -564,7 +564,9 @@ tsx-ts-mode > (sentence ,(regexp-opt > (append typescript-ts-mode--sentence-nodes > '("jsx_element" > - "jsx_self_closing_element"))))))) > + "jsx_self_closing_element")))) > + (text ,(regexp-opt '("comment" > + "template_string")))))) From debbugs-submit-bounces@debbugs.gnu.org Tue Jan 07 21:29:47 2025 Received: (at 75422) by debbugs.gnu.org; 8 Jan 2025 02:29:47 +0000 Received: from localhost ([127.0.0.1]:45390 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tVLpK-0006NF-Pq for submit@debbugs.gnu.org; Tue, 07 Jan 2025 21:29:47 -0500 Received: from mail-pj1-x1034.google.com ([2607:f8b0:4864:20::1034]:54420) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.84_2) (envelope-from ) id 1tVLpH-0006My-KM for 75422@debbugs.gnu.org; Tue, 07 Jan 2025 21:29:44 -0500 Received: by mail-pj1-x1034.google.com with SMTP id 98e67ed59e1d1-2f43d17b0e3so24260130a91.0 for <75422@debbugs.gnu.org>; Tue, 07 Jan 2025 18:29:43 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1736303377; x=1736908177; darn=debbugs.gnu.org; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=NIvL41o5VPg+68DWttt6lgEMAPj/X0f5bYx9lSgrYZc=; b=ko2vsjBo+JkR9Aqet+iAD6hO1t81JkgbZCwTthpVOuJrS1lQPYHp0uNfbUYxaxtCJT bn19rzU2HDLB0w1QX3oHN8elqD5uEoWXztJ2Wv6xcb739bZ3b9MiBzld1R3xkF9NoFzY vkq6wFvEKc8o1Ek5uJ1eU26gQpRaEwC67XcPObK5PCLRweEyLtTyMBrypcnRwFX0J9lq 9L5kkl7gh1J8x1jIjzXKLe9r6uuEhKljkNZekAVOEQC/6g2Dqxot+BA3JoPhZNuUsJcr ZS/lCeE/TYzAkKUDv2i+k4VmoThp87Ufxga2godxFplMrOm6P+R/LyBK2VG6tsOmeecx ntvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736303377; x=1736908177; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=NIvL41o5VPg+68DWttt6lgEMAPj/X0f5bYx9lSgrYZc=; b=Dy6JYc8NK0PW0THdtp/1snMulz3lia4vsuDk8N62/kn8pWyMd3nsBSNO1SEmZ0JPVt ZO4QD7Ac93bA645/r4tacHOgnFQW/jCPSltNdfEKMwCRk1LuANzCEQM8XJVS3OEQV/Ge F2PLPuAtYmjNQvs42Pu/7P8XpCWz42gGUUO4Mh8cjNX7nlwYwB4i+2KgTmJqBHzKSqQr Xp/7ZbJs3dN5eFK4TIAiFhgeUFJuqg2g06b3bonH7LxE97BKltsC4L6G+tuaRZf3T92W p6W/Lvsx6vXr9YuP/oakAGX0jS5NvUXv4xEM5cAf6WuhGLAp6aLakG42e/OVUtzVycNm 5R/w== X-Forwarded-Encrypted: i=1; AJvYcCXmxZksSy9IHfbjopLLGI8vj1tYb3gejxwVQtGMNJA5aBBO6/BN/W1BvQgxi8lCRdLBnSvEyg==@debbugs.gnu.org X-Gm-Message-State: AOJu0YyPhmEy09rFkUfBpiB4hZFGwfK1fZ0XKKgXu9jWMWOjGgoM9Uqs 24swnSuINcR6FRClYvjVhAH3sWGC5RrTMdddMF5XY2HS/3LvRpQa X-Gm-Gg: ASbGncvhKN7pAG+l+0Y5i+MD6AT7t9cs41YsAF1kq03bB17vs/9LauB4NSnpUy/1gRh qzfDThgwKdYNalamIIHP6HlJvOkurJMJmgRMOdn+qFVzncvQc6G2n4heZIaNX6xKqqWJviBmiiR kZ0fP+ZjJu9Dcf5n310amkqKlPOuBTOAxNw1T3cj8zxGr1D8t8nAljtfkUaxKSwtSOTvF6rvbya JCHYru0q5P4uyfXcGOOP1bOwRN/45TWpYfAXaR4SONX3ZzT9MPPXzBDoUpAMR19Z7pGxX0evs6w Yc+y X-Google-Smtp-Source: AGHT+IEFpaaM911gHa8CpIzfnYg4BpgO2Ou1yJ7NqqAxFg6Yb+ZXQThQziu/QJkXshsjzaVsExiw1Q== X-Received: by 2002:a17:90b:5686:b0:2ee:df70:1ff3 with SMTP id 98e67ed59e1d1-2f548e4d0a7mr1972899a91.0.1736303377419; Tue, 07 Jan 2025 18:29:37 -0800 (PST) Received: from smtpclient.apple ([2601:646:8f81:6120:715c:1de9:341d:f41d]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2f54a2ab6bfsm289315a91.24.2025.01.07.18.29.36 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 07 Jan 2025 18:29:36 -0800 (PST) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3776.700.51\)) Subject: Re: bug#75422: 30.0.93; [PATCH] forward-sexp and backward-sexp jump outside of comments in tsx-ts-mode From: Yuan Fu In-Reply-To: <87ldvmjz7o.fsf@mail.linkov.net> Date: Tue, 7 Jan 2025 18:29:25 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: <07F33B09-D0C4-4C6A-8F80-10E2173D92FF@gmail.com> References: <87ldvmjz7o.fsf@mail.linkov.net> To: Juri Linkov X-Mailer: Apple Mail (2.3776.700.51) X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 75422 Cc: Kohei Tsuruta , Eli Zaretskii , 75422@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) > On Jan 7, 2025, at 9:44=E2=80=AFAM, Juri Linkov = wrote: >=20 >> Steps to reproduce >> - emacs -Q test.tsx >> - (tsx-ts-mode) >> - Move point at the end of the comment at line 3 >> - (backward-sexp) >>=20 >> The expected point position after (backward-sexp) is = "treesit-thing-|settings" >> or at least stay inside of the comment line, however, point moves to = the >> beginning of "Hello". >> Likewise, if you C-x C-e at the end of the comment line, it evaluates = "Hello". >>=20 >> --- test.tsx (| is point) --- >> export const App =3D () =3D> { >> const greeting =3D "Hello" >> // treesit-thing-settings| >> return <>{greeting} >> } >> --- END test.tsx --- >>=20 >> It happens because tsx-ts-mode doesn't recognize comments. In >> typescript-ts-base-mode, treesit-thing-settings is set to have "text" = as >> a thing for typescript but it's missing in tsx-ts-mode when it's set = for >> tsx. >=20 > Thanks for the report. This is fixed in Emacs 31. >=20 > However, maybe Yuan will agree to add this small fix to Emacs 30? >=20 >> diff --git a/lisp/progmodes/typescript-ts-mode.el = b/lisp/progmodes/typescript-ts-mode.el >> index 4a38d1da596..0ffcb144771 100644 >> --- a/lisp/progmodes/typescript-ts-mode.el >> +++ b/lisp/progmodes/typescript-ts-mode.el >> @@ -564,7 +564,9 @@ tsx-ts-mode >> (sentence ,(regexp-opt >> (append = typescript-ts-mode--sentence-nodes >> '("jsx_element" >> - = "jsx_self_closing_element"))))))) >> + = "jsx_self_closing_element")))) >> + (text ,(regexp-opt '("comment" >> + "template_string")))))) I think it=E2=80=99s fine. Though it=E2=80=99s for Eli to decide. Yuan= From debbugs-submit-bounces@debbugs.gnu.org Wed Jan 08 02:45:39 2025 Received: (at 75422) by debbugs.gnu.org; 8 Jan 2025 07:45:39 +0000 Received: from localhost ([127.0.0.1]:45842 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tVQl1-0003og-J9 for submit@debbugs.gnu.org; Wed, 08 Jan 2025 02:45:39 -0500 Received: from relay6-d.mail.gandi.net ([217.70.183.198]:56769) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tVQl0-0003oO-5e for 75422@debbugs.gnu.org; Wed, 08 Jan 2025 02:45:38 -0500 Received: by mail.gandi.net (Postfix) with ESMTPSA id 69CEDC0003; Wed, 8 Jan 2025 07:45:30 +0000 (UTC) From: Juri Linkov To: Yuan Fu Subject: Re: bug#75422: 30.0.93; [PATCH] forward-sexp and backward-sexp jump outside of comments in tsx-ts-mode In-Reply-To: <07F33B09-D0C4-4C6A-8F80-10E2173D92FF@gmail.com> (Yuan Fu's message of "Tue, 7 Jan 2025 18:29:25 -0800") Organization: LINKOV.NET References: <87ldvmjz7o.fsf@mail.linkov.net> <07F33B09-D0C4-4C6A-8F80-10E2173D92FF@gmail.com> Date: Wed, 08 Jan 2025 09:44:48 +0200 Message-ID: <87frltlpfz.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-GND-Sasl: juri@linkov.net X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 75422 Cc: Kohei Tsuruta , Eli Zaretskii , 75422@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) >>> diff --git a/lisp/progmodes/typescript-ts-mode.el b/lisp/progmodes/typescript-ts-mode.el >>> index 4a38d1da596..0ffcb144771 100644 >>> --- a/lisp/progmodes/typescript-ts-mode.el >>> +++ b/lisp/progmodes/typescript-ts-mode.el >>> @@ -564,7 +564,9 @@ tsx-ts-mode >>> (sentence ,(regexp-opt >>> (append typescript-ts-mode--sentence-nodes >>> '("jsx_element" >>> - "jsx_self_closing_element"))))))) >>> + "jsx_self_closing_element")))) >>> + (text ,(regexp-opt '("comment" >>> + "template_string")))))) > > I think it’s fine. Though it’s for Eli to decide. Eli, is it ok to push this patch to emacs-30? It fills the omission that the thing 'text' is defined only for 'typescript', but not for its counterpart 'tsx'. BTW, in master we need to clean up typescript-ts-base-mode that defines only 'typescript', but not 'tsx', i.e. we need to create better inheritance for 'treesit-thing-settings'. From debbugs-submit-bounces@debbugs.gnu.org Wed Jan 08 08:12:49 2025 Received: (at 75422) by debbugs.gnu.org; 8 Jan 2025 13:12:49 +0000 Received: from localhost ([127.0.0.1]:46426 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tVVrc-0002A2-Qu for submit@debbugs.gnu.org; Wed, 08 Jan 2025 08:12:49 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:54624) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tVVra-00029o-Mr for 75422@debbugs.gnu.org; Wed, 08 Jan 2025 08:12:47 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tVVrU-0005f4-KK; Wed, 08 Jan 2025 08:12:40 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=HRxzeMGLgGNLfeThpgiOEJfnn+upC7J16eYa0sEBpM8=; b=bxOBwnRC2/DqEPsCJiH8 AD/8z6MeYH/MhJLB0RJRYSvo1D/ijyWglRN4vddgz6ws0YyQFfUXSG3afuj/C96SnspLRVf7BKyA5 La6KZzZdXPDGRUhv1uRuSAFPXUuBJAeBev5A+1XIJu8546IrASIhPwlJ0vmvPd3lHZpNyQxMxiMfu knhnsRVCYPi1tbgHnVbEdloc2jtwVPTJdVxaEprSVbGQiuHNpzBcXIjYLUDHEJArArC36wwk8BErV zCCXcer6f+qdJwFlfBTQtTGphicTMde92cZ3QyY2PkNu3erPLz38S5glNtFpVcdSUOQ0Rz2rxnRV0 Myps7mqoqPy+qw==; Date: Wed, 08 Jan 2025 15:12:32 +0200 Message-Id: <861pxd4fgf.fsf@gnu.org> From: Eli Zaretskii To: Juri Linkov In-Reply-To: <87frltlpfz.fsf@mail.linkov.net> (message from Juri Linkov on Wed, 08 Jan 2025 09:44:48 +0200) Subject: Re: bug#75422: 30.0.93; [PATCH] forward-sexp and backward-sexp jump outside of comments in tsx-ts-mode References: <87ldvmjz7o.fsf@mail.linkov.net> <07F33B09-D0C4-4C6A-8F80-10E2173D92FF@gmail.com> <87frltlpfz.fsf@mail.linkov.net> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 75422 Cc: seventhepg@gmail.com, casouri@gmail.com, 75422@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.3 (---) > From: Juri Linkov > Cc: Kohei Tsuruta , 75422@debbugs.gnu.org, Eli > Zaretskii > Date: Wed, 08 Jan 2025 09:44:48 +0200 > > >>> --- a/lisp/progmodes/typescript-ts-mode.el > >>> +++ b/lisp/progmodes/typescript-ts-mode.el > >>> @@ -564,7 +564,9 @@ tsx-ts-mode > >>> (sentence ,(regexp-opt > >>> (append typescript-ts-mode--sentence-nodes > >>> '("jsx_element" > >>> - "jsx_self_closing_element"))))))) > >>> + "jsx_self_closing_element")))) > >>> + (text ,(regexp-opt '("comment" > >>> + "template_string")))))) > > > > I think it’s fine. Though it’s for Eli to decide. > > Eli, is it ok to push this patch to emacs-30? Yes, thanks. From debbugs-submit-bounces@debbugs.gnu.org Thu Jan 09 02:52:00 2025 Received: (at 75422) by debbugs.gnu.org; 9 Jan 2025 07:52:00 +0000 Received: from localhost ([127.0.0.1]:50287 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tVnKi-00089m-Gd for submit@debbugs.gnu.org; Thu, 09 Jan 2025 02:52:00 -0500 Received: from relay7-d.mail.gandi.net ([217.70.183.200]:41029) by debbugs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1tVnKf-00089K-TS; Thu, 09 Jan 2025 02:51:59 -0500 Received: by mail.gandi.net (Postfix) with ESMTPSA id 92DE120005; Thu, 9 Jan 2025 07:51:44 +0000 (UTC) From: Juri Linkov To: Eli Zaretskii Subject: Re: bug#75422: 30.0.93; [PATCH] forward-sexp and backward-sexp jump outside of comments in tsx-ts-mode In-Reply-To: <861pxd4fgf.fsf@gnu.org> (Eli Zaretskii's message of "Wed, 08 Jan 2025 15:12:32 +0200") Organization: LINKOV.NET References: <87ldvmjz7o.fsf@mail.linkov.net> <07F33B09-D0C4-4C6A-8F80-10E2173D92FF@gmail.com> <87frltlpfz.fsf@mail.linkov.net> <861pxd4fgf.fsf@gnu.org> Date: Thu, 09 Jan 2025 09:51:20 +0200 Message-ID: <87frlswhl3.fsf@mail.linkov.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/31.0.50 (x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-GND-Sasl: juri@linkov.net X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 75422 Cc: seventhepg@gmail.com, casouri@gmail.com, 75422@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.7 (-) close 75422 30.0.93 thanks >> >>> @@ -564,7 +564,9 @@ tsx-ts-mode >> >>> (sentence ,(regexp-opt >> >>> (append typescript-ts-mode--sentence-nodes >> >>> '("jsx_element" >> >>> - "jsx_self_closing_element"))))))) >> >>> + "jsx_self_closing_element")))) >> >>> + (text ,(regexp-opt '("comment" >> >>> + "template_string")))))) >> > >> > I think it’s fine. Though it’s for Eli to decide. >> >> Eli, is it ok to push this patch to emacs-30? > > Yes, thanks. So now pushed to emacs-30, and closed. From unknown Thu Aug 14 17:28:18 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Thu, 06 Feb 2025 12:24:07 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator