emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Mark Elston <m_elston@comcast.net>
To: emacs-orgmode@gnu.org
Subject: Re: Re: Limited #+INCLUDE ?
Date: Mon, 26 Apr 2010 17:34:50 -0700	[thread overview]
Message-ID: <4BD6312A.5090108@comcast.net> (raw)
In-Reply-To: <87eii26lzg.fsf@stats.ox.ac.uk>

On 4/26/2010 12:40 PM, Dan Davison wrote:
>
> I'm considering investigating the following and would appreciate
> comments on this idea. The aim is to make it easier to use Org-mode to
> work pure code files which are *external to Org-mode* (i.e. this
> proposal lies outside of the current org-babel tangling framework).
>
> - Extend Org file links to allow links to a range of lines in a
>    file. The syntax could be
>    [[file:/path/to/file::from::to][linkname]]
>
> - These links will bring up a buffer visiting the target file, narrowed
>    to the target region.
>
> - The link back in the Org-mode file can be adjusted from the target
>    file, by widening and then narrowing again. (During this procedure the
>    target region would be highlighted.)
>
> - Export to HTML and LaTeX will have the ability to include the target
>    regions, fontified according to the appropriate major-mode, similar to
>    how begin_src blocks behave on export.
>
> - 'from' and 'to' could be line numbers, or regexps for text search.
>
> For programmers, this would allow a sort of org-mode mediated literate
> programming in projects where it is not feasible/desirable to actually
> include the source code in the org-mode file.
>
> Any comments or suggestions?
>
> Dan

Dan,

The use of line numbers seems a little error prone since line numbers
can change dramatically by simply editing the file.  If you edit one
section of a file, even if you update the line numbers for that
section, you will need to search out all the *other* links to sections
in that file and update them as well as they will become stale.  And,
since it will be possible to have multiple org files with links into a
single source file, this will be a *very* difficult thing to manage.

Your idea about regexps sounds promising, though.  You could define
'markers' in comments delimiting the relevant sections of code and
org could search these out easily enough.

Mark

  reply	other threads:[~2010-04-27  0:35 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-23 11:25 Limited #+INCLUDE ? Giles Chamberlin
2010-04-26  8:32 ` Sébastien Vauban
2010-04-26 19:40   ` Dan Davison
2010-04-27  0:34     ` Mark Elston [this message]
2010-04-27  2:19       ` Dan Davison
2010-04-28  0:52         ` Mark Elston
2010-04-27  8:27     ` Eric S Fraga
2010-04-27 10:25       ` Darlan Cavalcante Moreira
2010-04-27 15:12         ` Eric Schulte
2010-04-27 17:26           ` Dan Davison
2010-04-27 17:58             ` Eric Schulte
2010-04-27 18:27             ` Giles Chamberlin
2010-04-27 17:52           ` Samuel Wales
2010-04-27 19:19             ` Dan Davison
2010-04-27 21:56               ` Carsten Dominik
2010-04-29 23:14               ` Samuel Wales

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=4BD6312A.5090108@comcast.net \
    --to=m_elston@comcast.net \
    --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).