* Fwd: ob-lilypond: pre- and post-processing of source blocks [not found] <0dabc937-df1c-4b65-971b-f83812526af4@dewdrop-world.net> @ 2013-11-04 12:39 ` James Harkins 2013-11-04 14:00 ` Eric Schulte 0 siblings, 1 reply; 5+ messages in thread From: James Harkins @ 2013-11-04 12:39 UTC (permalink / raw) To: Emacs-orgmode [-- Attachment #1: Type: text/plain, Size: 1226 bytes --] Apologies for resending -- I sent this a few hours ago but I don't see it on gmane, or in the gnu.org archive either. Actually the manual answers question #1 -- I should be able to use the prologue header argument for that. And I can already do #2 (included just to outline the desired behavior completely). I haven't found anything in the manual explaining how to run a shell command on the output file from LilyPond execution. That's really the crucial one -- it makes no sense to embed an A4 sized image into a beamer frame... hjh ---------- Forwarded message ---------- From: "James Harkins" <jamshark70@dewdrop-world.net> Date: Nov 4, 2013 1:44 PM Subject: ob-lilypond: pre- and post-processing of source blocks To: "orgmode" <emacs-orgmode@gnu.org> Cc: > I would like to be able to do the following with ob-lilypond (basic mode): > > 1. Wrap the source block in pre- and/or post-strings (specifically to add "\header { tagline = ##f }" before the music expressions). > > 2. Have lilypond compile the block. > > 3. Run "convert -trim" on the resulting png. (Haven't figured out how to use eps output with xelatex.) > > Is this at all feasible? If not, where would I stick this stuff into the orgmode source? > > hjh [-- Attachment #2: Type: text/html, Size: 1608 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Fwd: ob-lilypond: pre- and post-processing of source blocks 2013-11-04 12:39 ` Fwd: ob-lilypond: pre- and post-processing of source blocks James Harkins @ 2013-11-04 14:00 ` Eric Schulte 2013-11-05 4:24 ` James Harkins 0 siblings, 1 reply; 5+ messages in thread From: Eric Schulte @ 2013-11-04 14:00 UTC (permalink / raw) To: jamshark70; +Cc: Emacs-orgmode >> I would like to be able to do the following with ob-lilypond (basic mode): >> >> 1. Wrap the source block in pre- and/or post-strings (specifically to add > "\header { tagline = ##f }" before the music expressions). >> >> 2. Have lilypond compile the block. >> >> 3. Run "convert -trim" on the resulting png. (Haven't figured out how to > use eps output with xelatex.) >> >> Is this at all feasible? If not, where would I stick this stuff into the > orgmode source? >> Look in lisp/ob-lilypond.el. Specifically (1) would be done in `org-babel-expand-body:lilypond', and both (2) and (3) in `org-babel-execute:lilypond'. See http://orgmode.org/worg/org-contribute.html if you want to contribute any enhancements back to Org-mode. Best, -- Eric Schulte https://cs.unm.edu/~eschulte PGP: 0x614CA05D ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Fwd: ob-lilypond: pre- and post-processing of source blocks 2013-11-04 14:00 ` Eric Schulte @ 2013-11-05 4:24 ` James Harkins 2013-11-05 5:35 ` James Harkins 0 siblings, 1 reply; 5+ messages in thread From: James Harkins @ 2013-11-05 4:24 UTC (permalink / raw) To: Eric Schulte; +Cc: jamshark70, Emacs-orgmode [-- Attachment #1: Type: text/plain, Size: 485 bytes --] On Nov 4, 2013 10:08 PM, "Eric Schulte" <schulte.eric@gmail.com> wrote: > Look in lisp/ob-lilypond.el. Specifically (1) would be done in > `org-babel-expand-body:lilypond', and both (2) and (3) in > `org-babel-execute:lilypond'. Thanks. I'm not much of a LISPer so I have no idea when I might get around to that. In the meantime, I was just advised that lilypond has a command-line switch "-dpreview" that should eliminate the need to run "convert -trim." I'll try that first. hjh [-- Attachment #2: Type: text/html, Size: 634 bytes --] ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Fwd: ob-lilypond: pre- and post-processing of source blocks 2013-11-05 4:24 ` James Harkins @ 2013-11-05 5:35 ` James Harkins 2013-11-05 6:17 ` Thomas S. Dye 0 siblings, 1 reply; 5+ messages in thread From: James Harkins @ 2013-11-05 5:35 UTC (permalink / raw) To: Emacs-orgmode; +Cc: Eric Schulte On Tuesday, November 5, 2013 12:24:44 PM HKT, James Harkins wrote: > On Nov 4, 2013 10:08 PM, "Eric Schulte" <schulte.eric@gmail.com> wrote: >> Look in lisp/ob-lilypond.el. Specifically (1) would be done in >> `org-babel-expand-body:lilypond', and both (2) and (3) in >> `org-babel-execute:lilypond'. > > Thanks. I'm not much of a LISPer so I have no idea when I might get around > to that. > > In the meantime, I was just advised that lilypond has a command-line switch > "-dpreview" that should eliminate the need to run "convert -trim." I'll try > that first. I have managed to get this working, by adding this to .emacs (unfortunately, this is not exposed as a defcustom). (setq ly-nix-ly-path "/usr/bin/lilypond -dpreview") Incidentally, it would be very useful if babel offered a header argument for commandline switches. If there is one, it was not obvious at [1] which one it should be. Then, this actually compiles and displays well enough: #+name: pitches #+begin_src lilypond -i :exports both :file pitches.png :prologue \header{tagline=##f} \include "english.ly" { c' e' g' fs' a' c'' ef'' d' } #+end_src Next up: I would like ":prologue \header{tagline=##f}" to be buffer wide. I tried this: #+PROPERTY: header-args:lilypond :prologue \header{tagline=##f} .. but it didn't work at first. [5 minutes] OK, I had to refresh the buffer setup. That wasn't obvious in the documentation. So it all seems to be working now. hjh [1] http://orgmode.org/manual/Specific-header-arguments.html#Specific-header-arguments ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: Fwd: ob-lilypond: pre- and post-processing of source blocks 2013-11-05 5:35 ` James Harkins @ 2013-11-05 6:17 ` Thomas S. Dye 0 siblings, 0 replies; 5+ messages in thread From: Thomas S. Dye @ 2013-11-05 6:17 UTC (permalink / raw) To: James Harkins; +Cc: Emacs-orgmode, Eric Schulte James Harkins <jamshark70@gmail.com> writes: > Incidentally, it would be very useful if babel offered a header argument > for commandline switches. If there is one, it was not obvious at [1] which > one it should be. A header argument for command line switches is implemented for some babel languages. See lines 68-79 of ob-dot.el, for instance, which implements a :cmdline header argument. It might be easy to implement something similar for ob-lilypond.el, as well. All the best, Tom -- Thomas S. Dye http://www.tsdye.com ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-11-05 6:17 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <0dabc937-df1c-4b65-971b-f83812526af4@dewdrop-world.net> 2013-11-04 12:39 ` Fwd: ob-lilypond: pre- and post-processing of source blocks James Harkins 2013-11-04 14:00 ` Eric Schulte 2013-11-05 4:24 ` James Harkins 2013-11-05 5:35 ` James Harkins 2013-11-05 6:17 ` Thomas S. Dye
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).