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: Hiding text Date: Fri, 16 Feb 2007 23:56:17 -0500 Message-ID: References: NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1171690907 26279 80.91.229.12 (17 Feb 2007 05:41:47 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Sat, 17 Feb 2007 05:41:47 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Sat Feb 17 06:41:40 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 1HIIKI-0007Zw-Iu for geh-help-gnu-emacs@m.gmane.org; Sat, 17 Feb 2007 06:41:38 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1HIIKI-0006Ib-73 for geh-help-gnu-emacs@m.gmane.org; Sat, 17 Feb 2007 00:41:38 -0500 Original-Path: shelby.stanford.edu!newsfeed.stanford.edu!postnews.google.com!news3.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: Fri, 16 Feb 2007 22:56:17 -0600 Original-Newsgroups: gnu.emacs.help User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.93 (gnu/linux) Cancel-Lock: sha1:gfc3H9yslhgGNdafy3msfOUOAU4= Original-Lines: 30 Original-NNTP-Posting-Host: 132.204.27.213 Original-X-Trace: sv3-wOoW/NUXyJB5JDz3n4WNUuJvlqUrGpZqrrJO+r7BMTkee172azWYERMBr7dgDwE907XP49pfayXSgRB!eLFWzHOAPeCI78SKxd+0gKSLbXmh4kVh5qPdlCABqrvoRBSKBLsRkK8meIIwl6fI6IL5FB0rjUjY!YmzDwlS5mEXrOkJKEQ== 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:145670 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:41275 Archived-At: > I tried doing this with font-lock, and was able to do everything i > wanted, except that the underscores--which i make invisible--leave a > blank space instead of completely disappearing. My crystal ball tells me you did the "invisible" improperly (e.g. by setting their foreground color to the background color or some other hack). If you place an "invisible" property on those chars, they really will not appear at all, not even as spaces. Try font-lock rules like (defvar foo-mode-font-lock-keywords '(("\\(_\\)\\([^_ \t\n][^_\n]*\\)\\(_\\)" (1 '(face nil invisible t)) (2 'italics) (3 '(face nil invisible t))))) You may want to add `invisible' to font-lock-extra-managed-props so that those _ re-appear when they're not properly paired. On the other hand, I would recommend against adding an `intangible' property (as someone else suggested), because this has pretty far reaching consequences and thus tends to break a lot of unsuspecting code in very subtle ways. In Emacs-22, such invisible text is automatically treated as "somewhat intangible", so you get the intangible-like behavior you want, but without the nasty far reaching consequences of the `intangible' property. Stefan