From debbugs-submit-bounces@debbugs.gnu.org Sun May 19 14:14:39 2024 Received: (at submit) by debbugs.gnu.org; 19 May 2024 18:14:39 +0000 Received: from localhost ([127.0.0.1]:37359 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8l3O-0004VQ-Qi for submit@debbugs.gnu.org; Sun, 19 May 2024 14:14:39 -0400 Received: from lists.gnu.org ([209.51.188.17]:49996) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8l3N-0004VK-4V for submit@debbugs.gnu.org; Sun, 19 May 2024 14:14:37 -0400 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 1s8l3H-0003jJ-RF for bug-gnu-emacs@gnu.org; Sun, 19 May 2024 14:14:32 -0400 Received: from sonic308-2.consmr.mail.bf2.yahoo.com ([74.6.130.41]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1s8l3F-0005zD-EQ for bug-gnu-emacs@gnu.org; Sun, 19 May 2024 14:14:31 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aol.com; s=a2048; t=1716142466; bh=nV+cYoh+8xBpZtCVuhduGk7fLHuclhVNH957H+tqo0w=; h=From:To:Cc:Subject:Date:References:From:Subject:Reply-To; b=QP+nzM1vb7rFw6YHO2IIH5YEGpWkCIwXUVoqfpqEXFpL8n0JBP7sJQaZDpsAj5moO7CUR8F5cLv2/lAZur6ScJgfff9kGvrOFoXo4tBSCmrNN6+YSb2O5Mkt3jjHa+5pql3WwF8BzzqiTxbbnvLowCC7TIuzrHV+eIoCjsfEwAWx3G2NFk+wAodUJCuTtyNDmmazWTc5vdEsUKvzeEQ0q0Wrw/uHSEMzb8/2D6p2zU2gI8+Tc7YEMlODX6zB56tMv5x/EM4RMUvo66mm3aKddJI14ajHgyVuSEx3uk2vy5vRMNZiz3OdvFUW/4eucenQ3mvwv3/5mtbOXlizHxmtrg== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1716142466; bh=TlianOV0/P1HKYARskGihVXPqOg6Hqgg4+/wMQTP9NC=; h=X-Sonic-MF:From:To:Subject:Date:From:Subject; b=NNiPCa8UZNpcenlRl58ke30iDxNdhhaDG7+RGc9tbeM1nCAbKHn1jgvzPetn8pupFJvnKm6hnFlxXyV1NOqu2A/t1V7cHLdQGbipaLBH9mi3JtwYBAfPbkG0fusAg1ZXe09TY9IJHgQTXrV4j9RxCLe/EqjqSQazWY1C2WnlPnDRss764/LSBWp5FQaxNeoM+ahOO73yznfNe+hB1bC0T/0/2IjnKNHoqZQmRfPTzQCXicKesn6cdoBtk8LZdzdTuBChB9KJkC7k/nb1m+1E7pt58Ubz9d1Ef4tLKtPrJMS8VsMb8s2W5HJ+4tXhY4OHL+obta1N59dxBYgmo2JMVQ== X-YMail-OSG: V1jL1usVM1m9iG2O8pv.MjI3MmkgbPjSR42LRFT9nWr.R6grLk2epCA68DEpBZ_ K8cxIHiZxMdghyC8._Uj5SThiMABcaY13HFPAXSznOzTCNZ.9zRe0Ju5ytVN.w.p7FvS3Uu4o1VA 5fNgHE7uvnWIDc6DQY9vIWFB8PBVzddwxZDixzaSCsbeNRtjQJoZk1RbdacXEWfZQF1QtoYYtVMl bgnQSkUN5irpO_IhK7kj8r0CnaKUhc130o6PkWD2HAH1Kl2NXUAPkKzVP.qyEDeW0cyhxhSUtRQ7 4or2X4iGnBB3LsHprXNL5CYvd.3pwkrxGyFQpuW6W1JoDgY27.iVEFGEIQ70j64_UnIDIZvSyQHh YK3xBpY8elzPoTe63eYL86LOBEcY8boN1tdmTmceIXhwizkxfZumAzlwLxrkKLlcKJhGxQM9nrQq n0_Mxk31g5oIktk8qV_wtTtqXzojQAFg90fhuORCKOLY2HD7mTKj.OkGPjsI0xQhdmco93615AtV FIgXDvhQEDfhvIzA9zljT4QfGRm0cs7F9wq5ACKWq6kEr9YSkYF0OFmEN86z26zEuXeDsxb0zFgv BwY0EV4sm4NpH27k1esZS9TqGGhqFdROJQJo2weSfvKCpmooXcRKMlyYTFHLkX2CHqy86oUzoT5. 4uGM3tJSd.wy0KQhpjWIVxuBi528z5hjxbYHTVq7pvlN9lGttqswCv_NCgT7hM_ZwadBLtm9OuaZ uj.IwsyaQPdUoXnfA5w2YFu9OlkSNEShzJoBYeqEcM2naVpYZPspDs3NXNQ1SrFuVwAjTK96RhzB cLFN_wS_Mz6Yiq73ABSmWMPvYXjQtTt.EhlIrYF3X_tr5TJOxQi9kt0IyAYpT.yJRg5d8kOvgXXo aNuzH068QdCeQNJ3eC1hZzNLoHhsqIBBF5DdnQ_EUx8jv.jpq96JjEjRtJUVcIZ_nB.4rx_ZFQpe AILZYBCDndpT66chlZitL2FFq9cQO_tzxM9e.mp5Ye2mmZiUWTeq8jzui68nAccBIzoGcEOlcFyK Zh6t61hh4vFEcBjaNbAeWHAKBUhGBSv3rpGtOimhHs5AJbc19.LoIT4GpbIU380VgdO6t8tpV.ru Eg.MYUfJiX7_fxpnk5w_j7enC5F3dfBb7HpM6wEkG6fOdoJ3xYAPsAxXbALXr7ugYHw6qwTTtzMH 3D6jzzAnUHD.SEmZg9q.3M4UiQjwbpldqpIfeonMINDBxvaHBT1ieKi_yk2HaM7wXgcgpIdHa48i Ox6fAgtCTQNcshgWnYK0lPw_JSVS632EFWOoVoNC1CprG1nbOiPBb3.Du.gtERXcvKtXWE8hxibM PbcwaJCqzdc.LgJGFGdsX5aht.ym5B9_HeET9Kwx74UlPNGB2MNnJVVupKNk8r9TkzpwVvdVQ.ei 0mbYuLr1Db2DlyiQb5hEC6GOlmtYITE9wZQ9_XJz2uxzk_GuNuL_mcN6jH0XnwDbXJoFGSa.qkPD YF5w.QmK.zAnoG8Xq8.6vT8m.IDi252vtC.xNUN3JXdvXoEL6S3c5JfhEPf5s10rsT3gF_kDemHJ .QYoY0qt3PfgJJUkTFjBjgj9O_aFvSvMjDZFHyGXjyKEmbEi3VbS.YsA1ji.25FBVg0YkGVV_VsF s007puq2mJpKx9gmI_6NGVZEF0gs2WMKgZvSz.UdFK_8tu5jMh3Hi0Ic7WAf9.ES5vxpDUPuPm16 FtcozRNKKBDmXoQzohZR88uXBKWQR73eeDEkeYn4Q5VWvx2mp_vfzhgzbgPyhtAaLq1fbaVZRS8Z 8g6znqnocWpgoW.eYvAWD98WbdMn4CSJp5z5KdOG4ibiErnF9A0D57MN1YYtWPSPgXE9aNqmh2Dc JdXkk9gsA07mUV31.PhbhYPsVFk_eUr9tTRWHMfBXIk6VSuyBzG4KYMLc3BYAQxWXuc20NoPICd9 _UW4P1NfmEflKvyWrdxNoKOMjxe24VLjoJknqY_tnVXYFVmIjSqA454FMqLFyt6IXtPA8YjtzQVh R_5XvIEm5AuYS8GVRt9MQ57tLlOwIX7PHPLVpsHYFr086KrRPatmyVGxCUyiCqJOafqCiIs._2tK 44d9wJgQuPMKXd720kYBjnnHAl9fNkMvR0tdff1f1d6tDPtg1Y1tRk2zHmAvMkSETTIACBxe4pfG aH_gjtp92r_fuSLBsn3Yzq.BJ._b5vSv0GfPUftSLKeSJoxkQTSeqHTdRUaMlZkX1cIU- X-Sonic-MF: X-Sonic-ID: 420b4567-d89f-4b88-a388-5aee9c1c9e2f Received: from sonic.gate.mail.ne1.yahoo.com by sonic308.consmr.mail.bf2.yahoo.com with HTTP; Sun, 19 May 2024 18:14:26 +0000 Received: by hermes--production-ir2-7b99fc9bb6-nxv6t (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID b95119d6abeb828f17c188496e74c12e; Sun, 19 May 2024 18:14:21 +0000 (UTC) From: Ergus To: bug-gnu-emacs@gnu.org Subject: 30.0.50; c++-ts-mode namespace wrong fontification. X-Debbugs-Cc: Date: Sun, 19 May 2024 20:14:19 +0200 Message-ID: <87h6et6550.fsf@aol.com> MIME-Version: 1.0 Content-Type: text/plain References: <87h6et6550.fsf.ref@aol.com> X-Mailer: WebService/1.1.22356 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.aol Content-Length: 527 Received-SPF: pass client-ip=74.6.130.41; envelope-from=spacibba@aol.com; helo=sonic308-2.consmr.mail.bf2.yahoo.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, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Spam-Score: -1.6 (-) 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: -2.6 (--) Following up the conversation in the develops mailing list I will report this issue still happening: In c++-ts-mode, the namespaces are not fontified like in c++-mode (i.e in std::string the `std` used to have font-lock-constant-face while `string` used to have font-lock-type-face). It seems like tresitter identifies them properly like (namespace_identifier) and (type_identifier), but the fontification rule is wrong. There was an attempt to fix it in c6a5aae3da17459be7550c but the issue is still there. Best, Ergus From debbugs-submit-bounces@debbugs.gnu.org Sun May 19 14:36:20 2024 Received: (at 71070) by debbugs.gnu.org; 19 May 2024 18:36:20 +0000 Received: from localhost ([127.0.0.1]:37449 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8lOO-0004lq-8D for submit@debbugs.gnu.org; Sun, 19 May 2024 14:36:20 -0400 Received: from eggs.gnu.org ([209.51.188.92]:46660) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8lOM-0004lg-Az for 71070@debbugs.gnu.org; Sun, 19 May 2024 14:36:18 -0400 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 1s8lOC-0001OX-RQ; Sun, 19 May 2024 14:36:08 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=UT1vU81/hGZRgzQBDol1Ngi9rH60yne+RnHFKjQM6Ps=; b=kW5qL+6gjZzR zCzxpf+uUJbSXydlIS19gRHHSgLwGlrWHrFZdXfsNnyt9Mv3QZGvP+QUYAN5OzrWPVTBt3iYu8daf Iwf6/h3m3xIGtCvl6boJuxJPOh1FB6Hg4hkk5qmIISnMwryejA6BG7Bq6PLWga0hzIhLvhWXSHEo+ 7YcgOfGHHjqBzFN/dfeWnoVJtAJuJf15HXjBd4iStDjREG9W50I1RMCHEtXFjJ11bszcodLTUwj4a 5JYhwnPafUHq0bb4QBohfNItx358ubm2Eogv7wsI0Sb4VaOjq49crZV4wlwXts1c/MctGsnjmfJvH mI3MZgDPPBLh2XeLIwf8fw==; Date: Sun, 19 May 2024 21:36:07 +0300 Message-Id: <86wmnpabu0.fsf@gnu.org> From: Eli Zaretskii To: Ergus , Yuan Fu In-Reply-To: <87h6et6550.fsf@aol.com> (bug-gnu-emacs@gnu.org) Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 71070 Cc: 71070@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 (---) > Date: Sun, 19 May 2024 20:14:19 +0200 > From: Ergus via "Bug reports for GNU Emacs, > the Swiss army knife of text editors" > > > Following up the conversation in the develops mailing list I will report > this issue still happening: > > In c++-ts-mode, the namespaces are not fontified like in c++-mode > > (i.e in std::string the `std` used to have font-lock-constant-face while > `string` used to have font-lock-type-face). Why do you think std should be in font-lock-constant-face? The name of a namespace is not a constant, it's an identifier. From debbugs-submit-bounces@debbugs.gnu.org Sun May 19 15:01:02 2024 Received: (at 71070) by debbugs.gnu.org; 19 May 2024 19:01:02 +0000 Received: from localhost ([127.0.0.1]:37546 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8lmH-00053M-Pg for submit@debbugs.gnu.org; Sun, 19 May 2024 15:01:02 -0400 Received: from sonic304-10.consmr.mail.bf2.yahoo.com ([74.6.128.33]:40367) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8lmF-00053C-TQ for 71070@debbugs.gnu.org; Sun, 19 May 2024 15:01:00 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aol.com; s=a2048; t=1716145249; bh=Zpj6vHmjT9lp8G8j4loetDdNVAZEwkOJAhAV/bRgbyU=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From:Subject:Reply-To; b=mCsWH7xAAwxMWNk3fO4+tWL6dIeY+gOu5YY4cNFdqQIk6wXWooeA4/NhhQiL1DJf0Z8g2sVadkzBchW8sAntr7YtR9cCu9LKDWUJTEFtffrmG012wbWmuEM0455RVZpTuLpqmV+xLTIq5mF2jdUMGLIFxGeF2vZapV0rAJQIPvHCK87a+K6ftxCoRM0gL+VkbAclF4GvHAtmRw/F4xUEXtIiv2ObRbQzgVcClOrOF9ZA3wArJlqUMFGFEQ4SKCjtf1CyF3/uhMVy8el6YbXUGBkuwj5hgbpI8L/4m4isba+sOmUhjeNLgAbXFTlDb7TRpMXOQZNruWEKXvGJVAmu+w== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1716145249; bh=vJwRxQR9uQYttK2wvu2kxeAeidICtFOoqlC7NhRaRXM=; h=X-Sonic-MF:Date:From:To:Subject:From:Subject; b=XwtBGat30lHZnxeq1n2u6Bb168hvJkprXH5lMX0xawU0LeQHplLgrCKNLeQdZqkBd3EfdGvDSuZSNZWQzulOsuNDx1SqAlsq39zuDvJuFF94bV/imizwH+o+q80QVhwWc0px786bMXZ7vU0RZGMzWWgWB+9Yhr0JrvAIG/Dw/4cQnO/igkVj4fJOl2LuxITcXbqRi4+p/hPEWltvg0AkiMcEMVDoPSWGyqklKw/DsvLqiPnwcGJF51UCVulDGatOwrMe5PzoFQfVsHWKIhI1qN59EUFj6ME21KJU9RG5uSf1XYU7obk6PAEZgPYQ3oDjWtbWTwQbcKmZhn6io+IWDw== X-YMail-OSG: _ZqAKCAVM1lDU.SNVv05GbgKZNB26F5S.w4AKwSd9A01pTEl82gF8L7Yg9S9KGW MB618NUDXc6gOLT5l3H8VLajDC21gcNpdyUvpiGtHlUxWwYDsuHpa5anGTDkXP0q8bwRbWIhYBo4 TXgAiZRElbOVDkJbnQARhUd7LxbEYDuSejkeEQMaONey90QLskg0P179OkRX7ps_RyGzVAE2A51x JSnSLVN7wTjEOrbar806jfhg_G8ubC_L52l7KlRlymSBplfzu4E0oNjVAsZTGH75M0Zfv9ZYIKso WThRkdFlCiEOla0hKTWpDPDvyB4JtqaUGuo_7dYwJ19m6FAbWUgkqzt7BVtS6vXGcg.An.0MO_eX 2M3mgBRleWrpXkY1x.MMljUR9KAHe7KfCuQCsZBRnpWPZHFvCDTJdziya8D2EkoPK5FAVA_hOAcO Xpwtp_vXqTolmAKfKFCGcK3PZ7ok0PI_X5LRYuies1NuBpAEtd9PVG7ozB1YwPTefRIXs8XAhLKM mgqgoC216i7IQG8CXEuUngy34yAY4Pwp0BxRgQtlZglJeV7f255GUCaIT9AmSXT41ykoScqf_2VV iJymhNRBlej4h8jEHyp_t2lHVPBPXG3rYtvv48uNZ3hxOs_W8JSxllD4toyxpJiL4y3Zy4kem0qx fITNowxnaz3P1LVodcCSOSvytCe4UcxJ.3vqpLoOe0BtYF6gbRn1nGhQY.2fe6VqCiwytZcvvAeC 3KCAfBXxnmIQ1aYVtKB5Av793O9pQkQAP8GmhXtnbuU9zMAofT4tT.rHaVjbhd_F1QOioOsFy52p BkcwUrAo395QMatmfzXdIZmW1D4DOy_5e7SIq002Uzc_xh_zxkJzTf6QMjKctW8v8YWLD7_ugcKZ KNBcabmXmGwUr8Z1.CM1VmjlJmE307swAfzxk8et4ghuUcNyipPsZj9g1DgHXiBE_xg34SmUwcXT FcoihzZ7RS1nroYCBpbFE5m7g_e0NgMtyhBEbMHJ673HYD7QeVIVL_gjNFN4KgUAtAw1ecXZB4Mh s.8zv_RN4Mp3qTT85LNLn4gE9oAVOzxvhtizwbTtFBVMrVWmcxLuRIIZxMJI0baUgfMjkr4UsncN bOAhd9tpgzJE6PKOrzXXo8vyEFQAHkTIOW6JiJucoqi_8HRdr0MgyS4Y48olGoL0x7HskPW.efKa rCXRK.rk4B4vdl.7DVUR0BVmFIrYvdUvL1rExEScUyebwoOoDZO6GPqdnB9N0jCpzHvi87AAUwEA LR.QE1JeOLQBOZBkD2oIEkHEZJpAoFPobZmZADu7zii3MPqvj88IMbHK8H1nl1kcH4WqSPzHuzJ0 l7v.TEQiho2TFHvVRS2sAmEhLyo2HIMSTMYoSf7_8ei5Pd03a0Si.cNWeiak.W0c8tp1dacEDpHb h3vJQdat31rEz7YBKflE5uZxLgJ7VqvEOAS.YYCgxniW6Our.YMIK92jMrYn0ccGIbdgljovWECj QeHLuWhDP4.pGBVU1U6oC7tDwJbBf7UwA8_hXkXyK2BATDIiXjuU088z5gYZ08teNjiawc2DIKRe ivH0uoqA_B723aFlLfDVTwjwpBpZBEKURG8fDk.xAqMXQmYQ9NDGGCXoJxBlF7SEi28PdyHMO6YX PRJfd4O9athfUq5mZkUwKSogzbwOzojVjsAUJPzRULCy.gNrKHl049rAY1ZO4Ba.eJyFVsfeqRfD bmHFYIiD_g9fo2mOTnPNYcB_JBTsd4kDKL1y3iAjTCBTAHxrWvZpg.bQm.jTYIucXQunrhHNy7Qs erngD8HAgUDfLtYU8TC_i9mdzAE8mPw9WrgFy6AK2Uf3dSUNHv7_ziU1BYoaQ177IM6rM5ZcA622 ACGE31aFR5zhNJMKE3Ne6CVS64nmOxMiWVPG.tda7pnWio8y3jYfd1vW39pxO07ic0QDESPgX9Tk xYRRZr0ZhX5h.dwVQdslw.q8T3K6cnBJz3bB8Va8Yt9uFz0DiopU98q6WzGo943XqjRhaT6xCw.l jQlFur_U6EcKhPhKDYH_Wx_Bu4T9J0_IYqPEEnO6929NhfoLSGgur_x9BjGIS2erUm.Vx.TJHI90 OP_W4Wct1.bNQPdlmhcfnJLs9B4gPOB.xvBEgZEl0LpAxO45WrPHulNgfOmvGjYICtqG3OX4cIpF YwztX54BWECIwMj0kKXbynpqA3T88jaEZ55Y2ttZEfPKAYhrW9KbGO._2E08eYZwwc6TDflSjyMw RWJk- X-Sonic-MF: X-Sonic-ID: c74b369b-c303-4da5-b313-83b1da520825 Received: from sonic.gate.mail.ne1.yahoo.com by sonic304.consmr.mail.bf2.yahoo.com with HTTP; Sun, 19 May 2024 19:00:49 +0000 Received: by hermes--production-ir2-7b99fc9bb6-dmmmt (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 8bd07a6fa9080c35faa7353c285d6f97; Sun, 19 May 2024 19:00:44 +0000 (UTC) Date: Sun, 19 May 2024 21:00:42 +0200 From: Ergus To: Eli Zaretskii Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. Message-ID: References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: <86wmnpabu0.fsf@gnu.org> X-Mailer: WebService/1.1.22356 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.aol Content-Length: 1017 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71070 Cc: Yuan Fu , 71070@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 Sun, May 19, 2024 at 09:36:07PM GMT, Eli Zaretskii wrote: >> Date: Sun, 19 May 2024 20:14:19 +0200 >> From: Ergus via "Bug reports for GNU Emacs, >> the Swiss army knife of text editors" >> >> >> Following up the conversation in the develops mailing list I will report >> this issue still happening: >> >> In c++-ts-mode, the namespaces are not fontified like in c++-mode >> >> (i.e in std::string the `std` used to have font-lock-constant-face while >> `string` used to have font-lock-type-face). > >Why do you think std should be in font-lock-constant-face? The name >of a namespace is not a constant, it's an identifier. Hi Eli: That's how namespaces are fontified in the c++-mode. Not telling it is correct, wrong or if needs improvement; just that c++-ts-mode is not doing in the same way. Try this: ```main.cpp const std::string a; class myclass { std::time::timespec var; }; int main() { std::string b = 1; } ``` and then M-x c++-ts-mode you will see the difference. From debbugs-submit-bounces@debbugs.gnu.org Sun May 19 15:14:01 2024 Received: (at 71070) by debbugs.gnu.org; 19 May 2024 19:14:01 +0000 Received: from localhost ([127.0.0.1]:37598 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8lyr-0005C0-6Z for submit@debbugs.gnu.org; Sun, 19 May 2024 15:14:01 -0400 Received: from eggs.gnu.org ([209.51.188.92]:50888) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8lyo-0005Bo-KJ for 71070@debbugs.gnu.org; Sun, 19 May 2024 15:13:59 -0400 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 1s8lyd-00070y-VL; Sun, 19 May 2024 15:13:48 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=JEf6Yg71aibx0hq+8+c51iAGlYDB0SUINLbgSKZmQkw=; b=C+k5S45NwBLq 9Pz17M1M4UlU27CtSTbKe6OhwWZGZeBwtgcZ6Myin0s3KzJiOsuXnbJFJ/Uk5gO72cids7+RrCgDV UITXKlyV10z0i+rWe74RXR1Ijma9X7SIWlAqWyxG56TCR9DBWDzvxXIW/ZB0MveWEoueDAYtI6yj2 Gh9Wy1UMg7/+4XyDorhXjpnEdaNbCbLgvT4CzaAhP8X42dhhzHL+VAELFDHQ1gBuyrCxmlRZS8orJ hRWOoAOjq3PUi5Q8nFu2Sm3V9V0QDTc+u+wY7KSodbdRtnusdMIKvf/C5nmLfA6+2An92H5SAxDmP AAAn94h/pgE+wEraKkAqDg==; Date: Sun, 19 May 2024 22:13:45 +0300 Message-Id: <86v839aa3a.fsf@gnu.org> From: Eli Zaretskii To: Ergus In-Reply-To: (message from Ergus on Sun, 19 May 2024 21:00:42 +0200) Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 71070 Cc: casouri@gmail.com, 71070@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 (---) > Date: Sun, 19 May 2024 21:00:42 +0200 > From: Ergus > Cc: Yuan Fu , 71070@debbugs.gnu.org > > >Why do you think std should be in font-lock-constant-face? The name > >of a namespace is not a constant, it's an identifier. > > Hi Eli: > > That's how namespaces are fontified in the c++-mode. Not telling it is > correct, wrong or if needs improvement; just that c++-ts-mode is not > doing in the same way. > > Try this: > > ```main.cpp > > const std::string a; > > class myclass { > std::time::timespec var; > }; > > int main() > { > std::string b = 1; > > > } > ``` > > and then M-x c++-ts-mode you will see the difference. No one said that what c++-mode does is necessarily correct. maybe it is, maybe it isn't. How do other C++ IDEs fontify namespace names? From debbugs-submit-bounces@debbugs.gnu.org Sun May 19 17:36:58 2024 Received: (at 71070) by debbugs.gnu.org; 19 May 2024 21:36:58 +0000 Received: from localhost ([127.0.0.1]:38164 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8oDC-00071e-EB for submit@debbugs.gnu.org; Sun, 19 May 2024 17:36:58 -0400 Received: from sonic317-27.consmr.mail.bf2.yahoo.com ([74.6.129.82]:43510) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s8oDB-00071U-B3 for 71070@debbugs.gnu.org; Sun, 19 May 2024 17:36:57 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=aol.com; s=a2048; t=1716154607; bh=m97GL8SPtCOD+MnFVvKP2dIQ8D6kO1rwRI5Lmuzzrqg=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From:Subject:Reply-To; b=sRvwVMUdxnZKU4VrmNQq657fNqVJa4jTWL0GJq0FOpjX+h0yOis6pNn7iOlZraRJWnoPDRT7fiik1/C8qKe58AAMYnqb+v0IR1dR3Q53ubW/eavkgL72d/rCYb+6Gwj5k2Ozr0J26R8ooj2W2R78287D6j0ethXtZrvZqi/p9Wv9K8rMbfPHq10YAyrDFOgYr7uhg2BAX7nRAEGtNGcinhRQXnr7OsOrOIDrCuB+mQQ4jCVMmhVFlRLSmntyp17eOP1E9hmMoepd6yq+TnuBw0NbaE7+rSC5WHYHwZC2K+dgTUW+3ijFyU+/qFNDbzqe1Q7KRWq1gTiV4E/8sSU3Rw== X-SONIC-DKIM-SIGN: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yahoo.com; s=s2048; t=1716154607; bh=KYbhmltJ8Glx5VP2tRotSiNwL+CVc7fAuNw6Fh+Ouc8=; h=X-Sonic-MF:Date:From:To:Subject:From:Subject; b=JMeemQuZpYJxSv8wVxIztdSWbpUA0VxD1hTtwwR1uUP018BNsU9viSVV0/4IppFRQMfkwTxE02EsQpkuYTa4xOOz4WoEKa3I/fR91OGo7pDR6N51enxBiyDlIlvEcPYxuIJUpg0uNXbW09GcMNHISWxJtYspjmwo71UXECdolLTqzviwY/ps+5yQqNza/Kol5GONtEVOlP9x2jSwQ15I6ki/+i4hwTCrB34zdhKfqQTxlj6uzyEEK2k4CR1pzBzxTs6Uu/FLX7HLdmzl74dkF9LyzgXy37Ek8mU+UBE42HmYeKahf2EzkoMUIdRVmjmp+2ywbwTQVmsIMGODlOVAXw== X-YMail-OSG: _cSF.2MVM1mUwiLDZ9YgD_Ur0N6gY7MIBL_mA0LQmJbnB7HxFzw7OFvPpDhwUqi .NQis_IbA0xaaPztbu_3E_UaPaXOn3p7S_l2Np8tmT6C60GFwjSQPgvymjcD0ha3AWJd2qtwKMvK oK2zjD0I9s_zcZQMvZcekgRp4z1ZOB7k9KNA8h9DGOLuuzVtNHOyGOfon3opSeuFfENjIQH42o7U iB22yTf_bwKkBEOcaexwh4DBY26HO_7AhcFcEkRAC2N0if7DaU4Z9HcbtxRuewm9OUHSWHOkH9Ra MbXGq9H.rAEaF45SDfptC5I1YtLNJA0IibVzEAtmleUtgZ5.YYxVDyCAxsLdC4NBDvA4RrZPTJMz OCgCOBmhpLkOdVmeAxnHJKnWNzAPPnVvNBDLC8Y6N7HL_qcihreaRumtGCve3QuNtnq7DPMaHfXV 10pOpg2iRJGj5RfHAu5ezTgqQjcNkYMd8XuqeZW5g8bTuV31O4CvyI5AutY.8Vssv69YFA.xatS5 n0gOIu2B4tHqMQTV1T5JAfCK372zcbYOaMvHwV5pw9cSw_MMZBhnoM3fHVz80vYKTp3Spqql6t7D wIXjmZjumNdm3P_sfayqYvsyuSd5kYT.CWWF9RurGOw6x_Cm0cA9Hz1xVEISZ3YqOfObTDNWTG1H CXr2_kSMU24NB4IjN3Hv0RQO9fdkSVpmCg1T9WDCqeUZ0in9fxpKiDggKKTu_LJXia2ZtEwia7nU hR1i0OghXaJyK7lKggiQQ0DzZBT4bAQbR8DtzGR_qXuBc..OumQj4ITk9YlYJZawAwCkiGzuoPVo FsjT68jf_GfpnQsA3v0lZd7y.kjuqD39YfQSiBJq6AXwKqcaJg8Ce7Luqs0LKmihVvXcYJMEDtdW DN9qqf_skft3RPwUTcNzc0Mq1b5YUkm5wNYfdSZcYqQYEU5155xIOgb8Slnqhszcl.ldwRGsH8m1 0hc5nGzcYjOwFWq44_vOjBCZxOEGmL7ZinRKULN3L4c4i6Ojy5sg2XkITKpSCRQ7d_KWuh45tp8f BN3Rs3kqw.UZB4ovhxZtLqVcm9dHrY.pvbuRj2fT8RAZ0q9MlGJd_bM0oKOE_.hNkq5JlgBDWs18 YbUbBqzBqqdj2PVo5mv33TU4R3s.J3FPid7FN9yqGiSFI4nfh3hj7uBuJet98c51d3eF4lQAX0Yz 98RxCGaL5anzEvyOaB51NGRRdNQVnHyIsS9h52mO4Q54hC3USNU5_.WZWjdkbgvlKPCugyq7lwws 1Svtqg_9k4NYS5H2zF1IhbIgJ2w_TLttKVK_iCXCwt0Nl.9pXS0UfvKn3C2aDP2yQQMXELj8xtLo xTsENFd6eIs2q1_qGTaH2htUeiLTi.kj5I8JTK3KVWFtalU4StnpISTywVivHs6Bi94IiV6CJUzw 0Xo69JQRTHq8kJBrXxIZ0Wq8PmXdTAwi8fUDRri9VINFVOUJpXy7qEyO87jt8WnvmR32aeRJEm4s 399IzlyOsW0W3y2qt1KnNoSCv6rM5Zac9U0yYJFUr4.j67ejw7Z5oGEN6nsdBxdYyzsL1QCCGTb8 teCsDWZ4Ik_vkrB4wNugub5wenC0pDkPzx1fxeB6w7jXQBt7SPvtkkZUxgZozrTEaJW1X.VJ91pP GAQTlHcbyjCCZSPlac0LFMcGXenWmEMrm87EbApcD2M2edSDUj_dmbcQruaX._bEyQRwBAvCGedT 081n1tsqC_ko2Stn8xXQqLtzKoApK6PgNaI3rEnwqydgFrlJ7JRKJ_A_VCyDV3xafqGk.aNDrTog wX7fN1jjhrfsAIOjykZe0xTlpx0jqH4Ns_rsRw2DrPbim6gDaBE0M8MnDykMjsW1sT3AfD1xHyEN gOxi9AecVEvi7pIoIIGrtq6dDUdhTxCh78GaktnaMK_vfwLJB_VKoMYy9wrHwUAtQfAYqQwUumX5 jRmTmQjiK7WEqWVrrECGsgIpclrVhfvYyojqYt7fnYHPb4dQ5XPJXXvhDe2GQwwrF15P.3E7rCiw Ak1SYDT4lya1jBVxMN6ZveNQPjXPV2SJ1iW7kCRCbA4yJvl6oi66NSKuaZXECltUCIGAi_BWUX9Y q35W3u.pm1wKlh_7.ruOVy6t4pdgkVy__kikFTFNYMNn23wigv5IKExEiG4qby8cVaP9X.rgMvW. sAXYMqzBR8LvZVX11me1nuaMZ8oG6VQbpJavJGks7P9dnaFMYQYJcFV1x7jDlODkQCdajLvzajgN n8VIx X-Sonic-MF: X-Sonic-ID: ee1f30a1-1af8-4ea1-b4c1-301272aa100b Received: from sonic.gate.mail.ne1.yahoo.com by sonic317.consmr.mail.bf2.yahoo.com with HTTP; Sun, 19 May 2024 21:36:47 +0000 Received: by hermes--production-ir2-7b99fc9bb6-6hqsm (Yahoo Inc. Hermes SMTP Server) with ESMTPA ID 6b76da5b4acd84170fb945a69bb47b06; Sun, 19 May 2024 21:36:43 +0000 (UTC) Date: Sun, 19 May 2024 23:36:41 +0200 From: Ergus To: Eli Zaretskii Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. Message-ID: References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> <86v839aa3a.fsf@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Disposition: inline In-Reply-To: <86v839aa3a.fsf@gnu.org> X-Mailer: WebService/1.1.22356 mail.backend.jedi.jws.acl:role.jedi.acl.token.atz.jws.hermes.aol Content-Length: 1579 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71070 Cc: casouri@gmail.com, 71070@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 Sun, May 19, 2024 at 10:13:45PM GMT, Eli Zaretskii wrote: >> Date: Sun, 19 May 2024 21:00:42 +0200 >> From: Ergus >> Cc: Yuan Fu , 71070@debbugs.gnu.org >> >> >Why do you think std should be in font-lock-constant-face? The name >> >of a namespace is not a constant, it's an identifier. >> >> Hi Eli: >> >> That's how namespaces are fontified in the c++-mode. Not telling it is >> correct, wrong or if needs improvement; just that c++-ts-mode is not >> doing in the same way. >> >> Try this: >> >> ```main.cpp >> >> const std::string a; >> >> class myclass { >> std::time::timespec var; >> }; >> >> int main() >> { >> std::string b = 1; >> >> >> } >> ``` >> >> and then M-x c++-ts-mode you will see the difference. > >No one said that what c++-mode does is necessarily correct. maybe it >is, maybe it isn't. > >How do other C++ IDEs fontify namespace names? Hi Eli: Every editor-ide has its own approach for this. But emacs has it own flavor and the ts-* intention was to keep it as close as possible to the status-quo; that's why I am reporting it here. There are many details missing in the c/c++-ts-mode compared to c-mode... but I understand that some of them are WIP while others are just too complex to port. My main concern here is that this seemed like a simple issue considering that treesitter recognizes the namespace correctly. But the Yuan's fix didn't work; so maybe there is a detail we are missing here, or that needs extra documentation? Or in the worst case some detail/issue broken in the ts api? Best, Ergus From debbugs-submit-bounces@debbugs.gnu.org Mon May 20 07:11:40 2024 Received: (at 71070) by debbugs.gnu.org; 20 May 2024 11:11:40 +0000 Received: from localhost ([127.0.0.1]:42073 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s90vb-0000Wc-MT for submit@debbugs.gnu.org; Mon, 20 May 2024 07:11:39 -0400 Received: from eggs.gnu.org ([209.51.188.92]:40920) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s90vX-0000WS-Do for 71070@debbugs.gnu.org; Mon, 20 May 2024 07:11:38 -0400 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 1s90vM-0000B9-QP; Mon, 20 May 2024 07:11:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=mws7XaDqLV7v83se2Ko//J7VUsBVCwRcwt2T9lwkQe0=; b=N1EiFsLBnTl5 zM40Xl64AlI4J/yx8uGL0OgC+wEmm3eNz4h4jdGWe8tg4lLFuebqZXNGANvX8gXnkF6JzWmEYTo+1 GQirQINgWO/UsPDHU3a8J/f72aQA6bH8iQ1mgCuBM27810n8tqolXzTyhdc8yw9dbG0bh5Rn29+59 EQaze8OtvGhurdhckAvD6gNUYakdlsiIAHNQmlDCK+zO3eFe/+82yYW2lxpjgD+tqOmL9qh8PxXoj YM1hdgKfvYq0glJTidpTKxB9Y7mOlTgVx2OAzVg/mE8XeargmnNjAGDjCk5+vpmV9b8ztyDF3f5yr rQaO+W2HZSFx124pkm1eGw==; Date: Mon, 20 May 2024 14:11:21 +0300 Message-Id: <86seycagbq.fsf@gnu.org> From: Eli Zaretskii To: Ergus In-Reply-To: (message from Ergus on Sun, 19 May 2024 23:36:41 +0200) Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> <86v839aa3a.fsf@gnu.org> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 71070 Cc: casouri@gmail.com, 71070@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 (---) > Date: Sun, 19 May 2024 23:36:41 +0200 > From: Ergus > Cc: casouri@gmail.com, 71070@debbugs.gnu.org > > On Sun, May 19, 2024 at 10:13:45PM GMT, Eli Zaretskii wrote: > >No one said that what c++-mode does is necessarily correct. maybe it > >is, maybe it isn't. > > > >How do other C++ IDEs fontify namespace names? > > Hi Eli: > > Every editor-ide has its own approach for this. But emacs has it own > flavor and the ts-* intention was to keep it as close as possible to the > status-quo; that's why I am reporting it here. > > There are many details missing in the c/c++-ts-mode compared to > c-mode... but I understand that some of them are WIP while others are > just too complex to port. I understand all that, but still: can you (or someone else) answer my question about the accepted practices of IDEs in this matter: do they highlight the namespace identifiers differently than other identifiers, or do they use the same highlighting? It is IMO important to know what are the accepted practices, to deal with this issue in a proper perspective. > My main concern here is that this seemed like a simple issue considering > that treesitter recognizes the namespace correctly. But the Yuan's fix > didn't work; so maybe there is a detail we are missing here, or that > needs extra documentation? Or in the worst case some detail/issue broken > in the ts api? I don't know. In particular, I don't know what specific aspects of this did Yuan try to fix. Yuan is CC'ed and will hopefully chime in and answer these questions. Meanwhile we should make up our minds regarding the desired behavior, which is mostly independent of what Yuan tried to do and even of what c++-mode does. Thanks. From debbugs-submit-bounces@debbugs.gnu.org Tue May 21 19:27:26 2024 Received: (at 71070) by debbugs.gnu.org; 21 May 2024 23:27:26 +0000 Received: from localhost ([127.0.0.1]:51798 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s9YtB-0007r7-O5 for submit@debbugs.gnu.org; Tue, 21 May 2024 19:27:26 -0400 Received: from fout8-smtp.messagingengine.com ([103.168.172.151]:38477) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s9Yt8-0007r1-Tc for 71070@debbugs.gnu.org; Tue, 21 May 2024 19:27:24 -0400 Received: from compute6.internal (compute6.nyi.internal [10.202.2.47]) by mailfout.nyi.internal (Postfix) with ESMTP id BB00E1380362; Tue, 21 May 2024 19:27:11 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute6.internal (MEProxy); Tue, 21 May 2024 19:27:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc :cc:content-type:content-type:date:date:from:from:in-reply-to :in-reply-to:message-id:mime-version:references:reply-to:subject :subject:to:to; s=fm2; t=1716334031; x=1716420431; bh=D6lRNOBhxl /g58bXFKq6PQG8dnyvEkPYkvp07S4LijU=; b=HELzKL0ppc84Qh0aeoGHV1J0iu ZQLTg6s46pjxhhhHYvRjcmTCUcebEKL1icRsM28UcJcwQr3SfAWFwJomXS5O0Vyo 0CZK+QYD9KDxgx0yOfO226fLMqnFORy+x3riNgpbZwweaCM0giE2bIQS5DcxydtC YFF5BZf7WHj7es774NiuIbXyORYRU3B09PlR8BotzBJEbGBJ9i5Xfw2XcjQZqpTa ULTyvTidBnJSs+GlEW6aCY3gizUISpbPBQcQ0cVPoEAlD5O7Dg/eJ35eNkbO6ktX 0DQoR0s/b4PSzjgpTDCMJrKrXHgK2S3VCNZ63wM5cq6Z7AZZ+E25NbSmfqqw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; t=1716334031; x=1716420431; bh=D6lRNOBhxl/g58bXFKq6PQG8dnyv EkPYkvp07S4LijU=; b=DjpK4OLu/VXuS0eIU1sYcC4fHHA88NTtZXEgCtvW+DoE SEEq0Xz/lel7eUzFFEIhCV5DsKT/BKBocobSfVheHyZUV5DTCTPEAN/WWLZaE8EO 8BY1u20/bw7i6d5hJPJ5jX0QcFg/MhUgM7woH/KCyKZFwsA5p0wxDj0yTuDAyvsO HxhwnFaoSj5y2Q2teXOj5Bzu7ez9DgfilLrTc8/0/Z5UXMDYlz5/xsvgD1mZmWrM dl28wxtpWjc4j4VrjGfhx5iUs7nUF+HDin6Fd2K7icDKwkFNdp9etY44DCEtVp7l rM22iBbL8IkixxC20WVgBfCVZOb7u1CeCBE4ZSeKRg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdeifedgvddvucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurheptgfkffggfgfuvfevfhfhjgesmhdtreertddvjeenucfhrhhomhepffhmihht rhihucfiuhhtohhvuceoughmihhtrhihsehguhhtohhvrdguvghvqeenucggtffrrghtth gvrhhnpeehleefudekudduveekieelgfeiffdvkefhkeeljeeujeegueekveffkeejjeev heenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpegumh hithhrhiesghhuthhovhdruggvvh X-ME-Proxy: Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Tue, 21 May 2024 19:27:09 -0400 (EDT) Content-Type: multipart/mixed; boundary="------------hhouM3i4PXQzGnuDXShvyaAh" Message-ID: <05106743-c354-4684-b57f-e6c07f1a6e2a@gutov.dev> Date: Wed, 22 May 2024 02:27:08 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. To: Eli Zaretskii , Ergus References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> <86v839aa3a.fsf@gnu.org> <86seycagbq.fsf@gnu.org> Content-Language: en-US From: Dmitry Gutov In-Reply-To: <86seycagbq.fsf@gnu.org> X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71070 Cc: casouri@gmail.com, 71070@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 (-) This is a multi-part message in MIME format. --------------hhouM3i4PXQzGnuDXShvyaAh Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Hi Eli, On 20/05/2024 14:11, Eli Zaretskii wrote: >> Every editor-ide has its own approach for this. But emacs has it own >> flavor and the ts-* intention was to keep it as close as possible to the >> status-quo; that's why I am reporting it here. >> >> There are many details missing in the c/c++-ts-mode compared to >> c-mode... but I understand that some of them are WIP while others are >> just too complex to port. > I understand all that, but still: can you (or someone else) answer my > question about the accepted practices of IDEs in this matter: do they > highlight the namespace identifiers differently than other > identifiers, or do they use the same highlighting? Does the attached screenshot answer the question? It's from VS Code. --------------hhouM3i4PXQzGnuDXShvyaAh Content-Type: image/png; name="Screenshot from 2024-05-22 02-24-26.png" Content-Disposition: attachment; filename="Screenshot from 2024-05-22 02-24-26.png" Content-Transfer-Encoding: base64 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 lmAmBPu5dkIIIfyqhatseuCoY02DwB8RbyBxuAHzMAOREvhCCNHttSn0cze6eDkfCDaw9Plg fptkCFC1hBBCBEIbRu+oZH+hTZniDTwmgS+EED2O76HvUil1j9M0xxgYEZj6CCGECKC2nZxV o/1nCglATYQQQgScXIZBCCF0REJfCCF0pH2hHywHcYUQoidqw4FccLhvkm7qG6DaCCGECCif Q1/Zr5JTq03HRAWqOkIIIQKphZOzVLIzVI7UqjhOqGR+pFIE0NvAjATp3hFCiJ7Ie+i7VN56 ycWW8w3+FgxzHwlmsbT0hRCiR2qhpW9gxvwgIp1g6gcxwwwkTg5izMDOq5wQQgj/avNVNoUQ QvRcMk5fCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJf CCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJf CCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJf CCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJf CCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJfCCF0REJf CCF0REJfCCF0REJfCCF0REJfCCF0xNiWmR1HYP9JbamJSWAOUKV6mprKcvLP1lLpdEIdENSX 62MjiJBNqldKcS5ff1sDvaK5Ji4WU1dXKECKDqrYFYgZY2BEmP/n70zKWZWiU1BaqYLJQOIE wxW73q5kbQr9/a/DD18GouETOyS3aekrT03JYdZ+mMf7ZbWNnwgazguP38Zs+UV49fVHD7Fp byUMSGPJC2uIDe7qGvmf4zMX0x6po2hIEHu2BTPCh2XsO51Mfw9G3BZM3rNB3aJhVZTt4vFX 69hdBEr9H0cGkbclmAlX4Hq70vWo2FY+h+WvwwUg7XlIiezCylR/xcp3/86e89rDfv3CGGRy /wKCwugnrXx9q1V56ZU6ioAZ9waR1Ne3xZLuDWbGLhe7P3bx7Nwgnp8cyEr6oMjFT5+sI9fd rhkx0kDcEDANM2CWwO+R2hT6fUIhMhqIgD4BqlBLFDukvwOKCSY+1bWhX2z9Ugv8oDDSfvJj 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 zu/8M0ljgpjhbh3nfNH+LhHFqpLjDtqkm6UvXfiP18N8OU9ByqtNLnZWH6zFMDO88fymSNhm C/AtFM2w8jHIfEq7X+/yZFje8PmAXXDNH8JIm5NA7pt/Z091Lbmf7uQHeWHED+gL5yso/LZW u+gZvbn5Rzdzr8dhg/4oo5sJsxAbnk9h5iKe2xtL1OB+cK6QknL3fkzfBKbdf2+z8fmmyY+Q /EkumccqqfjHKl45tIGo6Gj6UMm3xflUnAfj0DSSRn5K9t7izns/wQYWzjDw8gYVR65K9nmY 0Y7bLWRn1WndKSOCWOjD1SOE8JX3lr6itaKVhv8abAGUJs911olVlichazMsnAYxkWDqlgHv xYDrefW+aSwd5b5A2/kq8otPke8O65ABUSz9yTxen9zCaT3+KKM76RXPLY++TtLYaIxVhZQU Wi8Fvmn4Hdz+5KskDfcwoiY4lhsf3URKQjymYOB8MSXHcik8lk/F+RDCLY+w6Mkn6Iobmo2Z GURib8BRx5bP2lFAVR1b/q5NJs0L6tL70MpF3q48LV5aWQROTXU51pMOzpx3Qu8QBg0agiWy b5sGDPqjjO5EKbXy9dfFVBFCeNRErhke4dOYYue5Qr7+Kp+K8zX06hvNoBgLUQO69lPY/auL 3P4hmBKCKfhdULPLhrekLMPJuHUqDrOBrRnGSyNousKWRy5yz2fAiCDy3pMboV8JJPSFCIST LqbPryPbZeDJTUbW+tpF41JZs8DJc19BwnIje+/t2v783OcvMvVPQG8Dv80wsrRnHCYSLZDQ FyJAcl90Mi1dxXRTMAdf8a217/jIybinVMqigtizNbjN99f1N+XvLsY9VEcRYIoysOA2A5YI Ayazgbm3yUXYeiIJfSECpaqO59bVYXUaWPB4MHNbPcFKZftvXGw5AZZUI092ixuRq+x+zsU9 76mN79U7Moi8LdLd0xNJ6AshWqWUqGR/oXLkG5WK86CEG3js3rYdqxDdg4S+EELoSM86OUsI IUSHSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgL IYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgL IYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgL IYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgL IYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgLIYSOSOgL IYSOSOgLIYSOSOgLIYSOGL0/pXIkV6UUA336wYhhBiLDOq9iQggh/M+gqqrq8RlXHffc7GLL +ct/GjEuiMeeCGZpfCfVTgghhF+1EPoqLz/lIuc8lJ5QOXASFICBQXyYEcwMafULIUSP4z30 mziS7mTqiyoOYMGve/H2tADXTAghhN/5fCB3zMwgEntr07avfNpOCCGE6GZ8H70TBpF9tUlH VYBqI4QQIqDaNGTTVD/hkpa+EEL0RDJOXwghdERCXwghdKRtoR+s/ae4AlATIYQQAdeG0Ddg do/Nd5wCR2DqI4QQIoB8D/1gA5ZR2qRirWN7SYBqJIQQImB8PjkLQMl3Me2BOnLPg2mggQWz DCQOM2CKMDDjJgPmQNZUCCFEh7Up9AGUojoeX+1iQ36DP44MIm9LMBOC/Vw7IYQQftXCVTY9 cNSxpkHgj4g3kDjcgHmYgUgJfCGE6PbaFPq5G128nA8EG1j6fDC/TTIEqFpCCCECoQ2jd1Sy v9CmTPEGHpPAF0KIHsf30HeplLrHaZpjDIwITH2EEEIEUNtOzqrR/jOFBKAmQgghAk4uwyCE EDoioS+EEDrSvtAPloO4QgjRE7XhQC443DdJN/UNUG2EEEIElM+hr+xXyanVpmOiAlUdIYQQ gdTCyVkq2RkqR2pVHCdUMj9SKQLobWBGgnTvCCFET+Q99F0qb73kYsv5Bn8LhrmPBLNYWvpC CNEjeb/gmktly2t1WJ1g6gcxwwyM6rcV5967L80SN2sTQ65P66y6CiGE6KBmoX/qcLrHID91 OB3bzkUAmIffjOPEp4AEvxBC9CTNDuTadi7i1OH0Rn9rGPjX/OAXTFjwCdf84Bde5xdCCNE9 eRy90zDImwZ+zI2/BCDmxl9K8AshRA8T/Ktf/epXDf+gonLu5GeUH/sLtd+dwv7ZaqBx4NcL H35Ls/kHjpzZaZUXQgjRNh4P5No/f5qv//7flx57Cnxv89/yhDMA1RRCCOEPzUK/oqKiq+oi hBAiwOSCa0IIoSMS+kIIoSOrQqlDAAAgAElEQVQS+kIIoSOt3hg9PDy8M+ohhBCiE0hLXwgh dERCXwghdERCXwghdERCXwghdERCXwghdERCXwghdERCXwghdERCXwghdERCXwghdERCXwgh dERCXwghdERCXwghdERCXwghdERCXwghdERCXwghdERCXwghdERCXwghdERCXwghdERCXwgh dERCXwghdERCXwghdERCXwghdERCXwghdERCXwghdERCXwghdERCXwghdERCXwghdERCXwgh dERCXwghdMTY2gwVFRWdUQ8hhBCdQFr6QgihIxL6QgihIxL6QgihIwZVVdWuroQQQojOIS19 IYTQEQl9IYTQEQl9IYTQEQl9IYTQEQl9IYTQkVbPyG3IcQT2n9SWmpgE5gBVSvRgtSoH/qWi 9DIwZoIhoN8Rey7Yq4BBkDwhgC+kN524DtvMBWUnVYrOqFyohfAxQUwY2NWV6lna1NLf/zr8 cDr88B7Y7wxUlURPlrvBxdSfuZj/jooS4Nfa/JD2fZz5LAF/LV0Jht0vuZh6r5N73usmI7qr VDb8ysmoH1xkWKqTqT9zMf0hFy/ldXXFep4e1b2jfA733QNp90BmWVfXRjRT5OLnW1SUYAMP Lg0isqvrI9on2MDSB7T1t/t1F9sdXV0h2P28k4c/VCmqBZPZQMJkA3NvMmCRL1mbtal7p08o REYDEdAnQBVqiWKH9HdAMcHEpyBFVni3sv31OnJrwZwUxNKRXV0b0RHmm4J4cHQda46qPPuu ytzlhq6rzPk6tmS76zU5iL2vBjOmd9dVp6drU0s/cS2UnoRSKyS2aXMhrnhFLl76WJtcMD+o e/UDi7YLNrA41YAJOJDhYntVF9blpIqtRptM/FGQBH4H9ajuHdF9ZW+tI9cFjAji3sldXRvh D5HTgpjRF3CobNjVhX37F8Dh0ibN4V24x3GFaLG9rhyBrAIPT5hgyrTWR+84DsE+e4P5nWDd Dtuywe6APpGQOBvSksDk6fWLIOtgg/Ks7gkn2LIhs2ndQmFKoEcVucopOfBXDn9VSNV5MA2y MDphOrERISilVr45WwO9B3H1dbGN35OrnJLDh6kC+kQlMDwixEPhlZy2Wam4CMYBFmKj+zV/ 7Y6UcS6fo18V4wRM0TcTO8TT8poq+6ec+LYG6Meg6xMY7GkF1autY4u7lT/m5iAmBLcwrzfV kLUDsvLAXgYYYegIbZRYiq/r1AGZWyAzDyqcED4CUhZCyphWllPAlgNZuWCzQ0U1YIKhMdr3 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 v65GwYj5mqFMmRDRc296Xfon/uOu1zjkAq65i9+/tZyxvbu6Um3lxFFwkn2HHThqwDR4EJYb oonxw1m1XcJ1jD/ecy+bvgZ6j2X5W7/nrmu6ulJt1U3WyTkHtuMVlJ6tpuysE4xGzFcPYuIE bzdY8aa2+3fviAAxmoiZNIoYH25C0xNUf/lPjrkAQrn5noU9MPABjJhHxZDSyk0weozT+/mn e6DDgNsWkdrjAh+6zTrpbybOYu747SldRd2/e0eI1tVycP9Brff42nksunVAV1dIANX73Rvi Pt/n3xcm0iO3w1ea0v3S0hdXAFcRxwohtP9QEhcv4LpOP1goPDlaUErv0FBGzLyHWS0MYBKd p/rIUenTF0IIPZHuHSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJ fSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJ fSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJ fSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJfSGE0BEJ fSGE0BEJfSGE0BEJfSGE0BEJfSHE/9/e/ce1dd/3Hn8ZuPiYEVfGjiN5xEGu4xhCfC2StBZe 61m+SRs5bW7h9jZBy9JObu/toF1XaHdXs9tuw3fdCt29K7TNZq23NxVZby7yzVyUNl6UOq2R 08TITQhyHcciLrUUTPAJZvhEF+T7h4SNQYAkfvt8no+HHxZI5+grfdH7fM/3+z1fCR2R0BdC CB2R0BdCCB2R0BdCCB2R0BdCCB2R0BdCCB2R0BdCCB2R0BdCCB2R0BdCCB2R0BdCCB2R0BdC CB2R0BdCCB3JWewC3DhG6e/9Da/9K/Bba9hVeNNiF0gIISaR0J8zw/zkxz/mL3qBjTs49gfb WLfYRRJCiAl0F/rdL/r4Ts8oK/Nv5Qt7t1K42AUSc+L0oa/z/c5L5K79XT7zhfswLXaBhFii dNanP8qF3nM8Gwxx+FdvcyG22OURc+Xtrp9y9PmjHDn2K94eXezSCLF06Sz0hRBC3yT0hRBC R5ZVn/5gJMSzvzpPd/8wF0ZGWZmTx80FBkqKNrLrNgOrkxzC+ntDdL4z9tMo3e8kzv1HLnE8 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 f38/x0PnOd6bCPzcm9hx7wc5lFLgAxhwPPLv+dbuzewy5l2bmTOT1Ztp/OR9fNYcnzH07pBK oLefN4ZGWW3cSuPv/c6EFT6XttxNFXzj4Hf54kfvji+fHB0i/HoXXa+cjgd+dj5FOx7mMVuy ufz53P2Hf8d3ax+ktAAgysDZLrpeSwR+dgFb9n6Rv5sy8OP72FXXSM0HE908o1EG3uyhp3cI Nt3HF//7ASrT+i5LExV//V0O/KcHsd5uIn+GJaGF0Ksl39K/ZpT+vn5eu3CJQW0EcnJYvWYd d264Nnd/oQwOvEUgfJHBkZXcfMstWIyJqaPLVXSAnlO/4s3w21waWclNa03cVlxK0UwDJACj Q4RPvRpfTz+x7ZbSUkxpnLQMvdnFq6+HeXs0l7W3beHuraYbcoqnEEvBMgp9IYQQs7Xku3eE EELMHQl9IYTQEQl9IYTQEQl9IYTQEQl9IYTQEQl9IYTQEQl9IYTQEQl9IYTQkSUb+l1dXVcv FBNCCDE3lmzoCyGEmHsS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kII oSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kII oSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kII oSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kII oSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSMS+kIIoSM5i10A kYaRCIGebi7GYI3RhmX1YhdongwG8feHQSnBssGIsgBPqfb5CQ6BYrBgKViIZxxH6jWpRa2T G5i09OeQFvHi+oUL1y88BLTM9hE67Yrv46SfyMQ7B9uoe3IPe57cS/2pSffeGGJBmn5YRvkT e6nvubwggQ9AXzMVT5RT9kQ9/uhCPWmC1Gtyi1knNzAJ/TkTwtVeyb5n9lFzIoiSm8Euhlqp P7SPfc/so+nXlzHMeRmXvsjJehrOa2CopuF95gV7XkNJPXVGBdQWao8FF+x59SKTepU6mR8S +nNE62mhpVcDDNit1RRn8M4GX2rGowE5Nqp32haulbtURP00/syDioLt3mqsC9n5mFWMc2cF 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 GsFhE5XbqyHPNmkgLyWxEJFcO9XbQbm1WgJfCKF7S7qlL4QQYm4t+YFcIYQQc2cJd+8IIaYX xPOCh+DoLHbxW1ac75M593oioS/EchXTuHgxlN6yGxMoI/N3wZlYmqRPXwghdET69IUQQkck 9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck 9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck 9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck 9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck9IUQQkck 9IUQQkck9IUQQkck9IUQQkdWXLly5cpiF0IIIcTCkJa+EELoiIS+EELoiIS+EELoiIS+EELo iIS+EELoSM7Ud13h1PErhFnBqtVQdOsKjDctXMGEEELMvamnbI7G+P1dozw5fO1XRXdl8cU/ yeazJQtUOiGEEHNqmtC/wt9+ZRT/MITPXeHkr0EDWJvFP3uyeUBa/UIIseykfHHWKfcIH2i6 ggo88tf/hv913zyXTAghxJxLeSB3694srLnx28EzchGvEEIsR6nP3rkJjHnxm+qleSqNEEKI eZXWlE1l7MaotPSFEGI5knn6QgihIxL6QgihI+mFfnb8P210HkoihBBi3qUR+iswJObmq2+B Oj/lEUIIMY9SD/3sFVhuj9/UAjEOnZ+nEgkhhJg3aX1zltY9yn2fiXF8GJS1K3jkwRVYb12B sm4FD3xwBYb5LKkQQohZS/vrErWeGF+uH+U73eN+uTmLl57MZnv2HJdOCCHEnJpmlc0k1Bj/ dVzgF5WswLpxBYZbV2CUwBdCiCUvrdA/7hrlb7uB7BV89m+y+bvdK+apWEIIIeZDGrN3rvD8 y/FbSskKviiBL4QQy07qoT96hXBinqbBvIKi+SmPEEKIeZTexVnvxv9TVs5DSYQQQsw7WYZB CCF0REJfCCF0JLPQz5ZBXCGEWI7SGMgFNfEl6UrePJVGCCHEvEo59LXOK/ij8dvmDfNVHCGE EPNpmouzrvC85wqnoldQz13B++Mr9ADkruCBHdK9I4QQy9HUoT96he99c5Qnh8f9Lhs+9oVs PiUtfSGEWJamXnBt9ApPNscIjICyGsy3rmB75Ifc8qWqqw8xfPsJ8j7+ewtVViGEELM0KfSH n/pB0iAffuoHqH/4KAC5O3+X6LGfAhL8QgixnEwayFX/8FGGn/rBdb8bH/j5X/oq6/7v8+R/ 6atTPl4IIcTSlHT2zvggnxj4q7/8NQBWf/lrEvxCCLHMZH/ta1/72vhfXAGiHUfR2g8xeuEt Lh3YD1wf+GNW7vzdSY9X7n9wYUouhBAibf8fs3j440aYT8gAAAAASUVORK5CYII= --------------hhouM3i4PXQzGnuDXShvyaAh-- From debbugs-submit-bounces@debbugs.gnu.org Wed May 22 02:24:56 2024 Received: (at 71070) by debbugs.gnu.org; 22 May 2024 06:24:56 +0000 Received: from localhost ([127.0.0.1]:53733 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s9fPE-0006gr-GF for submit@debbugs.gnu.org; Wed, 22 May 2024 02:24:56 -0400 Received: from mail-oi1-f178.google.com ([209.85.167.178]:58819) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s9fPC-0006gf-FA for 71070@debbugs.gnu.org; Wed, 22 May 2024 02:24:55 -0400 Received: by mail-oi1-f178.google.com with SMTP id 5614622812f47-3c99e6b8b1fso3116959b6e.1 for <71070@debbugs.gnu.org>; Tue, 21 May 2024 23:24:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1716359023; x=1716963823; 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=1aN91pm/NzrBEdLjTUigkWFc/H/xiC0tbvu/HMrS3sM=; b=JUfWUrjD9CGjW/6GbMagySX4XF7yosgY0g2X6jz0ownKPKNT0a+t0pYYQoA/b5s09X WzRC4Wp0LdJP0AJBKbcK46NFUn99qOGEw56LDQiccqgT1ZF/EcW7fw3g4Qd05rT1+DXg E8y87WNfrXjlhl4S0u2B7+6CZAMutabrxaWEjO/awXcxskfu/JXLkemxEB86Psk2Y3qm XQ/RapcfaZTv/JFNv+Qkn38byaLQ49eACole0OvYkNAZq/W6nmyBB2BHmTqeTfQGWOXc ctg7Ri0bP4QKEOttr7jamc90xtcfGWWoGne903INMO7Ky3V4EH16J9m8UJr6TVAufmkY tudA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1716359023; x=1716963823; 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=1aN91pm/NzrBEdLjTUigkWFc/H/xiC0tbvu/HMrS3sM=; b=wmG1/LBxnn0H3sVcLCSTYoG7xzrd/U3mAHqBjnZGdjERQj0XP7bPLAvYSLs8RbX8mG BHp8CumSgerewZVqWzk0DDFX7JqwmXAlKi1oi7Rr6tYVf1fSwVxQZ40cwl2w31aSbWBO D+m2phmU0zHabR7RAdYV1Adnw8uCDkLaZCqQ/sS0ExXAjIuv0be7rr8ngrBWxCwlUiGs eUk+mYb7XRO8lAJTx1mCP9efwum5fFStTxPXQDWmPQlWsrS3PkULJnONdMz2pwb6iV3a dpXTSX2CbcQdxMdh7N4yf/LHJ92F7SMDSeK6+Kxzu/rCt6XhKPfFsggOQpXyTs2Eln3J S3ww== X-Forwarded-Encrypted: i=1; AJvYcCX9xmdNAl3QZYaQNL3nY2r2AUtfvJiswUQIs4HiAR7ZbkhThc+CKS6Sarl1/FxPzf097KBVYaoGln0payBOlC9NclCG/eY= X-Gm-Message-State: AOJu0Yyt65Ka3IHr4lvFegv6PT1WznRhsxzkHYrJBaKpt1RK9Suqmkh2 BgANMKrhdHLZPULWEiWoON8d2rZLFo8UyQ10LR8FpdRd+seXHvfC X-Google-Smtp-Source: AGHT+IHAfYgNiG2XWHWR5cUbHOTN++v2ze89ppzUpKYFAUuvfPJYaGtlNX0c9EQoXZa81De679VyCw== X-Received: by 2002:aca:1105:0:b0:3c9:95a2:47f1 with SMTP id 5614622812f47-3cdb3d6e559mr1674613b6e.3.1716359023221; Tue, 21 May 2024 23:23:43 -0700 (PDT) Received: from smtpclient.apple ([2601:641:300:4910:d47e:183a:1bb4:b282]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-6f4d2af2bc1sm21734971b3a.164.2024.05.21.23.23.42 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 21 May 2024 23:23:42 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3731.700.6.1.1\)) Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. From: Yuan Fu In-Reply-To: <05106743-c354-4684-b57f-e6c07f1a6e2a@gutov.dev> Date: Tue, 21 May 2024 23:23:31 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> <86v839aa3a.fsf@gnu.org> <86seycagbq.fsf@gnu.org> <05106743-c354-4684-b57f-e6c07f1a6e2a@gutov.dev> To: Dmitry Gutov X-Mailer: Apple Mail (2.3731.700.6.1.1) X-Spam-Score: 0.7 (/) X-Debbugs-Envelope-To: 71070 Cc: Eli Zaretskii , Ergus , 71070@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: -0.3 (/) > On May 21, 2024, at 4:27 PM, Dmitry Gutov wrote: >=20 > Hi Eli, >=20 > On 20/05/2024 14:11, Eli Zaretskii wrote: >>> Every editor-ide has its own approach for this. But emacs has it own >>> flavor and the ts-* intention was to keep it as close as possible to = the >>> status-quo; that's why I am reporting it here. >>>=20 >>> There are many details missing in the c/c++-ts-mode compared to >>> c-mode... but I understand that some of them are WIP while others = are >>> just too complex to port. >> I understand all that, but still: can you (or someone else) answer my >> question about the accepted practices of IDEs in this matter: do they >> highlight the namespace identifiers differently than other >> identifiers, or do they use the same highlighting? >=20 > Does the attached screenshot answer the question? It's from VS = Code. I went ahead and made c++-ts-mode fontify namespaces in constant face. = But feel free to revert or change my commit. (It=E2=80=99d be better if someone can add a new builtin face for = namespace and make it inherit from constant face, like what we did for = property face, etc.) Yuan= From debbugs-submit-bounces@debbugs.gnu.org Wed May 22 08:17:30 2024 Received: (at 71070) by debbugs.gnu.org; 22 May 2024 12:17:30 +0000 Received: from localhost ([127.0.0.1]:55594 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s9kuQ-00022C-2C for submit@debbugs.gnu.org; Wed, 22 May 2024 08:17:30 -0400 Received: from eggs.gnu.org ([209.51.188.92]:43028) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s9kuL-000226-7K for 71070@debbugs.gnu.org; Wed, 22 May 2024 08:17:28 -0400 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 1s9kuA-00032A-05; Wed, 22 May 2024 08:17:14 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=tXhKkL/qwcirHL8N5TFTX5Bhi/wBjkbPYUlI2ISXKlE=; b=UOH9yZLaZQ4T lt5nBBwiX1vybv1EIvZ7AfwGP6IFuHasNgUzNWP+/u/vojOfSRm11Fsu1MZjpG7eKoSXkjFYC/mJW bNmUrUuYrNwMaELLqoe0YdxDOwxcAlF+ZgtMCYRA4Fq3ieKrZQ+sujKfyjF8+RFNowKaU67ul3cRd s0tDxXBkHW2LbUpxkchciVfb81XZz16Hm+1rTQcoh+oC5hw7GqmzdkRdmoq2jYHsiR0iOn3agiGyF soOFfEGE9Y8XZZcvPmzhC5r9di3WJrE1jRs1zfChQ7WC+FfjNDpaxxIyDCoWM7os7gDxb/U3FsaOa /CA91nsnD8p/dS1V1Ml/Ag==; Date: Wed, 22 May 2024 15:17:09 +0300 Message-Id: <86plte6ny2.fsf@gnu.org> From: Eli Zaretskii To: Dmitry Gutov In-Reply-To: <05106743-c354-4684-b57f-e6c07f1a6e2a@gutov.dev> (message from Dmitry Gutov on Wed, 22 May 2024 02:27:08 +0300) Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> <86v839aa3a.fsf@gnu.org> <86seycagbq.fsf@gnu.org> <05106743-c354-4684-b57f-e6c07f1a6e2a@gutov.dev> X-Spam-Score: -1.6 (-) X-Debbugs-Envelope-To: 71070 Cc: spacibba@aol.com, casouri@gmail.com, 71070@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: -2.6 (--) > Date: Wed, 22 May 2024 02:27:08 +0300 > Cc: casouri@gmail.com, 71070@debbugs.gnu.org > From: Dmitry Gutov > > > I understand all that, but still: can you (or someone else) answer my > > question about the accepted practices of IDEs in this matter: do they > > highlight the namespace identifiers differently than other > > identifiers, or do they use the same highlighting? > > Does the attached screenshot answer the question? It's from VS Code. Thanks. Not sure I get it completely. It seems like namespace names are fontified like class names? They are not fontified like constants. From debbugs-submit-bounces@debbugs.gnu.org Wed May 22 09:33:40 2024 Received: (at 71070) by debbugs.gnu.org; 22 May 2024 13:33:40 +0000 Received: from localhost ([127.0.0.1]:55993 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s9m68-0002ws-5i for submit@debbugs.gnu.org; Wed, 22 May 2024 09:33:40 -0400 Received: from fhigh6-smtp.messagingengine.com ([103.168.172.157]:50111) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s9m63-0002wk-TG for 71070@debbugs.gnu.org; Wed, 22 May 2024 09:33:39 -0400 Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailfhigh.nyi.internal (Postfix) with ESMTP id 93C9F1140193; Wed, 22 May 2024 09:33:24 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Wed, 22 May 2024 09:33:24 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm2; t=1716384804; x=1716471204; bh=XZ00NmgsqBobSRla1cMrbhPF50sYmM1qfg2ZtdNoirw=; b= GMomUEwYVMJA1uu/jZ8ypURGRrnsnlRH3PtdtRzlx2Ci+mgMkBO7wV9F6rq74Tl0 Ws6eflzkwivX5F3kvmROHub/x4X2kTWMlIz+c1tWJFcZ6f+9dshJsemD178S0AaF 5zAJKEyOXzn+JmjhHOptHaZNZCCket8kowH/C284avW8Jt4WOYoDMEANMwrZuwnn P1xsY4pia9dUGmVWJm6dLifbYktmdTqIJMGQpg3zjgutndiYZdprR64oEpvBxJFx o6+iH0DBvFPTdJUvK2vr4F0qPuA5JUplEkGwyXRSmQ6t0H989kyxU889d4UUOubJ IROqfnkguOxsl+2yCH18QQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1716384804; x= 1716471204; bh=XZ00NmgsqBobSRla1cMrbhPF50sYmM1qfg2ZtdNoirw=; b=E kb4ExQlebn34e/ipfgtIfsPrl76xxLLFL958Dn5v/qx2cAJ00rzgkkPwOsF6rD7A Suj2EKirp6tBOXui+epZtENnK8jzEZ0coZrCjGp7oqwj9sdsAobT58BL6OVu8TYT liD+++KMQX2AqU4OjNt8EAcDydneQEvL9Yito18JrpB/tp9YOZFvmpIcCUC2IWYn jVRgFb7mSDKiIOs6tOUre65WsRubHQAcbkvuyyisTGYKu2jIJMu4EeovkIYljNdk JoveszXjjeA1pRWjeNSN+ojXsndgO+oqptZyqZZ6AAjEfH4xCft31hELEuQygNwa 9YToXXTg6ho/V2HOqjA+A== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdeigedgudehucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfuffvvehfhfgjtgfgsehtjeertddtvdejnecuhfhrohhmpeffmhhi thhrhicuifhuthhovhcuoegumhhithhrhiesghhuthhovhdruggvvheqnecuggftrfgrth htvghrnhepteduleejgeehtefgheegjeekueehvdevieekueeftddvtdevfefhvdevgedu jeehnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomhepug hmihhtrhihsehguhhtohhvrdguvghv X-ME-Proxy: Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 22 May 2024 09:33:23 -0400 (EDT) Message-ID: <75899b79-dfec-44dc-adfc-389f046bcd7b@gutov.dev> Date: Wed, 22 May 2024 16:33:21 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. To: Eli Zaretskii References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> <86v839aa3a.fsf@gnu.org> <86seycagbq.fsf@gnu.org> <05106743-c354-4684-b57f-e6c07f1a6e2a@gutov.dev> <86plte6ny2.fsf@gnu.org> Content-Language: en-US From: Dmitry Gutov In-Reply-To: <86plte6ny2.fsf@gnu.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71070 Cc: spacibba@aol.com, casouri@gmail.com, 71070@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 22/05/2024 15:17, Eli Zaretskii wrote: >> Date: Wed, 22 May 2024 02:27:08 +0300 >> Cc:casouri@gmail.com,71070@debbugs.gnu.org >> From: Dmitry Gutov >> >>> I understand all that, but still: can you (or someone else) answer my >>> question about the accepted practices of IDEs in this matter: do they >>> highlight the namespace identifiers differently than other >>> identifiers, or do they use the same highlighting? >> Does the attached screenshot answer the question? It's from VS Code. > Thanks. Not sure I get it completely. It seems like namespace names > are fontified like class names? They are not fontified like > constants. Seems like it (although some themes might use some additional colors to differentiate between these two, the default theme does not). Perhaps it is done so that the expression foo::class_name reads naturally (in one color). From debbugs-submit-bounces@debbugs.gnu.org Thu Jun 06 01:30:05 2024 Received: (at 71070) by debbugs.gnu.org; 6 Jun 2024 05:30:05 +0000 Received: from localhost ([127.0.0.1]:39250 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sF5hN-0007G6-2U for submit@debbugs.gnu.org; Thu, 06 Jun 2024 01:30:05 -0400 Received: from mail-pl1-f179.google.com ([209.85.214.179]:43059) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sF5hK-0007Ey-CW for 71070@debbugs.gnu.org; Thu, 06 Jun 2024 01:30:03 -0400 Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-1f67fa9cd73so12263805ad.0 for <71070@debbugs.gnu.org>; Wed, 05 Jun 2024 22:29:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1717651722; x=1718256522; darn=debbugs.gnu.org; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:from:to:cc:subject:date:message-id:reply-to; bh=6iv64Y4fMjn25dc2d3zx6dbbhKU4Xqt5LztC7V1gLRY=; b=j7SijZsiX7slHnmY9X3aIZNDQ6E29Z9hO6SH7Y6WMKNZ6/Q2ljbyDvPHEzdwXJyDRq MQjsOws9VLSHWpnjRZcNwdd/wdhSJmbqeAVaZa/LK8S0MxgEgLX8qZr2YLzP8RZLz3C0 IrVS3XiFDS9TqvpDjue2jkUmHlS1qSTEonilJ46ZRV9rlA7UAkuCR1hblTp3EBcYEtrr oFMG+Oh3tvGQxI5PYT2vYiaxoh1rq58ls5NBrMDEkD7RGQ44KPfIlXd80UcvC/0XXz6N UPGey19dT92rDdTMQt9rlN9/s/AdwtBgBiWzwsZNTs/OijF26or0TuTiSmrKNzKVxUw4 cv7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1717651722; x=1718256522; h=references:to:cc:in-reply-to:date:subject:mime-version:message-id :from:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=6iv64Y4fMjn25dc2d3zx6dbbhKU4Xqt5LztC7V1gLRY=; b=kfQUORdVR+HFMFQtsUypEcN0XutW/2PYEhXg6H/6VH8dsWaxQXhpkgIO5FtQls0ze9 ohKOdNqjH7i+JbDGkEPiQdwH1mlZFq7G8L0jakQTGLfFLGeTBJ71WF1ijFVbrfiKJ60K 4INukaiwTUjdt0/46aHPfhO7S1rtSJtci2T1Wi8jaPrnxeZxwaIGmoVLsNY6g05VIYVB qsc7/qfDvYxF3LGkAXHRai3DbwFow3Hw+KtKQA2udgqngWROPsJI/IbeNHSI4qIt4AiA okeWtJrnY1lEb1i5Id0NWnEhBR323KDvJXvrUTCkh8HdvKcZAX24WeHvjMA9XkaPxPWw P3kQ== X-Forwarded-Encrypted: i=1; AJvYcCUA59bLuCfLd+fQ751mphpZl41pUPPXbw/J0FepHqbVNRknOqvJM4VXpuAnldHxhCpGS7Z6HsIm6T9UXmh0RzNxaZ1OPV4= X-Gm-Message-State: AOJu0YwyBaRcEryM2TUwYVcyHoZZHI9cEgTDO0lYmkdpozemphg+3C1/ X6YRhbgDPenAdI0IDWHjg1DGowo2e25bxwcMahv3t/7m8bsWkCVZ X-Google-Smtp-Source: AGHT+IEtMwVn4zeHn25WHcpuYChAwqmRkH2MKj38WTPAAEI1Yxnwb5WbM7UFarSlr9TObOrM1Ro8og== X-Received: by 2002:a17:902:f54e:b0:1f3:7da:b0f5 with SMTP id d9443c01a7336-1f6b8eed438mr24088585ad.22.1717651722050; Wed, 05 Jun 2024 22:28:42 -0700 (PDT) Received: from smtpclient.apple ([2601:646:8f81:f810:6d47:6e61:bc5f:51a3]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-1f6bd80de1esm4865215ad.294.2024.06.05.22.28.40 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 05 Jun 2024 22:28:41 -0700 (PDT) From: Yuan Fu Message-Id: Content-Type: multipart/mixed; boundary="Apple-Mail=_48E992FE-94CE-49BF-8D82-ED64EF95180B" Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.600.62\)) Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. Date: Wed, 5 Jun 2024 22:28:30 -0700 In-Reply-To: <75899b79-dfec-44dc-adfc-389f046bcd7b@gutov.dev> To: Dmitry Gutov References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> <86v839aa3a.fsf@gnu.org> <86seycagbq.fsf@gnu.org> <05106743-c354-4684-b57f-e6c07f1a6e2a@gutov.dev> <86plte6ny2.fsf@gnu.org> <75899b79-dfec-44dc-adfc-389f046bcd7b@gutov.dev> X-Mailer: Apple Mail (2.3774.600.62) X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 71070 Cc: Eli Zaretskii , Ergus , 71070@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 (-) --Apple-Mail=_48E992FE-94CE-49BF-8D82-ED64EF95180B Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 > On May 22, 2024, at 6:33=E2=80=AFAM, Dmitry Gutov = wrote: >=20 > On 22/05/2024 15:17, Eli Zaretskii wrote: >>> Date: Wed, 22 May 2024 02:27:08 +0300 >>> Cc:casouri@gmail.com,71070@debbugs.gnu.org >>> From: Dmitry Gutov >>>=20 >>>> I understand all that, but still: can you (or someone else) answer = my >>>> question about the accepted practices of IDEs in this matter: do = they >>>> highlight the namespace identifiers differently than other >>>> identifiers, or do they use the same highlighting? >>> Does the attached screenshot answer the question? It's from VS Code. >> Thanks. Not sure I get it completely. It seems like namespace names >> are fontified like class names? They are not fontified like >> constants. >=20 > Seems like it (although some themes might use some additional colors = to differentiate between these two, the default theme does not). >=20 > Perhaps it is done so that the expression foo::class_name reads = naturally (in one color). Am I missing something? I got the exact opposite conclusion from the = screenshot: it seems the effect is that namespaces are colored = differently from class names: --Apple-Mail=_48E992FE-94CE-49BF-8D82-ED64EF95180B Content-Disposition: inline; filename*=utf-8''Screenshot%202024%2D06%2D05%20at%2010.27.31%E2%80%AFPM.png Content-Type: image/png; x-mac-hide-extension=yes; x-unix-mode=0644; name="=?utf-8?Q?Screenshot_2024-06-05_at_10=2E27=2E31=E2=80=AFPM=2Epng?=" Content-Transfer-Encoding: base64 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 U336pGCRP5YD7pPUrcrLA/+Q6R7+u7r/acFkVnvwT/svZLcGrd5PDAUAAACKZVhJZk1NACoAAAAI AAQBGgAFAAAAAQAAAD4BGwAFAAAAAQAAAEYBKAADAAAAAQACAACHaQAEAAAAAQAAAE4AAAAAAAAA kAAAAAEAAACQAAAAAQADkoYABwAAABIAAAB4oAIABAAAAAEAAAGcoAMABAAAAAEAAACyAAAAAEFT Q0lJAAAAU2NyZWVuc2hvdLLv+Q0AAAAJcEhZcwAAFiUAABYlAUlSJPAAAAHWaVRYdFhNTDpjb20u YWRvYmUueG1wAAAAAAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRr PSJYTVAgQ29yZSA2LjAuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5v cmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRm OmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhp Zi8xLjAvIj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjE3ODwvZXhpZjpQaXhlbFlE aW1lbnNpb24+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj40MTI8L2V4aWY6UGl4ZWxY RGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpVc2VyQ29tbWVudD5TY3JlZW5zaG90PC9leGlmOlVz ZXJDb21tZW50PgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1w bWV0YT4K/f0FhAAAABxpRE9UAAAAAgAAAAAAAABZAAAAKAAAAFkAAABZAAAv3/8uYv4AAC+rSURB VHgB7H0Hd1zHmeXt3Gh0I6dGzoEAEUmKycpUlmXL1jjMjo9nZ/YnzfHZ3TOzZ3ad1mPL8sqyZI+C JVGSKREgSCKDyEAD3cid89tbrwEGgCAaqQWR9c4hG2h0v6p3X7269X3f/b7SKDwgD4mAREAiIBGQ CBwxAhpJOEeMsDy9REAiIBGQCKgISMKRA0EiIBGQCEgEUoKAJJyUwCwbkQhIBCQCEgFJOHIMSAQk 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 --Apple-Mail=_48E992FE-94CE-49BF-8D82-ED64EF95180B Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii Yuan --Apple-Mail=_48E992FE-94CE-49BF-8D82-ED64EF95180B-- From debbugs-submit-bounces@debbugs.gnu.org Thu Jun 06 16:26:37 2024 Received: (at 71070) by debbugs.gnu.org; 6 Jun 2024 20:26:37 +0000 Received: from localhost ([127.0.0.1]:39297 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sFJgz-0005MQ-6r for submit@debbugs.gnu.org; Thu, 06 Jun 2024 16:26:37 -0400 Received: from wfhigh2-smtp.messagingengine.com ([64.147.123.153]:59807) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sFJgw-0005M6-GP for 71070@debbugs.gnu.org; Thu, 06 Jun 2024 16:26:35 -0400 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailfhigh.west.internal (Postfix) with ESMTP id 5FD5C18000DF; Thu, 6 Jun 2024 16:16:22 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Thu, 06 Jun 2024 16:16:22 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gutov.dev; h=cc :cc:content-transfer-encoding:content-type:content-type:date :date:from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to; s=fm3; t=1717704982; x=1717791382; bh=bziYB+qrcXgwfVyaa/+qMr15BoGgvERWX+KzdOHcrXo=; b= LhCWR5/Va7g8al4g6lVxaPW1WKvXMXX4n4868Xtf3PfhsVlgbXd8UQ1vIwjSxvH7 1uVe2tMaOM3W/npLcwxsgy9wukaTS6Sy/rFgq7QMIPd2pVj5nPw33Ox0Sd6UMbCv mlAxOpaiTj3pE4xgJFCa5SegU/+0qKT1y6dhgqzh0WYRy0pOYoAHFws8k9Xnutaa qApsqeDCJKogwn/88sPvw5n0raf1MzX1x4KusbMWT+tdF/IZhdk0qefCUni6F6l6 TqIMH8X5olz1TNiok4k5qg7U/mihRMtQ0QizTDW7N0J5qZdt5n00Hh1MB9F49JnV VvLnU5R0ZFpL809kLPOD1Q== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:content-type:date:date:feedback-id:feedback-id :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t=1717704982; x= 1717791382; bh=bziYB+qrcXgwfVyaa/+qMr15BoGgvERWX+KzdOHcrXo=; b=P ekmu+Gno1mJiR5iJLihKMHCJw9xTHW1sYxibPlPbY57knD93GZn+3Wn/gGiXlchS 9N/C358rC67VbJKkCRdSRo0Ztn+Pg/kKjo4xIzt5L48K4OGxEnNdBDp9whCG0Qi6 spi1TPWmAHIJ9DypEunHODWMyXSczCI67CGuCZGNVF0g8L6cmdHNkBoxMLZdl53L 8cO2T2SNGvPkpwtxUaXQQ/UMpz7iirR/rMb8lRZefsVaSCIU7mnsIFzxskKGr3OP 7G5hkxrHcGYN4F/3yCiPTtTFCIJ0kboGeWdJNroKjT0uTqke14i16jchBn7b51CH 5fMbT3RS+ez9sdIKOysIA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvledrvdelkedgudegiecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpefkffggfgfuvfevfhfhjggtgfesthejredttddvjeenucfhrhhomhepffhm ihhtrhihucfiuhhtohhvuceoughmihhtrhihsehguhhtohhvrdguvghvqeenucggtffrrg htthgvrhhnpeetudeljeegheetgfehgeejkeeuhedvveeikeeufedtvddtveefhfdvveeg udejheenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpe gumhhithhrhiesghhuthhovhdruggvvh X-ME-Proxy: Feedback-ID: i0e71465a:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 6 Jun 2024 16:16:20 -0400 (EDT) Message-ID: Date: Thu, 6 Jun 2024 23:16:18 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. To: Yuan Fu References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> <86v839aa3a.fsf@gnu.org> <86seycagbq.fsf@gnu.org> <05106743-c354-4684-b57f-e6c07f1a6e2a@gutov.dev> <86plte6ny2.fsf@gnu.org> <75899b79-dfec-44dc-adfc-389f046bcd7b@gutov.dev> Content-Language: en-US From: Dmitry Gutov In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 71070 Cc: Eli Zaretskii , Ergus , 71070@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 (-) On 06/06/2024 08:28, Yuan Fu wrote: >> Seems like it (although some themes might use some additional colors to differentiate between these two, the default theme does not). >> >> Perhaps it is done so that the expression foo::class_name reads naturally (in one color). > Am I missing something? I got the exact opposite conclusion from the screenshot: it seems the effect is that namespaces are colored differently from class names: The class names I meant are A and B on my screenshot. Maybe tree-sitter doesn't see them as class names specifically, just non-primitive identifiers in type position. From debbugs-submit-bounces@debbugs.gnu.org Sat Jun 15 04:34:38 2024 Received: (at 71070) by debbugs.gnu.org; 15 Jun 2024 08:34:38 +0000 Received: from localhost ([127.0.0.1]:54223 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sIOrt-0004vt-Ms for submit@debbugs.gnu.org; Sat, 15 Jun 2024 04:34:38 -0400 Received: from eggs.gnu.org ([209.51.188.92]:48886) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sIOrr-0004vY-LB for 71070@debbugs.gnu.org; Sat, 15 Jun 2024 04:34:36 -0400 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 1sIOrk-0006PZ-Ps; Sat, 15 Jun 2024 04:34:28 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=XDyrtSAgmL2QYXbPtpracoeArT3zQ8tRLdPADZPIjK4=; b=rYD4lMZHlKWV NQJn5wo2f6c/9gPoyOhq5PVdYY8YQ+ZzSvzAxWHcaeV6jRmPUyt89iagfCuOW2Rnb+j3OoVeEh3Sw LmCluR36eF2u04/omtvWGgTXKaF/ljqSRnkFLEkwLcgptMdfMAXqCzHWEB5WAZPvKb5fve38KZgLI mds6gSgE63LnK22UZWy0BmQETndZL5HMDKBy55QksZ5tTyUG6ylw51cbzpNkjChhcM+rb2BMRu/w+ EIi16mTtFynj/MWyxJfrPzYrfIXtpCUT7wsb8VQN4j6h9MnyOWdwgbIFPsT5g83JakZoSRPuN/aIB rq5AGCfrH0vsTAXUgj1MzQ==; Date: Sat, 15 Jun 2024 11:34:25 +0300 Message-Id: <86le36vc32.fsf@gnu.org> From: Eli Zaretskii To: casouri@gmail.com, Dmitry Gutov In-Reply-To: (message from Dmitry Gutov on Thu, 6 Jun 2024 23:16:18 +0300) Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> <86v839aa3a.fsf@gnu.org> <86seycagbq.fsf@gnu.org> <05106743-c354-4684-b57f-e6c07f1a6e2a@gutov.dev> <86plte6ny2.fsf@gnu.org> <75899b79-dfec-44dc-adfc-389f046bcd7b@gutov.dev> X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 71070 Cc: spacibba@aol.com, 71070@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 (---) Ping! Can we please make some progress here? > Date: Thu, 6 Jun 2024 23:16:18 +0300 > Cc: Eli Zaretskii , Ergus , > 71070@debbugs.gnu.org > From: Dmitry Gutov > > On 06/06/2024 08:28, Yuan Fu wrote: > >> Seems like it (although some themes might use some additional colors to differentiate between these two, the default theme does not). > >> > >> Perhaps it is done so that the expression foo::class_name reads naturally (in one color). > > Am I missing something? I got the exact opposite conclusion from the screenshot: it seems the effect is that namespaces are colored differently from class names: > > The class names I meant are A and B on my screenshot. > > Maybe tree-sitter doesn't see them as class names specifically, just > non-primitive identifiers in type position. > From debbugs-submit-bounces@debbugs.gnu.org Wed Jun 19 02:29:10 2024 Received: (at 71070) by debbugs.gnu.org; 19 Jun 2024 06:29:10 +0000 Received: from localhost ([127.0.0.1]:34526 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sJoog-0001PV-Er for submit@debbugs.gnu.org; Wed, 19 Jun 2024 02:29:10 -0400 Received: from mail-pf1-f182.google.com ([209.85.210.182]:46502) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sJooe-0001PI-Ey for 71070@debbugs.gnu.org; Wed, 19 Jun 2024 02:29:09 -0400 Received: by mail-pf1-f182.google.com with SMTP id d2e1a72fcca58-705d9f4cd7bso3861334b3a.1 for <71070@debbugs.gnu.org>; Tue, 18 Jun 2024 23:29:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1718778480; x=1719383280; 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=Wr0ue4eO19DHm8NfDgt3yGLeWmbvnlWdWDQlvt+c9EU=; b=U60jVWcWNUi+QYllst0d6EhCt8aLWKJ6WgvTB2sN+lqlGV3hTqwENsUgv2eYU4lxP4 AQpKz7LD6XF6WU8Q4a00BGToDAN6o3sc0gN4Tbt2hbe/750wxj4IXstWrQA4vaf1k7Sn yMLtCkdGt6tieqGmKufrsKM3Kxdjue+7v7Y3Y1xjB9plRRJpZH8GgjEHeCEIKaY+IE8k kQMM5nlAYfQxJvHFzNAHirC5I0pOGoL3ks8Witocc4tj0c9Gks804N/fpgUKR0h0T49Z CsCos+roO9RROPfebbPRpQ4Ey+rC0yL0rg1CJdUkYD5dl4t9ThRNnbKW/xujv4dGFuZi jqfA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718778480; x=1719383280; 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=Wr0ue4eO19DHm8NfDgt3yGLeWmbvnlWdWDQlvt+c9EU=; b=n7O7bj0gfzY33elemOB8KwFTJP7LZTolmwy/qpFqSok88ELAzmKqG7kB7doDU3mJzb 6aho3qy7YhgXbueNXi0QgCZ97vcUpKJiO+LISXl2iHBCuS2XqRU2d2Ud4WtKDkXxttka VAFc2dt8phbEBRBziZEV0EYG5TuvHQzPlWkI7s2ZYxBaYEWLz1LtEy7WzuDNCFgQ9HAl lIVPEPeCcmN1gNZA4H2Iki717XmW7oGPK9YSo0ruW7rkEWxuV0lqVyb5QPFPMGFYtvqw qReie8rF5qD2Frn016cGIrFlM73+WhKhK09jxfXR9h2Bb6fz2pDgrCqAgAR5JzN64CsG HDig== X-Forwarded-Encrypted: i=1; AJvYcCVfbb6ISy4bj2n6b9z1hckmC9JP8SrbouweFFJULmpwvt0NU1wN7rRkFEkmsgCq0lz33N2HtS1rCmEmd762SQb5qFHnb8w= X-Gm-Message-State: AOJu0YwL6GhLQJzXAq0Jt6ZDb/3IZtUIB1cY6qKIzKfwfevvYYEerC5U DarzXLvl/h7D0PyBIjpqBNGzxPhOVpE7Z61BhQZh4eQglczXmru8uN/y6g== X-Google-Smtp-Source: AGHT+IHQj8Fa8WhzYzKOTRvIcCmbsvCFTIcat7R0+Yd54PF1GgcT0/ipGkFmRYKg5Jv/uDd6JSlbKQ== X-Received: by 2002:aa7:84cd:0:b0:704:177f:e39f with SMTP id d2e1a72fcca58-70629c415edmr1606228b3a.14.1718778479585; Tue, 18 Jun 2024 23:27:59 -0700 (PDT) Received: from smtpclient.apple ([2601:646:8f81:6120:2dbd:5c5a:649f:1b8a]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-705ccb90a52sm9923964b3a.210.2024.06.18.23.27.58 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 18 Jun 2024 23:27:59 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.600.62\)) Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. From: Yuan Fu In-Reply-To: <86le36vc32.fsf@gnu.org> Date: Tue, 18 Jun 2024 23:27:47 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <999E3166-A036-4E1F-A113-1925E9BE9CB9@gmail.com> References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> <86v839aa3a.fsf@gnu.org> <86seycagbq.fsf@gnu.org> <05106743-c354-4684-b57f-e6c07f1a6e2a@gutov.dev> <86plte6ny2.fsf@gnu.org> <75899b79-dfec-44dc-adfc-389f046bcd7b@gutov.dev> <86le36vc32.fsf@gnu.org> To: Eli Zaretskii X-Mailer: Apple Mail (2.3774.600.62) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 71070 Cc: Dmitry Gutov , Ergus , 71070@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 Jun 15, 2024, at 1:34=E2=80=AFAM, Eli Zaretskii = wrote: >=20 > Ping! Can we please make some progress here? As for the original reported bug, I=E2=80=99ve fixed that (now = c++-ts-mode fontifies namespaces in constant face). Perhaps namespaces = could be fontified in type face instead. I don=E2=80=99t have any = opinion on that. My take is that we could add a namespace/module face = and make it inherit from either type or constant. Yuan= From debbugs-submit-bounces@debbugs.gnu.org Wed Jun 19 07:52:40 2024 Received: (at 71070) by debbugs.gnu.org; 19 Jun 2024 11:52:40 +0000 Received: from localhost ([127.0.0.1]:41197 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sJtrk-0005Xh-2C for submit@debbugs.gnu.org; Wed, 19 Jun 2024 07:52:40 -0400 Received: from eggs.gnu.org ([209.51.188.92]:59012) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sJtrh-0005XP-UX for 71070@debbugs.gnu.org; Wed, 19 Jun 2024 07:52:39 -0400 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 1sJtrY-0006RN-Pt; Wed, 19 Jun 2024 07:52:28 -0400 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=46nZwkOWw660EVpIbwRL7vmIlwNu1nvnTO1rNpUBDX0=; b=onNcxA9rm2PSfYCyNM/F 6dHUogcDkrCE+4dYJpojdlDqefQv3Pr4J/Z2EijAz8fpLBNzAZ4Zes3CUxaVFPqL2qvZefYjI4KJR K5ylO58a6era8Sp/XK11WR5SYxxz5NTEDTxSv82cWMiKK7Ua7up1/+fadJVxBv+v87oT7N3XHeUUz GR8I9wCdJ/oHx/c5gO8Q8A5p+lcgThU5x3mdg4kbLzgCYJNC4YtTsacc89bMxI78BphymXFfSz6QO zlM5NW5+gppWl37Xl+QT8UKdLRTTKfH7Ua0AuELwhpRCTOO1SSnhCAlI0uks9JQvTT3TRpSkLokcq MqxQMl3EKtaCPA==; Date: Wed, 19 Jun 2024 14:52:24 +0300 Message-Id: <86h6dpp2tj.fsf@gnu.org> From: Eli Zaretskii To: Yuan Fu In-Reply-To: <999E3166-A036-4E1F-A113-1925E9BE9CB9@gmail.com> (message from Yuan Fu on Tue, 18 Jun 2024 23:27:47 -0700) Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> <86v839aa3a.fsf@gnu.org> <86seycagbq.fsf@gnu.org> <05106743-c354-4684-b57f-e6c07f1a6e2a@gutov.dev> <86plte6ny2.fsf@gnu.org> <75899b79-dfec-44dc-adfc-389f046bcd7b@gutov.dev> <86le36vc32.fsf@gnu.org> <999E3166-A036-4E1F-A113-1925E9BE9CB9@gmail.com> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -2.3 (--) X-Debbugs-Envelope-To: 71070 Cc: dmitry@gutov.dev, spacibba@aol.com, 71070@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: Yuan Fu > Date: Tue, 18 Jun 2024 23:27:47 -0700 > Cc: Dmitry Gutov , > Ergus , > 71070@debbugs.gnu.org > > > > > On Jun 15, 2024, at 1:34 AM, Eli Zaretskii wrote: > > > > Ping! Can we please make some progress here? > > As for the original reported bug, I’ve fixed that (now c++-ts-mode fontifies namespaces in constant face). Perhaps namespaces could be fontified in type face instead. I don’t have any opinion on that. My take is that we could add a namespace/module face and make it inherit from either type or constant. So you are basically saying that this bug should be closed, and if there are more requests, they should open a new bug report? From debbugs-submit-bounces@debbugs.gnu.org Thu Jun 20 21:55:11 2024 Received: (at 71070-done) by debbugs.gnu.org; 21 Jun 2024 01:55:11 +0000 Received: from localhost ([127.0.0.1]:51955 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sKTUc-0002r5-Tn for submit@debbugs.gnu.org; Thu, 20 Jun 2024 21:55:11 -0400 Received: from mail-pj1-f54.google.com ([209.85.216.54]:52602) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1sKTUb-0002qf-3F for 71070-done@debbugs.gnu.org; Thu, 20 Jun 2024 21:55:09 -0400 Received: by mail-pj1-f54.google.com with SMTP id 98e67ed59e1d1-2c7c61f7ee3so1302013a91.1 for <71070-done@debbugs.gnu.org>; Thu, 20 Jun 2024 18:55:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1718934839; x=1719539639; 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=oIP0bUh9Dwp2whmlcrqxlTneP0khmV0WTpagZBD4kP8=; b=DSE/dRaGNwqzxY36RohOOsUxj/N9XfbYxkKbuIWUxfXfY39ANqaZFEpLhmh9qaTwES ZashuYhANGl8DmFDPOikJ/a1P+3/xbkpM7CqklDyZJkiGR6XtDvTl9RxEyGgHrVNEnf6 qgcD2unOhp9vEDH9kkEB6hy84AMeoLJg5pN/fb8APg3UONcNl1LCHcAgZKODVP8UwHMb EtlWhgAO2Dlz6v/0CyiMuDEM/Ou9ilLE++C2tfoyu2bO2ScKrxCK21E4IFLS4JAN4Rg/ bQ3bnfpwM6oRSivuR2ZZ62XcPw75wYQLrYWSg3IIzK5YWVUz1fLLt4DChwDxYAL6GtPS QsYw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718934839; x=1719539639; 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=oIP0bUh9Dwp2whmlcrqxlTneP0khmV0WTpagZBD4kP8=; b=MGP5aPrZ7zUfthewKpUvvBbrjytYaZqRxAUueeJY6Yo8vw/SfLpsLBCC9WK7XcMR0T 743NSSWBodiPmUufo2nj9bNBNBU2KAOi189klPp6wNG6enFgUyvgY2Ig3j6Th3iRgXKY vJaCJQY7CZ36ZllXMq36imwwlEO34HoKad/Ab2MgdD4e01/mi+2iKfFKv8enxX3Sq/up 0wWIZWjgtTsJqHSRqvZ324kX8Xr+0EJhPwcKH842EFZfHhfhr5+hXejhEqdRL21S7Ois eMIWghReX0vk6yAJ9MvAnO4PDvNbGy72XiIZQJ537MiPG2HRj8xvlV0zliUYhVKj+OUS Fh+Q== X-Forwarded-Encrypted: i=1; AJvYcCVL46gOv3RGu4fvmS17Ua+hlDg1c/IcS4aYYVFMaQIbAP7wQnj3Am4drhWx/Vb+zdkN5b8omMsZBdKQIVt3YcNBoeNi5M22zGAqQA== X-Gm-Message-State: AOJu0YzDp23rRlkr/VIZxOm5ac7GQOXhJ0iMhfECR5znFJXKageSY4Ox 3lBFMAT7joTqV7pingShwI2B0wULQQcC0URY7bxhwJHUQeAGme01 X-Google-Smtp-Source: AGHT+IGVqU7JEhiciW+vezmkIxoq52GWxQG4gI3Q3HKHro9ZvhRjC+Ms+iyOfiKlSK9TLn+tM0NryA== X-Received: by 2002:a17:90a:fb48:b0:2c3:2557:3de8 with SMTP id 98e67ed59e1d1-2c7b5da56b7mr6684096a91.33.1718934839009; Thu, 20 Jun 2024 18:53:59 -0700 (PDT) Received: from smtpclient.apple ([2601:646:8f81:6120:f87e:895a:3752:7047]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2c819a7d60bsm366237a91.22.2024.06.20.18.53.58 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 20 Jun 2024 18:53:58 -0700 (PDT) Content-Type: text/plain; charset=utf-8 Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3774.600.62\)) Subject: Re: bug#71070: 30.0.50; c++-ts-mode namespace wrong fontification. From: Yuan Fu In-Reply-To: <86h6dpp2tj.fsf@gnu.org> Date: Thu, 20 Jun 2024 18:53:47 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: References: <87h6et6550.fsf.ref@aol.com> <87h6et6550.fsf@aol.com> <86wmnpabu0.fsf@gnu.org> <86v839aa3a.fsf@gnu.org> <86seycagbq.fsf@gnu.org> <05106743-c354-4684-b57f-e6c07f1a6e2a@gutov.dev> <86plte6ny2.fsf@gnu.org> <75899b79-dfec-44dc-adfc-389f046bcd7b@gutov.dev> <86le36vc32.fsf@gnu.org> <999E3166-A036-4E1F-A113-1925E9BE9CB9@gmail.com> <86h6dpp2tj.fsf@gnu.org> To: Eli Zaretskii X-Mailer: Apple Mail (2.3774.600.62) X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 71070-done Cc: Dmitry Gutov , Ergus , 71070-done@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 Jun 19, 2024, at 4:52=E2=80=AFAM, Eli Zaretskii = wrote: >=20 >> From: Yuan Fu >> Date: Tue, 18 Jun 2024 23:27:47 -0700 >> Cc: Dmitry Gutov , >> Ergus , >> 71070@debbugs.gnu.org >>=20 >>=20 >>=20 >>> On Jun 15, 2024, at 1:34=E2=80=AFAM, Eli Zaretskii = wrote: >>>=20 >>> Ping! Can we please make some progress here? >>=20 >> As for the original reported bug, I=E2=80=99ve fixed that (now = c++-ts-mode fontifies namespaces in constant face). Perhaps namespaces = could be fontified in type face instead. I don=E2=80=99t have any = opinion on that. My take is that we could add a namespace/module face = and make it inherit from either type or constant. >=20 > So you are basically saying that this bug should be closed, and if > there are more requests, they should open a new bug report? Yes, this bug is resolved. Closing the report. Yuan= From unknown Fri Jun 20 18:23:54 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Sat, 20 Jul 2024 11:24:13 +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