[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Emacs mode indentation
From: |
Chris Jackson |
Subject: |
Re: Emacs mode indentation |
Date: |
Thu, 24 Jan 2002 11:47:18 +0000 |
User-agent: |
Mutt/1.3.25i |
On Thu, Jan 24, 2002 at 11:20:42AM +0100, Jan Nieuwenhuizen wrote:
> Chris Jackson <address@hidden> writes:
>
> > OK - The code below is a first attempt at indentation for lilypond-mode.
>
> Wow. That first attempt seems to work quite well, at first try!
Excellent.
> > The problem with the accents / phrase marks is that the standard Emacs
> > syntax table is not able to deal with regexps as parenthesis-pairs, just
> > single characters.
>
> Ouch. Have you tried asking emacs gurus (eg address@hidden or
> address@hidden)?
Not directly, but as far as I can tell from browsing mailinglists this
is a recognised limitation. I'll investigate and try to find some other
obscure languages that have characters meaning different things in
different contexts...
> > As a result, this code is *very slow*, especially for indenting big
> > blocks of text at once at the bottom of a source file... But it's OK for
> > indenting single lines as you type.
>
> I must say that the speed is not too bad. On my fairly old G3/233MHz,
> it feels comparable with c-mode's indenting speed.
The problem comes when I have largish source files, looking like, say,
thing = \notes {
(20 lines)
}
nextthing = \notes {
(20 lines)
}
... (about 10 of these)
and I select the block at the bottom of the file and run indent-region,
in which case it can take over a minute (on my Athlon 1.3...), whereas
indenting the equivalent amount of C code would be instant. Not to
mention trying to indent the whole file at once...
> > +;;; some code is taken from ESS (Emacs Speaks Statistics) S-mode by
> > A.J.Rossini <address@hidden>
>
> (that's gpl'd right?)
Yep it's GPL.
> Oh, and could you please send a ChangeLog entry?
--- lilypond-1.5.28/ChangeLog Thu Jan 24 10:40:55 2002
+++ lilypond-1.5.28-new/ChangeLog Thu Jan 24 10:41:17 2002
@@ -1,3 +1,14 @@
+2002-1-24 Chris Jackson <address@hidden>
+
+ * lilypond-indent.el: New file providing indentation for
+ parenthesised blocks of lilypond code in Emacs
+
+ * lilypond-font-lock.el: Changes to the syntax table to facilitate
+ indentation and handle block comments properly. Distinguish
+ accents from close-brackets in fontification.
+
+ * lilypond-mode.el: LilyPond-indent-command set appropriately.
+
2001-12-29 Han-Wen <address@hidden>
* VERSION: 1.5.28 released
thanks,
--
chris