emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] refine org-babel-tangle-jump-to-org?


From: Eric Schulte
Subject: Re: [O] refine org-babel-tangle-jump-to-org?
Date: Fri, 07 Jun 2013 09:24:43 -0600
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (gnu/linux)

Rainer M Krug <address@hidden> writes:

> Rainer M Krug <address@hidden> writes:
>
>> Eric Schulte <address@hidden> writes:
>>
> [snip (46 lines)]
>
>>> For now I think both padlines and link comments are required for the
>>> jumping functionality to work.  I've updated the documentation to
>>> reflect this.
>>>
>>
>> Thanks - I will change it accordingly.
>
> I just discovered, that I have a problem with the setting of
> org-src-preserve-indentation, as I am using org to write a package, and
> I have put DESCRIPTION into the org file (as fundamental). If I have
> org-src-preserve-indentation set to t, the lines start with two spaces
> ("  ") which causes an error in reading the files.
>

Couldn't you just not indent these code blocks.  E.g., change

#+begin_src R
  Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec
  hendrerit tempor tellus. Donec pretium posuere tellus. Proin quam
  nisl, tincidunt et, mattis eget, convallis nec, purus. Cum sociis
  natoque penatibus et magnis dis parturient montes, nascetur ridiculus
  mus. Nulla posuere. Donec vitae dolor. Nullam tristique diam non
  turpis. Cras placerat accumsan nulla. Nullam rutrum. Nam vestibulum
  accumsan nisl.
#+end_src

to

#+begin_src R
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec
hendrerit tempor tellus. Donec pretium posuere tellus. Proin quam
nisl, tincidunt et, mattis eget, convallis nec, purus. Cum sociis
natoque penatibus et magnis dis parturient montes, nascetur ridiculus
mus. Nulla posuere. Donec vitae dolor. Nullam tristique diam non
turpis. Cras placerat accumsan nulla. Nullam rutrum. Nam vestibulum
accumsan nisl.
#+end_src

>
> I can disable padlines for these source blocks, which is no problem, but
> I think I can't change the setting for 
> org-src-preserve-indentation for a single block.
>

This is tricky because the indentation is separate from and predates
Babel, so there is no obvious straightforward way to coerce this into a
header argument.

>
> Would it be possible to have this option as a header argument, so that I
> can change it for certain blocks?
>
> The same problem is for the local file arguments: they must not be in
> the DESCRIPTION and NAMESPACE file. 
>

Alright, I think you've convinced me that it could be worthwhile to add
header arguments to support file local variables and read modes in
tangled files.  I don't have the time to implement and document these
new header arguments, but the code should not be too difficult if anyone
else wants to take a shot at it.

In the mean time I'd adjust your hook to wrap the addition of the file
local variable in something like

    ;; -*- emacs-lisp -*-
    (unless (or (string= (buffer-file-name) "DESCRIPTION")
                (string= (buffer-file-name) "NAMESPACE"))
      ;; file local var code goes here
      )

>
> I could use sed or similar to adjust these files, but I would rather
> prefer to
> a) be able to have org-src-preserve-indentation for tangling as a header
> argument
> b) a variable in which I can specify in which tangled files should have
> the local variables included.
>
> By the way, the post-tangle-hook approach works, but it has the
> disadvantage, that each file needs to be written twice - in the mini
> buffer, each tangled file is shown twice. As one org file contains
> several (>10) tangles output files, this adds to the time needed for
> tangling.
>

Agreed, for file modes and maybe local vars special header arguments
would be nice, maybe called tangle-mode and tangle-file-vars or
something.

Best,

>
> Cheers,
>
> Rainer
>  
>
>>
>> Rainer
>>
>> [snip (16 lines)]
>>
>> <#secure method=pgpmime mode=sign>
>>
>

-- 
Eric Schulte
http://cs.unm.edu/~eschulte



reply via email to

[Prev in Thread] Current Thread [Next in Thread]