[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [O] Patch for numbering continuation in source blocks.
From: |
Carsten Dominik |
Subject: |
Re: [O] Patch for numbering continuation in source blocks. |
Date: |
Fri, 7 Oct 2011 18:19:35 +0200 |
Hi Niels,
is the purpose of this patch to be able to insert an unnumbered code block
between two numbered ones and to continue the numbering from the first in the
third?
- Carsten
On 2.10.2011, at 12:40, Niels Giesen wrote:
> NOTE: I have tried earlier to send this patch with git send-email,
> but apparently failed; here's a new, inlined attempt.
>
> The documentation for numbering source code blocks says:
>
> #+begin_quote
> If you use a `+n' switch, the numbering from the previous
> numbered snippet will be continued in the current one.
> #+end_quote
>
> But that is not exactly what happens; what happens is that the
> numbering from the previous snippet will be continued in the current
> one. That is, when the previous snippet is numbered its numbering will
> continue, but if there is a previous numbered snippet A with, say, 14
> lines followed by an unnumbered snippet B followed by a numbered
> snippet C, then the numbers for C will start at 1, regardless of the +
> in the +n switch, whereas my reading of the documentation leads me to
> think it ought to continue at 15, disregarding the presence any
> unnumbered sections in between.
>
> Reason for me for the +n switch to comply with (my reading of) the
> documentation is that I would like to document a long, line-numbered,
> function but intersperse it with short code samples without line
> numbering that explain parts of the long function.
>
> This patch of course may break existing org files where +n was
> specified but -n intended.
>
> #+begin_src diff
> From 4d34d5f2fe10a956d3359dfd40f19de25202df5f Mon Sep 17 00:00:00 2001
> From: Niels Giesen <address@hidden>
> Date: Fri, 16 Sep 2011 17:22:47 +0200
> Subject: [PATCH] Continue numbering from any previous numbered snippet with
> +n, even when previous numbered snippet does not immediately precede it.
>
> ,* org-mode/lisp/org-exp.el (org-export-number-lines):
>
> Check whether number parameter (this is a numbered block!) is
> non-nil as well as whether cont is nil (this numbered block should
> *not* continue numbering where we left off before!) before resetting
> the count to zero.
>
> From the docs:
>
> If you use a `+n' switch, the numbering from the previous
> numbered snippet will be continued in the current one.
>
> With this change I believe the code complies with the docs.
> ---
> lisp/org-exp.el | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/lisp/org-exp.el b/lisp/org-exp.el
> index 9884a31..12590e1 100644
> --- a/lisp/org-exp.el
> +++ b/lisp/org-exp.el
> @@ -2731,7 +2731,7 @@ INDENT was the original indentation of the block."
> (defun org-export-number-lines (text &optional skip1 skip2 number cont
> replace-labels label-format)
> (setq skip1 (or skip1 0) skip2 (or skip2 0))
> - (if (not cont) (setq org-export-last-code-line-counter-value 0))
> + (if (and number (not cont)) (setq org-export-last-code-line-counter-value
> 0))
> (with-temp-buffer
> (insert text)
> (goto-char (point-max))
> --
> 1.7.4.1
>
>
> #+end_src
>
> Regards,
> niels
> --
> http://pft.github.com
>