org: Code block specific header arguments

 
 Code block specific header arguments
 ....................................
 
 The most common way to assign values to header arguments is at the code
 block level.  This can be done by listing a sequence of header arguments
 and their values as part of the ‘#+BEGIN_SRC’ line.  Properties set in
 this way override both the values of ‘org-babel-default-header-args’ and
 header arguments specified as properties.  In the following example, the
 ‘:results’ header argument is set to ‘silent’, meaning the results of
 execution will not be inserted in the buffer, and the ‘:exports’ header
 argument is set to ‘code’, meaning only the body of the code block will
 be preserved on export to HTML or LaTeX.
 
      #+NAME: factorial
      #+BEGIN_SRC haskell :results silent :exports code :var n=0
      fac 0 = 1
      fac n = n * fac (n-1)
      #+END_SRC
    Similarly, it is possible to set header arguments for inline code
 blocks
 
      src_haskell[:exports both]{fac 5}
 
    Code block header arguments can span multiple lines using ‘#+HEADER:’
 or ‘#+HEADERS:’ lines preceding a code block or nested between the
 ‘#+NAME:’ line and the ‘#+BEGIN_SRC’ line of a named code block.
 
    Multi-line header arguments on an un-named code block:
 
       #+HEADERS: :var data1=1
       #+BEGIN_SRC emacs-lisp :var data2=2
         (message "data1:%S, data2:%S" data1 data2)
       #+END_SRC
 
       #+RESULTS:
       : data1:1, data2:2
 
    Multi-line header arguments on a named code block:
 
         #+NAME: named-block
         #+HEADER: :var data=2
         #+BEGIN_SRC emacs-lisp
           (message "data:%S" data)
         #+END_SRC
 
         #+RESULTS: named-block
         : data:2