From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Newsgroups: gmane.emacs.help Subject: Re: Finding and fixing the missing brackets for tcl script with Emacs. Date: Thu, 14 Jan 2021 12:22:06 +0100 Message-ID: <20210114112206.GB17831@tuxteam.de> References: Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="mojUlQ0s9EVzWg2t" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="35105"; mail-complaints-to="usenet@ciao.gmane.io" User-Agent: Mutt/1.5.21 (2010-09-15) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Thu Jan 14 12:22:55 2021 Return-path: Envelope-to: geh-help-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 1l00iM-000900-3p for geh-help-gnu-emacs@m.gmane-mx.org; Thu, 14 Jan 2021 12:22:54 +0100 Original-Received: from localhost ([::1]:43484 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1l00iL-0002PX-4l for geh-help-gnu-emacs@m.gmane-mx.org; Thu, 14 Jan 2021 06:22:53 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:49458) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1l00hp-0002Ll-JV for help-gnu-emacs@gnu.org; Thu, 14 Jan 2021 06:22:21 -0500 Original-Received: from mail.tuxteam.de ([5.199.139.25]:32904) by eggs.gnu.org with esmtps (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.90_1) (envelope-from ) id 1l00hk-0004RX-42 for help-gnu-emacs@gnu.org; Thu, 14 Jan 2021 06:22:21 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tuxteam.de; s=mail; h=From:In-Reply-To:Content-Type:MIME-Version:References:Message-ID:Subject:To:Date; bh=g/CpkY/1IiALB0FpkU9+uDbuzdFqGDibkOJe3hGLgug=; b=Kvja7vfIIuUfcFFKXpQGfbP5xihUD93eDU+2/3ucEdpoGOLEE0tIeW5nDOuLBEjEqklxBKgd3ISr/TuPtoB93epbGPxGW8ICxX32BsUkB5DR5Fawt0Ld5BTOOkntw+c6xyb+6OTFA+mit4jX5MW9vLemPrpfOkynp3jYczRSyiwZjzIxHGzT1k43NdwK91Rmeh1u+YH1a3ul9440FcFB0Iel2IhAEe/xVZSHH8C2PFb5a+7eTgDx77pi+uTPBFFzg8r0sjRfO1J8upQje95HLpqprYqw4JgzyShNpPhSH/TQF4yoc6aDG8kZJMOtsnG9Fer2/ZA5429Il5IsvYq/4g==; Original-Received: from tomas by mail.tuxteam.de with local (Exim 4.80) (envelope-from ) id 1l00ha-0006QG-JD for help-gnu-emacs@gnu.org; Thu, 14 Jan 2021 12:22:06 +0100 Content-Disposition: inline In-Reply-To: Received-SPF: pass client-ip=5.199.139.25; envelope-from=tomas@tuxteam.de; helo=mail.tuxteam.de 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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.io gmane.emacs.help:127238 Archived-At: --mojUlQ0s9EVzWg2t Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Jan 14, 2021 at 06:30:20PM +0800, Hongyi Zhao wrote: > See the following TCL script snippet: >=20 > --- > set sendcmds [lmap l [split [string trim $sendcmds] \n] { > if {[regexp {^\s*#} $l} continue > string trim $l > }] > --- >=20 > In the above code snippets, two close brackets are missed. But finding > and fixing this sort of error manually is indeed a tedious and > laborious job. Can Emacs help me find the right spot and fix the > problem quickly for this scenario? I'm assuming you use Tcl mode. I don't know what kind of help you expect. There are several possibilities. Among them, I use paren minor mode (enable it with M-x "show-paren-mode"), which highlights matching parens and shows you another colour when there is a mismatch. This can't be perfect, especially in a language like Tcl (I don't know whether paren-mode "sees through comments", as the Tcl parser does -- an uncommon choice :) There is a whole section in the Emacs manual dedicated to this: "26.4.3 Matching Parentheses" or, on the Internet https://www.gnu.org/software/emacs/manual/html_node/emacs/Matching.html Cheers - t --mojUlQ0s9EVzWg2t Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iEYEARECAAYFAmAAKV4ACgkQBcgs9XrR2kbpoACcDcpfBDg0KnjGXPNK/teOzxmk FxgAnR1l5l4qa6kh0Oq5UQLukpzM3C1m =E6uF -----END PGP SIGNATURE----- --mojUlQ0s9EVzWg2t--