From mboxrd@z Thu Jan  1 00:00:00 1970
From: Christopher Schmidt <christopher@ch.ristopher.com>
Subject: Re: orgstruct-mode with custom headline prefix
Date: Thu, 31 Jan 2013 09:00:13 +0000 (GMT)
Message-ID: <87k3qt3exu@ch.ristopher.com>
References: <87vcah6xf5@ch.ristopher.com> <8738xh4xfr@ch.ristopher.com>
	<87y5f994ni.fsf@bzg.ath.cx> <87pq0l3gr2@ch.ristopher.com>
	<878v79925v.fsf@bzg.ath.cx>
Mime-Version: 1.0
Content-Type: text/plain
Return-path: <emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org>
Received: from eggs.gnu.org ([208.118.235.92]:39713)
	by lists.gnu.org with esmtp (Exim 4.71)
	(envelope-from <christopher@ch.ristopher.com>) id 1U0q0O-0008Bg-8j
	for emacs-orgmode@gnu.org; Thu, 31 Jan 2013 04:00:28 -0500
Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71)
	(envelope-from <christopher@ch.ristopher.com>) id 1U0q0J-0004xn-Lt
	for emacs-orgmode@gnu.org; Thu, 31 Jan 2013 04:00:24 -0500
Received: from ristopher.com ([146.185.21.93]:52478
	helo=saturn.ch.ristopher.com) by eggs.gnu.org with esmtp (Exim 4.71)
	(envelope-from <christopher@ch.ristopher.com>) id 1U0q0J-0004vj-E7
	for emacs-orgmode@gnu.org; Thu, 31 Jan 2013 04:00:19 -0500
In-Reply-To: <878v79925v.fsf@bzg.ath.cx> (Bastien's message of "Thu,
	31 Jan 2013 09:39:40 +0100")
List-Id: "General discussions about Org-mode." <emacs-orgmode.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/emacs-orgmode>,
	<mailto:emacs-orgmode-request@gnu.org?subject=unsubscribe>
List-Archive: <http://lists.gnu.org/archive/html/emacs-orgmode>
List-Post: <mailto:emacs-orgmode@gnu.org>
List-Help: <mailto:emacs-orgmode-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/emacs-orgmode>,
	<mailto:emacs-orgmode-request@gnu.org?subject=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

Bastien <bzg@altern.org> writes:

Hi Bastien,

>> Bastien <bzg@altern.org> writes:
>>> Can you give an indication on how it impacts the generation of
>>> agenda?  This is a potential blocker.
>>
>> It should not impact agenda generation at all - neither feature nor
>> performance-wise.  All non-trivial changes are in parts of the code
>> that directly relate to orgstruct-mode or
>> org-\(forward\|backward\)-heading-same-level.  These functions and
>> their internals are not used non-interactively.
>
> org-outline-regexp-bol, org-\(forward\|backward\)-heading-same-level
> are fundamental vars/functions -- any change here is likely to impact
> the agenda generation.  So while I hope you're right, I'd feel better
> with figures and tests :)

org-outline-regexp-bol value is ^org-outline-regexp.  There is one place
in org where org-outline-regexp-bol is actually set -
org-with-limited-levels.  It is let-bound to (concat "^"
org-outline-regexp).

BTW what is the reason for having both org-outline-regexp and
org-outline-regexp-bol?  Matching the latter should be
faster than the former.

org-\(forward\|backward\)-heading-same-level are referenced
non-interactively in three functions - org-forward-element,
org-backward-element and org-copy-subtree.  I checked the implementation
of these functions and I did not see how the new behaviour should break
these functions.

After all, the functions now do what they are supposed to do.  Try this:

    * Org
    ** Achim
    ** Bastien
    ** Carsten
    * Diary

Place point on Achim and C-c C-b.  Place point on Casten and C-c C-f.

All my agendas generate just fine.  I am not exactly sure how I can
provide figures and tests.  We do not have any agenda test cases in the
first place.

Please take a look at the patch when you have time.  The diff is not
that scary.

Greetings,

        Christopher