emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Brian Carlson <hacker@abutilize.com>
To: emacs-orgmode@gnu.org
Subject: Re: PATCH: ox: Starting source code export at non-zero (-n value)
Date: Sun, 29 May 2016 22:45:06 -0400	[thread overview]
Message-ID: <574BA932.20203@abutilize.com> (raw)
In-Reply-To: <87eg8pb9au.fsf@saiph.selenimh>

[-- Attachment #1: Type: text/plain, Size: 423 bytes --]


On 2016-05-26 02:52, Nicolas Goaziou wrote:
>> I realize that the org texinfo manual probably needs to be updated, as well. I'll take a stab at updating that unless
>> someone else wants to take that on.
>
> You're right. You can merge ORG-NEWS modifications into the
> documentation patch.


Here is the patch for both doc/org.texi and etc/ORG-NEWS. I apologize for the delay in getting this to the list.


Thanks!
;-b



[-- Attachment #2: 0001-org.texi-Updated-doc-for-n-in-SRC-EXAMPLE-export.patch --]
[-- Type: text/x-patch, Size: 3594 bytes --]

From 466f0c755180f7475484abc6715accdf74a8a0f3 Mon Sep 17 00:00:00 2001
From: "Brian J. Carlson" <hacker@briancarlson.org>
Date: Sun, 29 May 2016 22:37:18 -0400
Subject: [PATCH] org.texi: Updated doc for [+-]n in SRC/EXAMPLE export

* doc/org.texi (Timers): Added information about optional argument to
  -n/+n line-numbering
* etc/ORG-NEWS: Added infomation for "Provide offset to [+-]n in
  SRC/EXAMPLE export"  (commit af8e3d8)
---
 doc/org.texi | 29 ++++++++++++++++++++++-------
 etc/ORG-NEWS | 16 ++++++++++++++++
 2 files changed, 38 insertions(+), 7 deletions(-)

diff --git a/doc/org.texi b/doc/org.texi
index 9d89975..0d0d30f 100644
--- a/doc/org.texi
+++ b/doc/org.texi
@@ -10045,13 +10045,28 @@ shortcuts to easily insert code blocks.
 
 Both in @code{example} and in @code{src} snippets, you can add a @code{-n}
 switch to the end of the @code{BEGIN} line, to get the lines of the example
-numbered.  If you use a @code{+n} switch, the numbering from the previous
-numbered snippet will be continued in the current one.  In literal examples,
-Org will interpret strings like @samp{(ref:name)} as labels, and use them as
-targets for special hyperlinks like @code{[[(name)]]} (i.e., the reference name
-enclosed in single parenthesis).  In HTML, hovering the mouse over such a
-link will remote-highlight the corresponding code line, which is kind of
-cool.
+numbered.  The @code{-n} takes an optional numeric argument specifying the starting
+line number of the block. If you use a @code{+n} switch, the numbering from
+the previous numbered snippet will be continued in the current one.  The
+@code{+n} can also take a numeric argument. The value of the argument will be
+added to the last line of the previous block to determine the starting line
+number. 
+@example
+#+BEGIN_SRC emacs-lisp -n 20
+ ;; this will export with line number 20
+ (message "This is line 21")
+#+END_SRC
+#+BEGIN_SRC emacs-lisp +n 10
+ ;; This will be listed as line 31
+ (message "This is line 32")
+#+END_SRC
+@end example
+
+In literal examples, Org will interpret strings like @samp{(ref:name)} as
+labels, and use them as targets for special hyperlinks like @code{[[(name)]]}
+(i.e., the reference name enclosed in single parenthesis).  In HTML, hovering
+the mouse over such a link will remote-highlight the corresponding code line,
+which is kind of cool.
 
 You can also add a @code{-r} switch which @i{removes} the labels from the
 source code@footnote{Adding @code{-k} to @code{-n -r} will @i{keep} the
diff --git a/etc/ORG-NEWS b/etc/ORG-NEWS
index 72f8d5c..34eb9ab 100644
--- a/etc/ORG-NEWS
+++ b/etc/ORG-NEWS
@@ -159,6 +159,22 @@ If the block has a =#+NAME:= attribute assigned, then the HTML element
 will have an ~id~ attribute with that name in the HTML export. This
 enables one to create links to these elements in other places, e.g.,
 ~<a href="#name">text</a>~.
+**** Line Numbering in SRC/EXAMPLE blocks support arbitrary start number
+The ~-n~ option to ~SRC~ and ~EXAMPLE~ blocks can now take a numeric
+argument to specify the staring line number for the source or example
+block. The ~+n~ option can now take a numeric argument that will be
+added to the last line number from the previous block as the starting
+point for the SRC/EXAMPLE block.
+#+BEGIN_SRC org
+  ,#+BEGIN_SRC emacs-lisp -n 20
+    ;; this will export with line number 20
+    (message "This is line 21")
+  ,#+END_SRC
+  ,#+BEGIN_SRC emacs-lisp +n 10
+    ;; This will be listed as line 31
+    (message "This is line 32")
+  ,#+END_SRC
+#+END_SRC
 
 *** Babel
 **** Support for SLY in Lisp blocks
-- 
2.8.3


  parent reply	other threads:[~2016-05-30  2:50 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-17  3:33 Starting source code export at non-zero (-n value) Brian Carlson
2016-05-20 20:48 ` Nicolas Goaziou
2016-05-22 15:57   ` Brian Carlson
2016-05-23  4:00   ` PATCH: ox: " Brian Carlson
2016-05-24 19:44     ` Nicolas Goaziou
2016-05-24 20:33       ` Nicolas Goaziou
2016-05-26  3:06         ` Brian Carlson
2016-05-26  6:52           ` Nicolas Goaziou
2016-05-30  2:42             ` Brian Carlson
2016-05-30  2:45             ` Brian Carlson [this message]
2016-05-31 16:47             ` Brian Carlson
2016-05-31 20:37               ` Nicolas Goaziou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.orgmode.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=574BA932.20203@abutilize.com \
    --to=hacker@abutilize.com \
    --cc=emacs-orgmode@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).