From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Dmitry Gutov Newsgroups: gmane.emacs.bugs Subject: bug#60894: 30.0.50; [PATCH] Add treesit-forward-sexp Date: Wed, 18 Jan 2023 03:50:41 +0200 Message-ID: <847c7696-1884-d801-150e-4589a6c4b0e7@yandex.ru> References: <875yd428ng.fsf@thornhill.no> <4e2dacb8-31b3-58e2-4987-2d22501c3324@yandex.ru> <87358827ku.fsf@thornhill.no> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="35695"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.4.2 Cc: Mickey Petersen , Stefan Monnier , Juri Linkov To: Theodor Thornhill , 60894@debbugs.gnu.org Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Wed Jan 18 02:51:20 2023 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 1pHxbj-00093R-Hu for geb-bug-gnu-emacs@m.gmane-mx.org; Wed, 18 Jan 2023 02:51:19 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pHxbV-0006RJ-JE; Tue, 17 Jan 2023 20:51:05 -0500 Original-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 1pHxbT-0006R5-2e for bug-gnu-emacs@gnu.org; Tue, 17 Jan 2023 20:51:03 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pHxbS-0008Hl-Cu for bug-gnu-emacs@gnu.org; Tue, 17 Jan 2023 20:51:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1pHxbS-0007rU-6Q for bug-gnu-emacs@gnu.org; Tue, 17 Jan 2023 20:51:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 18 Jan 2023 01:51:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 60894 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 60894-submit@debbugs.gnu.org id=B60894.167400665130198 (code B ref 60894); Wed, 18 Jan 2023 01:51:02 +0000 Original-Received: (at 60894) by debbugs.gnu.org; 18 Jan 2023 01:50:51 +0000 Original-Received: from localhost ([127.0.0.1]:38725 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pHxbG-0007r0-SH for submit@debbugs.gnu.org; Tue, 17 Jan 2023 20:50:51 -0500 Original-Received: from mail-ej1-f46.google.com ([209.85.218.46]:38558) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1pHxbF-0007ql-FE for 60894@debbugs.gnu.org; Tue, 17 Jan 2023 20:50:49 -0500 Original-Received: by mail-ej1-f46.google.com with SMTP id mg12so7437077ejc.5 for <60894@debbugs.gnu.org>; Tue, 17 Jan 2023 17:50:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:from:to:cc:subject:date:message-id:reply-to; bh=ZyqZV9gBGqCxpNn2KIa22P4cPtp1CZVqydYO6BEaHRk=; b=aovKKEygUneEDz2riB0SuWulPGn+NAYF6/LzHgYIPKlpZwaSXriCzggcoGpgUHGq/5 JZguYErWkg9ydrrD/Njxn1oBIcnuv3BtZN3vFfzoCEGUgE8D0U3tT1cUittCKUq/TBhg kk8yBoiWxN77Q7qy6trV4S1FHWsGXulTYGJ6fBJCTeVzQlzBbzPtseS2g6yEN8jxNxXV WCj/oyXTxGMGNhIWGqYqabiGae7xUbASIBH71uh8RrxvoV64sW62YPUKZS5haK1fsrra fvaKUm4rGbz/xlokTvXu+0PArH0e7mjYBIbNgTt3EIq/MoUQTm86YPZqrP7ZSOOtC4nO qC3A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :sender:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=ZyqZV9gBGqCxpNn2KIa22P4cPtp1CZVqydYO6BEaHRk=; b=hfcPztlqS4FPYDR8KLWyVtRBQvSlprJyw0cXO9apBhoGorNCnQtxrtwiT/ArEZPYZY JHcxuVcEfHFmo8vweJm7SIltMHWMZvrHa2FhWIIPtRA+qhYLdMTB2CRjknFiA5p9/wKr nXBXvsjy+Qw2zE8d4bBzH1aijyobJ1FnCn5bcJy3TyOmjiwEF5ePt0sZ3au0I6GKzUqd UFv815QpDzc1r3iirSa0/kYCu6ZgchD7GmzQzOMvcVVkdyLk9Hf2J+1I0r991Itf5zWz mSJpj34OquqcTzRnMBP4j6X6XxnGo0s/dpE7+KQYl0oOalrE1epm0V+KcsfpecxznECd y68A== X-Gm-Message-State: AFqh2krLfmJtI5NRPa8xJDTk0V0JrGa/qzWu3e07j2/S8kDcGh+GfCSu vO+mejOBZZtAac8BdMkp/pg= X-Google-Smtp-Source: AMrXdXunhp8HZO27EDzo1i/R6NGV4JfFClaab52O82ehfP30Ts8J5aKITpX88612N9EL2/HTWPvHEQ== X-Received: by 2002:a17:906:6410:b0:86f:9ee6:2e2b with SMTP id d16-20020a170906641000b0086f9ee62e2bmr4964251ejm.72.1674006643585; Tue, 17 Jan 2023 17:50:43 -0800 (PST) Original-Received: from [192.168.0.2] ([46.251.119.176]) by smtp.googlemail.com with ESMTPSA id cs3-20020a0564020c4300b0046dd0c2a08esm13456886edb.36.2023.01.17.17.50.42 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 17 Jan 2023 17:50:42 -0800 (PST) Content-Language: en-US In-Reply-To: <87358827ku.fsf@thornhill.no> 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-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:253599 Archived-At: On 17/01/2023 23:07, Theodor Thornhill via Bug reports for GNU Emacs, the Swiss army knife of text editors wrote: > Test this very untested addition to the patch (I know no ruby). It > seems to do what you want. I'd consider this sentence movement, though. > For M-e That seems to be working rather well, thanks. I just needed to extend the list of nodes: (setq-local treesit-sexp-type-regexp (regexp-opt '("class" "module" "method" "argument_list" "array" "hash" "parenthesized_statements" "if" "case" "block" "do_block" "begin"))) With array, hash, etc, you see it's not exactly like a sentence. Regarding your previous question -- whether forward-sexp should jump over the arglist together with the called method name -- ruby-mode's answer to that is: - If point is before ".", jump over ".bar(...)". - If point is after ".", jump over "bar" only. But the difference is more subtle here, and different people might have different preferences. This also seems more difficult to express via node types since "." is in the middle of the (call) node.