From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.help Subject: Re: Relative performance of text-properties search functions Date: Fri, 24 May 2013 21:17:24 +0300 Message-ID: <837gios0nf.fsf@gnu.org> References: <87fvxdsxg0.fsf@gmail.com> <83txltsnrq.fsf@gnu.org> <87vc68bhab.fsf@gmail.com> <83a9nks8ie.fsf@gnu.org> <87mwrkb86o.fsf@gmail.com> NNTP-Posting-Host: plane.gmane.org X-Trace: ger.gmane.org 1369419466 25952 80.91.229.3 (24 May 2013 18:17:46 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 24 May 2013 18:17:46 +0000 (UTC) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Fri May 24 20:17:42 2013 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1UfwYf-0008ES-QL for geh-help-gnu-emacs@m.gmane.org; Fri, 24 May 2013 20:17:41 +0200 Original-Received: from localhost ([::1]:40656 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UfwYf-00055s-B3 for geh-help-gnu-emacs@m.gmane.org; Fri, 24 May 2013 14:17:41 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:38441) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UfwYR-00055m-1y for help-gnu-emacs@gnu.org; Fri, 24 May 2013 14:17:29 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UfwYP-0002rZ-Q3 for help-gnu-emacs@gnu.org; Fri, 24 May 2013 14:17:26 -0400 Original-Received: from mtaout21.012.net.il ([80.179.55.169]:63006) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UfwYP-0002rG-Fw for help-gnu-emacs@gnu.org; Fri, 24 May 2013 14:17:25 -0400 Original-Received: from conversion-daemon.a-mtaout21.012.net.il by a-mtaout21.012.net.il (HyperSendmail v2007.08) id <0MNB00600EI7PW00@a-mtaout21.012.net.il> for help-gnu-emacs@gnu.org; Fri, 24 May 2013 21:17:23 +0300 (IDT) Original-Received: from HOME-C4E4A596F7 ([87.69.4.28]) by a-mtaout21.012.net.il (HyperSendmail v2007.08) with ESMTPA id <0MNB0052DESYYE70@a-mtaout21.012.net.il> for help-gnu-emacs@gnu.org; Fri, 24 May 2013 21:17:23 +0300 (IDT) In-reply-to: <87mwrkb86o.fsf@gmail.com> X-012-Sender: halo1@inter.net.il X-detected-operating-system: by eggs.gnu.org: Solaris 10 X-Received-From: 80.179.55.169 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.help:91030 Archived-At: > From: Thorsten Jolitz > Date: Fri, 24 May 2013 19:26:39 +0200 > > > You were talking about outline or org-mode, so how is .emacs relevant? > > Because my .emacs looks like this: > > ,---------------------------------------- > | ;; * init.el --- my Emacs Init File > | ;; ** Commentary > | ;; * Prerequisites > | ;; ** Start Message and Start Time > | ;; ** Setup Parts > | ;; ** Environment > | ;; ** Loading Emacs Lisp Libraries > | ;; ** Debugging > | ;; * [Screen Input Keys Cmd Enter Exit] > | ;; ** 1 (info "(emacs)Screen") > | ;; ** 2 (info "(emacs)User Input") > | ;; ** 3 (info "(emacs)Keys") > | ;; ** 4 (info "(emacs)Commands") > | ;; ** 5 (info "(emacs)Entering Emacs") > | ;; ** 6 (info "(emacs)Exiting") > | ;; * [Basic-Edit Minibuf M-x Help] > | [...] > `---------------------------------------- > > with outline-minor-mode and outshine.el activated. Which is exactly the problem I was alluding to. You may think that when you fold the buffer text like that that Emacs has no problems displaying that -- after all, those are just a few lines, right? But in fact, the way Emacs display works, it must traverse the entire text of the portion of the buffer that corresponds to those header lines, skipping the folded text (which has the invisible text property), and displaying the rest. Add to this replacing display properties, which you say will have to change all the time (whatever that means), and you might have annoyingly slow display operations, because replacing display properties are treated specially by the display engine, and so it constantly looks for them when it iterates over buffer text.