diff --git a/doc/org.texi b/doc/org.texi index 9d899751b..88c506cbc 100644 --- a/doc/org.texi +++ b/doc/org.texi @@ -10045,13 +10045,29 @@ 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 72f8d5c0e..ad75f14f6 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., ~text~. +**** 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