Le 26 avr. 2010 à 19:46, Carl Sorensen a écrit :

> The problem is that the #{ throws off the emacs Scheme editor (at least I
> assume that's what happens).
> 
> So there are two reasonably compliant choices for indentation.
> 
> #(define-music-function (parser location args)
>                        (arg-type-list)
>                        (music-function-return))
> 
> or
> 
> #(define-music-function
>  (parser location args)
>  (arg-type-list)
>  (music-function-return))

Actually, a nice indentation would be:

#(define-music-function (parser location args)
     (arg-type-predicates)
   body)

or:

#(define-music-function
     (parser location args)
     (arg-type-predicates)
   body)


That is, have a double indentation before the arguments and arg predicates,
and normal indentation before the body.  This is how `do' or `let' are
indented for instance: it is easier to distinguish the body from the first
arguments.

Then, a nice lilypond mode would indent the full code as follows:

#(define-music-function (parser location args)
      (arg-type-list)
    #{
      music
    #})



_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to