emacs-orgmode
[Top][All Lists]
Advanced

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

[Orgmode] Re: [BUG] org-babel-perl and formats


From: Łukasz Stelmach
Subject: [Orgmode] Re: [BUG] org-babel-perl and formats
Date: Fri, 09 Apr 2010 11:11:33 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux)

Dan Davison <address@hidden> writes:

> Łukasz Stelmach <address@hidden> writes:
>> I am not sure I will be able to spend some time on this so I'll share my
>> observation with you. org-babel-perl can't cope with perl formats, with
>> their endings to be precise. A format is defined by:
>>
>> format FORMAT_NAME = 
>> body of the format
>> .
>>
>> The problem is that formats *must* and with a single solitary dot or, to
>> be precise "\n.\n" sequence. org-babel-perl doesn't care about it and
>> puts "\t" befor the dot.
>
> Could you post an example? I don't believe we insert tab
> characters. I've never used a perl format before, but I just tried it
> and it seemed to work OK with C-c C-c:
>
> #+begin_src perl
>   format STDOUT =
>   @<<<<<< @|||||| @>>>>>>
>   "left", "middle", "right"
>   .
>   write ;
> #+end_src
>
> #+results:
> : left    middle    right

With the very same code i get

--8<---------------cut here---------------start------------->8---
Format not terminated at - line 11, at end of line
syntax error at - line 11, at EOF
Execution of - aborted due to compilation errors.
--8<---------------cut here---------------end--------------->8---

while strace shows the code being wrapped

write(9, "\nsub main {\n\tformat STDOUT =\n\t@<<<<<< @|||||| 
@>>>>>>\n\t\"left\", \"middle\", \"right\"\n\t.\n\twrite ;address@hidden = 
main;\nopen(o, \">/tmp/perl-functional-results17170oCG\");\nprint o 
join(\"\\n\", @r), \"\\n\"", 184) = 184

inside something really odd:

--8<---------------cut here---------------start------------->8---
  sub main {
          format STDOUT =
          @<<<<<< @|||||| @>>>>>>
          "left", "middle", "right"
          .
          write ;
  }
  @r = main;
  open(o, ">/tmp/perl-functional-results17170oCG");
  print o join("\n", @r), "\n"
--8<---------------cut here---------------end--------------->8---

> Incidentally, do you know the variable org-src-preserve-indentation?
> When I first read your email I thought that would be the answer. In fact
> it doesn't seem to be relevant, but I thought I would mention it anyway.

Unfortunately it doesn't make any difference.

-- 
Miłego dnia,
Łukasz Stelmach





reply via email to

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