From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.help Subject: Re: elisp q: what functions do I need to *visually* replace string foo with bar Date: Wed, 07 Feb 2007 22:12:57 -0500 Message-ID: References: <1170864058.926740.61920@a75g2000cwd.googlegroups.com> <1170869644.562266.161910@m58g2000cwm.googlegroups.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1170906026 6814 80.91.229.12 (8 Feb 2007 03:40:26 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 8 Feb 2007 03:40:26 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Thu Feb 08 04:40:23 2007 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1HF091-00015h-En for geh-help-gnu-emacs@m.gmane.org; Thu, 08 Feb 2007 04:40:23 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HF091-00073A-0K for geh-help-gnu-emacs@m.gmane.org; Wed, 07 Feb 2007 22:40:23 -0500 Original-Path: shelby.stanford.edu!newsfeed.stanford.edu!postnews.google.com!news4.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!local01.nntp.dca.giganews.com!nntp.umontreal.ca!news.umontreal.ca.POSTED!not-for-mail Original-NNTP-Posting-Date: Wed, 07 Feb 2007 21:12:59 -0600 Original-Newsgroups: gnu.emacs.help User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.93 (gnu/linux) Cancel-Lock: sha1:FPl+tdQmz6T7Jifp6ahoGmmChmU= Original-Lines: 37 Original-NNTP-Posting-Host: 132.204.27.213 Original-X-Trace: sv3-C8NHAXfCsLM7s6H+E1rTsAW8RijI56OEC3pS+pAsrAnSfekY1toCC7Tz67xyMelKGU8NsZ7vcIKglhu!ZVzVwEMVrxf2WZpqT8j7Stq0JNv6AlgMp0XcgpEMv7bRX3/xbDWcxt4iMdUJx2Zfv4JGw0/e0iOr!WRoPDvYxvpdfvKB5fQ== Original-X-Complaints-To: abuse@umontreal.ca X-DMCA-Complaints-To: abuse@umontreal.ca X-Abuse-and-DMCA-Info: Please be sure to forward a copy of ALL headers X-Abuse-and-DMCA-Info: Otherwise we will be unable to process your complaint properly X-Postfilter: 1.3.32 Original-Xref: shelby.stanford.edu gnu.emacs.help:145344 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:40950 Archived-At: > (setq font-lock-defaults > '((("\\*self\\.\\(\\(?:\\s_\\|\\sw\\)+\\)" 1 my-italic-face) > ("\\(\\*self\\.\\)\\(?:\\s_\\|\\sw\\)+" 1 my-invisible-face)) > )) This can be advantageously merged: (setq font-lock-keywords '(("\\(\\*self\\.\\)\\(\\(?:\\s_\\|\\sw\\)+\\)" (1 'my-invisible-face) (2 'italic)))) And instead of a special transparent face, you can use: (setq font-lock-keywords '(("\\(\\*self\\.\\)\\(\\(?:\\s_\\|\\sw\\)+\\)" (1 '(face nil invisible t)) (2 'italic)))) but then you'll also have to add `invisible' to `font-lock-extra-managed-props'. And the above setting of `font-lock-keywords' is of course incorrect since it erases any other font-lock rules of the major mode. Maybe something like (add-hook 'my-idl-mode-hook (lambda () (font-lock-add-keywords nil '(("\\(\\*self\\.\\)\\(\\(?:\\s_\\|\\sw\\)+\\)" (1 'my-invisible-face) (2 'italic)))) (add-to-list 'font-lock-extra-managed-props 'invisible))) Of course the above has not been tested at all. Stefan