emacs-orgmode
[Top][All Lists]
Advanced

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

Re: ob-lilypond.el doesn't generate midi files


From: Maxim Nikulin
Subject: Re: ob-lilypond.el doesn't generate midi files
Date: Sat, 28 Aug 2021 15:20:32 +0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0

On 28/08/2021 02:54, Nick Dokos wrote:

Also check if `org-babel-lilypond-arrange-mode' is t or nil: behavior
is very different depending on that.

Final thought: `xdg-open' starts whatever app it is supposed to run
in the background and returns immediately. That may cause problems with
babel.

To be precise, xdg-open is merely a wrapper. It does not decide whether a viewer should be started in background or in foreground, it just delegates decision concerning particular application and a way to start it to desktop environment (if any is running). Gnome's gio open and kde-open5 launch appropriate viewer in background. In my opinion they are free to do so.

It is a decade-old problem that emacs kills such processes. I disagree that it is e.g. Gnome bug.
https://lists.gnu.org/archive/html/emacs-devel/2009-07/msg00279.html

ob-lilypond.el suffers from this problem in its original form, and it should be fixed.

Approach taken in Org mode for compatibility reasons:
https://code.orgmode.org/bzg/org-mode/commit/869b7a21b94ed112f6640c8f2711c2a68b661dea
Emacs mailcap:
http://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/net/mailcap.el#n1180

Pipe process instead of pty one is not a really robust way. The sour truth is that emacs API does allow reliable "shoot and forget" approach for external applications. Currently viewers might make Emacs CPU hungry for no reason (unsure if applications with such behavior exist in real world however). Eli Zaretskii suspects some incompatibility due to switching from pty to pipe processes, but he refused to provide details
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=12972#38




reply via email to

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