From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.cc-mode.general,gmane.emacs.devel Subject: Re: [sigra@home.se: C++-mode: Syntax highlighting: wrong color for function identifier depending on the kind of whitespace that follows] Date: Wed, 15 Feb 2006 16:13:39 -0500 Message-ID: <87lkwce3qc.fsf-monnier+emacs@gnu.org> References: NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1140038191 15039 80.91.229.2 (15 Feb 2006 21:16:31 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 15 Feb 2006 21:16:31 +0000 (UTC) Cc: Ralf Angeli , bug-cc-mode@gnu.org, rms@gnu.org, emacs-devel@gnu.org Original-X-From: cc-mode-help-admin@lists.sourceforge.net Wed Feb 15 22:16:29 2006 Return-path: Envelope-to: sf-cc-mode-help@m.gmane.org Original-Received: from lists-outbound.sourceforge.net ([66.35.250.225]) by ciao.gmane.org with esmtp (Exim 4.43) id 1F9U0L-0000FM-HY for sf-cc-mode-help@m.gmane.org; Wed, 15 Feb 2006 22:16:06 +0100 Original-Received: from sc8-sf-list1-b.sourceforge.net (sc8-sf-list1-b.sourceforge.net [10.3.1.7]) by sc8-sf-spam2.sourceforge.net (Postfix) with ESMTP id AD25612E3D; Wed, 15 Feb 2006 13:16:04 -0800 (PST) Original-Received: from sc8-sf-mx2-b.sourceforge.net ([10.3.1.92] helo=mail.sourceforge.net) by sc8-sf-list1.sourceforge.net with esmtp (Exim 4.30) id 1F9TzT-0000XI-L9 for cc-mode-help@lists.sourceforge.net; Wed, 15 Feb 2006 13:15:11 -0800 Original-Received: from fencepost.gnu.org ([199.232.76.164]) by mail.sourceforge.net with esmtps (TLSv1:RC4-SHA:128) (Exim 4.44) id 1F9TzQ-0000q8-Vk for cc-mode-help@lists.sourceforge.net; Wed, 15 Feb 2006 13:15:11 -0800 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by fencepost.gnu.org with esmtp (Exim 4.34) id 1F9Tyt-0007Zh-9U for bug-cc-mode@gnu.org; Wed, 15 Feb 2006 16:14:58 -0500 Original-Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.52) id 1F9U34-0006wi-GO for bug-cc-mode@gnu.org; Wed, 15 Feb 2006 16:18:57 -0500 Original-Received: from [209.226.175.93] (helo=tomts36-srv.bellnexxia.net) by monty-python.gnu.org with esmtp (Exim 4.52) id 1F9U34-0006wP-19; Wed, 15 Feb 2006 16:18:54 -0500 Original-Received: from alfajor ([67.71.116.200]) by tomts36-srv.bellnexxia.net (InterMail vM.5.01.06.13 201-253-122-130-113-20050324) with ESMTP id <20060215211340.KOYU13653.tomts36-srv.bellnexxia.net@alfajor>; Wed, 15 Feb 2006 16:13:40 -0500 Original-Received: by alfajor (Postfix, from userid 1000) id DECBDD7341; Wed, 15 Feb 2006 16:13:39 -0500 (EST) Original-To: Alan Mackenzie In-Reply-To: (Alan Mackenzie's message of "Wed, 15 Feb 2006 20:33:43 +0000 (GMT)") User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) X-Spam-Score: 0.0 (/) X-Spam-Report: Spam Filtering performed by sourceforge.net. See http://spamassassin.org/tag/ for more details. Report problems to http://sf.net/tracker/?func=add&group_id=1&atid=200001 Original-Sender: cc-mode-help-admin@lists.sourceforge.net Errors-To: cc-mode-help-admin@lists.sourceforge.net X-BeenThere: cc-mode-help@lists.sourceforge.net X-Mailman-Version: 2.0.9-sf.net Precedence: bulk List-Unsubscribe: , List-Id: Bug reports, feature requests, and general talk about CC Mode. List-Post: List-Help: List-Subscribe: , List-Archive: X-Original-Date: Wed, 15 Feb 2006 16:13:39 -0500 Xref: news.gmane.org gmane.emacs.cc-mode.general:3012 gmane.emacs.devel:50583 Archived-At: >>> Currently a function is used as matcher in `font-lock-keywords' for >>> this functionality. It basically operates like this: >>> (catch 'match >>> (while (re-search-forward "<<" limit t) >>> (let ((beg (match-beginning 0))) >>> (search-forward ">>" limit 'move) >>> (store-match-data (list beg (point))) >>> (throw 'match t)))) >> I.e. equivalent to "<<\\(.\\|\n\\)*?\\(>>\\)?". > Small point: It might be a good idea here to write [\n\r] rather than > just \n, in case something has changed \n's to \r's for selective display > (Node of that name in the Elisp manual). Last time I checked a "." in a regexp does match \r even if selective-display is activated, so always \\(.\\|\n\\) matches *any* char. Stefan PS: Furthermore, selective-display is on its way out. The only code left that uses it (in Emacs-CVS) is in dired-aux.el, gnus-sum.el, and locate.el, none of which interact with other major modes. ------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642