From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefan Monnier Subject: Avoiding `intangible' Date: Wed, 15 Apr 2015 21:42:54 -0400 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:57051) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YiYpZ-0007v9-Km for emacs-orgmode@gnu.org; Wed, 15 Apr 2015 21:43:02 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YiYpV-0004w7-Km for emacs-orgmode@gnu.org; Wed, 15 Apr 2015 21:43:01 -0400 Received: from pruche.dit.umontreal.ca ([132.204.246.22]:54532) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YiYpV-0004w1-E7 for emacs-orgmode@gnu.org; Wed, 15 Apr 2015 21:42:57 -0400 In-Reply-To: (Stefan Monnier's message of "Fri, 10 Apr 2015 09:12:53 -0400") List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org I'm on a crusade to eradicate the `intangible' property, which happens to rub me the wrong way because it's implemented at too-low a level (it affects every point movement) which incurs a significant performance penalty (even when not used) and affects a lot of code which then needs to be fixed by binding inhibit-point-motion-hooks (which I'm considering defaulting to t). So I'd like to install the patch below. Any objection? The `invisible' property already ensures that the command loop moves point away from those overlays, so the `intangible' property should not be needed there (tho I don't use Org enough to know how to test it). Stefan diff --git a/lisp/org/org-agenda.el b/lisp/org/org-agenda.el index 8f7611f..bac8206 100644 --- a/lisp/org/org-agenda.el +++ b/lisp/org/org-agenda.el @@ -3847,8 +3847,7 @@ dimming them." e (point-at-eol) ov (make-overlay b e)) (if invis1 - (progn (overlay-put ov 'invisible t) - (overlay-put ov 'intangible t)) + (overlay-put ov 'invisible t) (overlay-put ov 'face 'org-agenda-dimmed-todo-face)) (overlay-put ov 'org-type 'org-blocked-todo)))))) (when (org-called-interactively-p 'interactive) diff --git a/lisp/org/org-colview.el b/lisp/org/org-colview.el index e14849f..2587aad 100644 --- a/lisp/org/org-colview.el +++ b/lisp/org/org-colview.el @@ -250,7 +250,6 @@ This is the compiled version of the format.") (setq ov (org-columns-new-overlay beg (point-at-eol))) (overlay-put ov 'invisible t) (overlay-put ov 'keymap org-columns-map) - (overlay-put ov 'intangible t) (overlay-put ov 'line-prefix "") (overlay-put ov 'wrap-prefix "") (push ov org-columns-overlays)