Fix #903: a simpler syntax for note names language
This commit adds a new
\language "foo"
command, where "foo" is the (case-insensitive) name of
any supported language, e.g. "italiano", "suomi" etc.
This function may be used at top-level or anywhere else,
even in -dsafe mode.
Non-supported languages arguments are, well, not supported:
if no recognizable string is provided, ly:gulp-file will just
barf its standard error message.
To preserve full compatibility with existing code, this patch
leaves .ly language files unchanged (therefore, the old syntax
is still perfectly valid). Since all it does is extract the
pitchnames alist from whatever file it processes, more complex
files such as "arabic.ly" are not supported and will output
an error message explaining that \include should be used instead.
In spite of this limitation, this method is a convenient way
of presenting foreign users with a simplified syntax, without
having to bloat the parser with yet another keyword. Of
course, it may be superseeded in the future with a more
specialized implementation, possibly doing away with .ly files
(if we reach a point where preserving compatibility is no
longer an issue).
Add make-void-music function for syntax consistency.
We had make-sequential-music, make-simultaneous-music
and the like, but not make-void-music ('void Music is
used, for instance, in music-functions that only
override options etc.).
Patrick Schmidt [Sun, 19 Sep 2010 19:36:30 +0000 (21:36 +0200)]
doc additions power chords
additions to fretted-strings.itely description and examples for the use of the new command \powerChords
addition of two new modifiers to notation-appendices.itely
Graham Percival [Thu, 21 Oct 2010 07:34:01 +0000 (08:34 +0100)]
Doc: convert-ly on English docs.
I left most of the \RemoveEmptyStaff as it came from convert-ly;
some of the grammar is a bit weird, but the basic idea is still
there.
I excluded
Documentation/snippets/new/
changing-the-time-signature-without-affecting-the-beaming.ly
because convert-ly wasn't smart enough to update it, and neither
am I, since I know nothing about the new beaming code.
Ian Hulin [Mon, 18 Oct 2010 19:20:07 +0000 (20:20 +0100)]
T1265 - Remove deprecation warnings when running with Guile V2 Replace scm_str2symbol with scm_from_locale_symbol, scm_symbol2_string with scm_to_locale_symbol, also scm_num2int, scm_int2num, scm_num2double
This commit makes the code cleaner and more concise,
by removing several duplicate parts. Since I was the one
who last wrote this specific part, I'm feeling kind of
compelled to clean my own mess...
Werner Lemberg [Fri, 15 Oct 2010 21:25:52 +0000 (23:25 +0200)]
[lilypond-book] Fix indentation in LaTeX mode.
Without \noindent, the first line gets always indented. This is such a
severe bug that I wonder how it could stay unnoticed for obviously such a
long time...
Web: add "Free Music Now" article to publications list
Originally written in French, this article was published
in a French music-conservatories magazine in September 2009.
I have translated it and posted it on LilyNet, with an
original untranslated testimony by Francisco.
I hope this qualifies as an "official" publication, since
it has been widely distributed in French music schools.
Graham Percival [Sat, 9 Oct 2010 17:47:22 +0000 (18:47 +0100)]
Make ASSERT_LIVE_IS_ALLOWED() behave as a function
David Kastrup helpfully pointed out that this macro expanded into
multiple statements, whereas it looks like a function call. For
example, something like this:
if (condition) ASSERT_LIVE_IS_ALLOWED(); else
could fail quite badly.
The "do {...} while (0)" is an idiom that compilers optimize away,
but allows the macro to behave as a function.
Trevor Daniels [Sun, 10 Oct 2010 10:02:05 +0000 (11:02 +0100)]
Doc: NR 2.1 Vocal: remove one TODO and add four more :(
- \lyrics is not documented anywhere else, and is
deprecated
- Issue 329 is marked Verified so is presumably fixed.
Even if it isn't, we don't document bugs. This example
shows why not. It takes years for the docs to catch up.