From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Kastrup Newsgroups: gmane.emacs.devel Subject: How to find someone working on a (mixed) major mode for LilyPond? Date: Thu, 10 Sep 2015 18:09:14 +0200 Message-ID: <87fv2m6ytx.fsf@fencepost.gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1441901396 25809 80.91.229.3 (10 Sep 2015 16:09:56 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 10 Sep 2015 16:09:56 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Sep 10 18:09:44 2015 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Za4Pq-00006r-Dv for ged-emacs-devel@m.gmane.org; Thu, 10 Sep 2015 18:09:38 +0200 Original-Received: from localhost ([::1]:50197 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Za4Pp-0000tD-Uw for ged-emacs-devel@m.gmane.org; Thu, 10 Sep 2015 12:09:37 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:34300) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Za4PZ-0000sj-Ac for emacs-devel@gnu.org; Thu, 10 Sep 2015 12:09:26 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Za4PT-0000bZ-EL for emacs-devel@gnu.org; Thu, 10 Sep 2015 12:09:21 -0400 Original-Received: from fencepost.gnu.org ([208.118.235.10]:44735) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Za4PT-0000bU-CE for emacs-devel@gnu.org; Thu, 10 Sep 2015 12:09:15 -0400 Original-Received: from localhost ([127.0.0.1]:57770 helo=lola) by fencepost.gnu.org with esmtp (Exim 4.82) (envelope-from ) id 1Za4PS-0000oL-Nl for emacs-devel@gnu.org; Thu, 10 Sep 2015 12:09:15 -0400 Original-Received: by lola (Postfix, from userid 1000) id 3F077DF516; Thu, 10 Sep 2015 18:09:14 +0200 (CEST) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.10 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:189812 Archived-At: As a few people likely know, I'm one of the most active programmers on GNU LilyPond, a music typesetting program. LilyPond has a nice input language and there is an Emacs mode for editing it. Unfortunately, that mode is woefully inadequate and has not kept up with the time. One of the main drawbacks is that LilyPond offers a few one- or two-character sequences for doing a computation/entry/whatever of a single sexp in Scheme (namely GNU GUILE). In a similar manner, inside of GUILE one can escape back into LilyPond by writing #{ ... #} for one LilyPond expression. LilyPond-mode sucks at reliably indenting Scheme expressions. Its indentation and highlighting of Scheme expressions is unnecessarily different from and worse than Emacs' built-in scheme-mode, and quite often after such an embedded Scheme expression, LilyPond's own indentation is thrown off really badly permanently (meaning that the bad indentation is not just the next line but more or less the rest of the document). I've written some note input modes using Midi keyboards: that is quite helpful. However, the inability of LilyPond-mode to do a reasonably nice line-wrap/auto-fill/indentation on the results necessitates a whole lot of manual work afterwards, seriously detracting from the usefulness. I've been "considering" for several years now rewriting most of the stuff from scratch using SMIE, syntactic highlighting and whatnot: backwards or XEmacs compatibility is largely not an issue as people would just be referred to the old mode for that. It's rather abundantly clear that I'll not likely find the time and/or leisure to work myself into those aspects of Emacs sufficiently for creating actually worthwhile code. The main "competition" is a standalone editor Frescobaldi which is actually embarrassingly good regarding indentation/highlighting (of both Scheme and LilyPond code) and is mostly written and extended in Python. Does anybody here have suggestions how to acquire Emacs talent actually somewhat interested in bootstrapping what amounts to a dual-language mode with one mode coming from the Lisp family? As I said: backwards compatibility should be a non-issue so one can dig in with everything Emacs offers, if necessary extending Emacs in the process. -- David Kastrup