From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: David.Kastrup@t-online.de (David Kastrup) Newsgroups: gmane.emacs.devel Subject: Re: bug in forward-visible-line: Patch Date: 23 May 2003 00:27:06 +0200 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: References: <200305220443.h4M4h4w10124@eel.dms.auburn.edu> <200305221256.h4MCuhjv003998@rum.cs.yale.edu> <200305222140.h4MLe9r10843@eel.dms.auburn.edu> Reply-To: dak@gnu.org NNTP-Posting-Host: main.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: main.gmane.org 1053675383 26780 80.91.224.249 (23 May 2003 07:36:23 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Fri, 23 May 2003 07:36:23 +0000 (UTC) Cc: monnier+gnu/emacs@rum.cs.yale.edu Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Fri May 23 09:36:21 2003 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 19J76D-0006xj-00 for ; Fri, 23 May 2003 09:36:21 +0200 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 19J7Hr-00074B-00 for ; Fri, 23 May 2003 09:48:23 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.20) id 19J77H-0002j8-6B for emacs-devel@quimby.gnus.org; Fri, 23 May 2003 03:37:27 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.20) id 19J762-0000vJ-KH for emacs-devel@gnu.org; Fri, 23 May 2003 03:36:10 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.20) id 19J73u-0007Bg-W7 for emacs-devel@gnu.org; Fri, 23 May 2003 03:33:59 -0400 Original-Received: from mailout05.sul.t-online.com ([194.25.134.82]) by monty-python.gnu.org with esmtp (Exim 4.20) id 19J72u-0005H2-Ok for emacs-devel@gnu.org; Fri, 23 May 2003 03:32:56 -0400 Original-Received: from fwd04.sul.t-online.de by mailout05.sul.t-online.com with smtp id 19J72s-0001YQ-06; Fri, 23 May 2003 09:32:54 +0200 Original-Received: from localhost.localdomain (520018396234-0001@[62.226.11.153]) by fwd04.sul.t-online.com with esmtp id 19J72b-2B8zFwC; Fri, 23 May 2003 09:32:37 +0200 Original-Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by localhost.localdomain (8.12.8/8.12.8) with ESMTP id h4MMRA72002067; Fri, 23 May 2003 00:27:50 +0200 Original-Received: (from dak@localhost) by localhost.localdomain (8.12.8/8.12.8/Submit) id h4MMR7SK002063; Fri, 23 May 2003 00:27:07 +0200 Original-To: Luc Teirlinck In-Reply-To: <200305222140.h4MLe9r10843@eel.dms.auburn.edu> Original-Lines: 32 User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3.50 X-Sender: 520018396234-0001@t-dialin.net Original-cc: emacs-devel@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1b5 Precedence: list List-Id: Emacs development discussions. List-Help: List-Post: List-Subscribe: , List-Archive: List-Unsubscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:14117 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:14117 Luc Teirlinck writes: > What about the following function? I should still double-check it > more carefully, but on first testing in a reasonably complex > situation, it seems to work OK. If (listp prop) evaluates to t, nil is always returned. > ===File ~/invp.el=========================================== invp.el for a function visiblep? > (defun visiblep (&optional pos) > "Return t if character at POS is currently visible. > POS defaults to point." > (unless pos (setq pos (point))) > (let ((prop (get-text-property pos 'invisible))) > (cond > ((null prop)) > ((eq buffer-invisibility-spec t) nil) > ((memq prop buffer-invisibility-spec) nil) > ((assq prop buffer-invisibility-spec) nil) > ((listp prop) > (catch 'found > (dolist (var prop) > (if (or (memq var buffer-invisibility-spec) > (assq var buffer-invisibility-spec)) > (throw 'found nil))))) > (t)))) -- David Kastrup, Kriemhildstr. 15, 44793 Bochum