Hi Eric, Eric Schulte wrote: > "Sebastien Vauban" <sva-n...@mygooglest.com> writes: >> Eric Schulte wrote: >>> aditya siram <aditya.si...@gmail.com> writes: >>>> What's the rationale for having padlines by default in tangled source? It >>>> generates wrong programs for languages where whitespace is significant >>>> (Haskell) and, for me, doesn't noticeably improve the look of the tangled >>>> file in cases where it isn't. >>> >>> It is possible to change the value of default header arguments on a >>> per-language basis because e.g., while (:padlines "yes") may make sense >>> for sh, it probably doesn't for Haskell. >> >> Could it be possible that ":padline yes" does not insert a blank line in >> front >> of the very first block, only *between* all blocks? > > I just pushed up a commit which implements this behavior. See the > attached file for an example. > > #+Title: Examples with the new padline behavior > > #+headers: :tangle pad-yes-with-shebang.sed > #+headers: :shebang "#!/bin/sed -f" > #+headers: :padline "yes" > #+begin_src sed > 1 {N;s/\n//1} > #+end_src > > #+headers: :tangle pad-no-with-shebang.sed > #+headers: :shebang "#!/bin/sed -f" > #+headers: :padline "no" > #+begin_src sed > 1 {N;s/\n//1} > #+end_src > > #+headers: :tangle pad-yes-without-shebang.sed > #+headers: :padline "yes" > #+begin_src sed > 1 {N;s/\n//1} > #+end_src > #+headers: :tangle pad-no-without-shebang.sed > #+headers: :padline "no" > #+begin_src sed > 1 {N;s/\n//1} > #+end_src > > 1. Tangle the above four blocks with =C-c C-v t=. > 2. Execute the following code block to view the contents of the > resulting sed files. > > #+begin_src sh :results scalar > head pad*sed > #+end_src > > #+RESULTS: > : ==> padline-example.sed <== > : #!/bin/sed -f > : > : 1 {N;s/\n//1} > : > : ==> pad-no-without-shebang.sed <== > : 1 {N;s/\n//1} > : > : ==> pad-no-with-shebang.sed <== > : #!/bin/sed -f > : 1 {N;s/\n//1} > : > : ==> pad-yes-without-shebang.sed <== > : 1 {N;s/\n//1} > : > : ==> pad-yes-with-shebang.sed <== > : #!/bin/sed -f > : > : 1 {N;s/\n//1}
That seems perfect, and solves corner-cases I wouldn't have thought of (with shebang). Thanks a lot! Best regards, Seb -- Sebastien Vauban