emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] babel, header arguments.


From: jenia.ivlev
Subject: Re: [O] babel, header arguments.
Date: Fri, 21 Nov 2014 15:55:43 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux)

address@hidden (Thomas S. Dye) writes:

> address@hidden (jenia.ivlev) writes:
>
>> address@hidden (Thomas S. Dye) writes:
>>
>>> Aloha,
>>>
>>> address@hidden (jenia.ivlev) writes:
>>>
>>>> Also, what if I want to import the actual function defintion into
>>>> another src block:
>>>>
>>>>     #+begin_src scheme
>>>>         (+ (my-plus 3 4) 1)
>>>>     #+end_src
>>>>     something here that import the previous function definitions
>>>>
>>>> Is that possible?
>>>
>>> Yes, see section 14.10 Noweb reference syntax in the manual.
>>>
>>> You'll have something that looks like this:
>>>
>>> #+header: :noweb yes
>>> #+begin_src scheme
>>>   <<previous-function-definition>>
>>>   (+ (previous-function 3 4) 1)
>>> #+end_src
>>>
>>> hth,
>>> Tom
>>
>> What do you mean? <<previous-function-definition>> should be replaced
>> with the actual function definition? But I use babel-mode so that I can
>> interlace code in a natural language document. I want these src blocks
>> to be separate.
>>
>>
>
> Sorry, it refers to the name of the source code block.
>
> ,-------------------------------------------------------------------------
> | The “noweb” (see <http://www.cs.tufts.edu/~nr/noweb/>) Literate         
> | Programming system allows named blocks of code to be referenced by using
> | the familiar Noweb syntax:                                              
> |                                                                         
> |      <<code-block-name>>                                                
> `-------------------------------------------------------------------------
>
> hth,
> Tom


I have one last quick question, I have an exmaple here with no-web that
I think should work but doesnt. I wonder why:

    #+BEGIN_SRC C :noweb-ref begin
    int main() {
      printf("Line 1\n");
    
    #+END_SRC
    
    #+BEGIN_SRC C  :noweb-ref middle
    printf("Second\n");
    #+END_SRC
    
    #+BEGIN_SRC C  :noweb-ref end
    }
    main();
    #+END_SRC
    
    
    #+BEGIN_SRC C  :noweb yes
    
        <<begin>>
        <<middle>>
        <<end>>
        printf("some appropriate debug word");
    
 
    #+END_SRC
    
    And the output is:
    /tmp/babel-15080Ms4/C-src-150805OE.c: In function ‘main’:
    /tmp/babel-15080Ms4/C-src-150805OE.c:6:7: warning: incompatible implicit 
declaration of built-in function ‘printf’
           printf("Line 1\n");
           ^
    /tmp/babel-15080Ms4/C-src-150805OE.c: At top level:
    /tmp/babel-15080Ms4/C-src-150805OE.c:10:5: warning: data definition has no 
type or storage class
         main();
         ^
    /tmp/babel-15080Ms4/C-src-150805OE.c:12:8: error: expected declaration 
specifiers or ‘...’ before string constant
     printf("asti");
            ^
    /bin/bash: /tmp/babel-15080Ms4/C-bin-15080GZK: Permission denied

Or if I dont include the 

    printf("some appropriate debug word");

then, I get no output at all.

    `Code block produced no output.`


So my question is how do I make this work. lol.
    

Thanks in advance again




reply via email to

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