emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
From: Nicolas Goaziou <n.goaziou@gmail.com>
To: emacs-orgmode@gnu.org
Subject: Re: [PATCH 0/3] synctex support for pdf export
Date: Thu, 04 Apr 2013 15:19:35 +0200	[thread overview]
Message-ID: <87mwtexwk8.fsf@gmail.com> (raw)
In-Reply-To: <876206uuxn.fsf@gmail.com> (Aaron Ecay's message of "Mon, 01 Apr 2013 11:33:56 -0400")

Hello,

Aaron Ecay <aaronecay@gmail.com> writes:

> Now that this has come up, I have looked at it more.  It appears that
> the /usr/share/emacs/site-lisp directory is not added to load-path in
> the async export process.  I guess that it should be, since users’
> init.el files could rely on libraries that are found there.

This is debatable. I think that the sub-process shouldn't load too much
libraries. In your case, you effectively need to tweak
`org-export-async-init-file'.

> This will make the problem very difficult, if not impossible.  Generally
> speaking, the buffer that the export functions see bears only a loose
> relationship to the original buffer, since babel blocks, #+include
> directives, etc. have changed the text.  I have tried to think of ways
> to get around this fact, since working with the synctex file requires
> knowing the original line number.  This is the best I could do.

[...]

> Do you have any ideas about how this might be overcome?  What is needed
> is to know, for any line in the exported output, which line of the org
> file it corresponds to (within some small margin of error).

I don't think there is a complete solution to this problem.

Though `org-export-before-processing-hook' allows to work on an exact
copy of the buffer being exported before any file is included and any
Babel block executed. You can add text properties there. And with
`org-export-before-parsing-hook', you can check what parts of the buffer
are new (generated from include keywords, macros and blocks). From there
it may be possible to implement a lookup function which would find the
appropriate line in the original buffer.


Regards,

-- 
Nicolas Goaziou

  reply	other threads:[~2013-04-04 13:19 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-01  3:14 [PATCH 0/3] synctex support for pdf export Aaron Ecay
2013-04-01  3:14 ` [PATCH 1/3] Add :begin-line and :end-line to parser results Aaron Ecay
2013-04-01  3:15 ` [PATCH 2/3] Introduce machinery to ox.el for concordance generation Aaron Ecay
2013-04-01  3:15 ` [PATCH 3/3] Add synctex modification based on concordance Aaron Ecay
2013-04-01  9:15 ` [PATCH 0/3] synctex support for pdf export Nicolas Goaziou
2013-04-01 15:33   ` Aaron Ecay
2013-04-04 13:19     ` Nicolas Goaziou [this message]
2013-04-18  8:29       ` Aaron Ecay
2013-04-18 16:27         ` Rasmus
2013-04-15  9:33   ` Andreas Leha
2013-04-15 11:50     ` Alan Schmitt
2013-04-15 15:37       ` Bastien

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=87mwtexwk8.fsf@gmail.com \
    --to=n.goaziou@gmail.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).