From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Ergus Newsgroups: gmane.emacs.devel Subject: Re: Missing features in c-ts-mode Date: Fri, 17 Feb 2023 09:29:35 +0100 Message-ID: <20230217082935.waa7f473dmvbpg3d@Ergus> References: <83wn4iajyy.fsf@gnu.org> <87fsb67pfj.fsf@thornhill.no> <83lekyagwy.fsf@gnu.org> <87a61e7n5j.fsf@thornhill.no> <877cwi7mju.fsf@thornhill.no> <83bkluaevv.fsf@gnu.org> <871qmq7l9q.fsf@thornhill.no> <87ilg1qv71.fsf@thornhill.no> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="7854"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Eli Zaretskii , casouri@gmail.com, emacs-devel@gnu.org To: Theodor Thornhill Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Feb 17 09:30:29 2023 Return-path: Envelope-to: ged-emacs-devel@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 1pSw8T-0001sO-4U for ged-emacs-devel@m.gmane-mx.org; Fri, 17 Feb 2023 09:30:29 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pSw7m-0001CF-0c; Fri, 17 Feb 2023 03:29:46 -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 1pSw7k-0001C3-TL for emacs-devel@gnu.org; Fri, 17 Feb 2023 03:29:44 -0500 Original-Received: from sonic312-20.consmr.mail.bf2.yahoo.com ([74.6.128.82]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1pSw7i-0006Jk-Vl for emacs-devel@gnu.org; Fri, 17 Feb 2023 03:29:44 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aol.com; s=a2048; t=1676622580; bh=8xjpkcADEg43rPXXmHUcalnEXbdLRKOiOdGIUyVdeyE=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From:Subject:Reply-To; b=oq3O6cbZJV4O3fwf0RZr5feEQA8bcpbHtLIBlHXXZPYWHuEixKPy/2U7KA7bpJZvsYnFFsGr3qqeMTwWjS9LHvotFxLFMW+ekkTKUgmlNMRZjt9WcVU0da7XWpGz48ziaSxXd5S+28iPBnZOSycm8xoS6s8+d7vvgXuPJfFipErkbDZe4leNOSx4Jqt5AieC70E/204EuJhhOjJ3dD1cmj6JvBQdCLfeOuJRpBZR+i1TwFAddOOse50F05mtkOsc3cUTnSATAP4eO4vmLiob3oJDyUDsT9ztl9bYnJNe94Y5TBDc1LdHIjLN0sIuZPIYIUyNjhZgcihozKOj0ZVQMA== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1676622580; bh=LXhSNDyOvQCiHMEOeIaLwTxmliLPy/01bz9eDzfuTai=; h=X-Sonic-MF:Date:From:To:Subject:From:Subject; b=Y2jF9OdosANlddfJoUDswuRgRyMrkq4hvbYz+jUxf9tya1Ijaon0LAmF8EwkE3aQ4oBLBpoiS/VPrOthejgPlwjr2/ANelYO4QxR90Z5Ke/9JWOyIDk2O5G8xC6M1gB8B4qytzDnd6sIGeTUnBw8KgtwLSlcAJAGLHe9Nv2oZkQdcDb2neubRkz0GlybbIQ2UbK24Yn2HPpcHNfj1V28bXhoYgb6GwhN8d5eSniWrYxSQ4R7o3WPDeWVh+Jf2zjv8xwlMoA2j9MQWZodhSALPafz9Y5FIqFsxZuf+xpkBpVLeLYAuZ90obvSWaIvUe/pmkMEmjTFMSMkSBA7MQxW8w== X-YMail-OSG: lzGmdWoVM1k3OFe1odycx6VPR1bC11tju6VG1HXmmMDv0IMvSIzSG.mDhm6czbP qKVfa9AKCAHZq5HIqnYEeOam.s0kG9pVn9McUX1v1JNm7jGhZH0k1XMvZvNpyFhiSWuxa1cqfSDC Wn9cbK_BZz5syu5iP7Om0uwihb4A31TYipprj27TlKvbWfYGUH.s10KWUaGVGUfVeLmdQrlVRDWm xl3MfN4ZfhQx6UHC..AvSkUoY5Ixo.XZ8fn_1xKM5sxtkOtNKfo1lC70DsYDdEy6oGxTrV.x1fTD 0ckBlNUExJGe.PbV7.Aicokvr5WpOb4w2rKFMJJdAHSX.HIzWgiz6ZTsAzkihjqufbfVGQ9tPcO8 PPiqDCGB1vZ4g_TaSw9vYZsQugznxZ62z0xiWpVOcaVDwxR6fAWua61AeJSpjSaokSjFlT74q8vk FB5aBXqLfqs3.CoaoRfkG5lyMCD5hc5mnkFTN96h6sjIw_AjFkXSmPi4qfSAE0Ti7xvRyVZrTCAC 1A1QmXOq0UWpqxLr7rjsYgBLbBvzV_jD0hJJaFwEgk1DWZl.nFYm9svjm.za1BdDbEtoTwflDtbs ja8FXTsq9ujNWfJCt5d9GhVhpF9rr0lys4aipsUm.mhzPzgfpmDlY0sIbph1mvZ56Cyy6xN_6lDS UlMHCudwejyCg15YDlBVFE0fu_xBP2YPmnQpwsgD7AIjkg8ZSIfYuX6Nd9DRo.DdvxLtasayOo5R u3R6Z_9Qy1cWwjeKlN6B1dM5LTlDFOpfRcZQnsT8K4zTCgOx_z.AYGAEdO0fxr4pZQDascEQ_wjr kwP9cxgh7dwgrpa3t8Usj1WSLRVG67XdnkzlhJ4BAf X-Sonic-MF: Original-Received: from sonic.gate.mail.ne1.yahoo.com by sonic312.consmr.mail.bf2.yahoo.com with HTTP; Fri, 17 Feb 2023 08:29:40 +0000 Original-Received: by hermes--production-ir2-65c64dfd66-pqdpl (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 3bbb5c22a33718dcb4e55690c3077772; Fri, 17 Feb 2023 08:29:37 +0000 (UTC) Content-Disposition: inline In-Reply-To: <87ilg1qv71.fsf@thornhill.no> X-Mailer: WebService/1.1.21183 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.aol Received-SPF: pass client-ip=74.6.128.82; envelope-from=spacibba@aol.com; helo=sonic312-20.consmr.mail.bf2.yahoo.com X-Spam_score_int: -10 X-Spam_score: -1.1 X-Spam_bar: - X-Spam_report: (-1.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, FREEMAIL_REPLY=1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:303455 Archived-At: Hi Theodor: Sorry to bother, but I have a question about commit: f1f571e Add electric indent for preproc directives c-mode had by default the [0] indentation for #preprocesor directives, but there are some use cases where that behavior is not desired (i.e #pragma). Actually there are even multi-line pragmas when using OpenMP int main() { #pragma parallel for first private(x) \ shared(y) etc for (...) { .... } } In this case the pragma in column zero is very confusing. Alan added a new mode (c-toggle-cpp-indent-to-body) which worked around this issue a few years ago. I don't if it is possible to enable similar behavior with your change? Is is? Best, Ergus On Thu, Feb 16, 2023 at 08:14:26PM +0100, Theodor Thornhill wrote: >Theodor Thornhill writes: > >> Eli Zaretskii writes: >> >>>> From: Theodor Thornhill >>>> Cc: casouri@gmail.com, emacs-devel@gnu.org >>>> Date: Wed, 15 Feb 2023 20:31:33 +0100 >>>> >>>> This patch adds some support for this- but I'm not really satisfied yet. >>>> It will electrically indent if you've typed "#i", or if you insert "#" >>>> before say, "if". The reason it behaves this way right now is that the >>>> parser returns an (ERROR (ERROR)) node when only # is inserted. I'll >>>> see if I can find some workaround for it. >>> >>> Thank you for working on this. > >Now done. I believe the fix was small enough to go to emacs-29, so just >pushed. What would be the best way to create a test that would emulate >this behavior? > >I tried > >``` >Code: > (lambda () > (c-ts-mode) > (self-insert-command 1 "#")) > >Point-Char: | > >Name: Electric pound indents to column 0 > >=-= >int >main (void) >{ > | > return 0; >} >=-= >int >main (void) >{ >#| > return 0; >} >=-=-= >``` > >But that didn't run the electric indent afaict. > >Theo >