For now, remove all @/ sequences from @file references.
New line-breaks will be introduced later with an automatic
rulein order to make the syntax more consistent.
@end example
@item
-Paper margin defaults, as specified in @file{ly/@/paper@/-defaults@/-init@/.ly}, apply
+Paper margin defaults, as specified in @file{ly/paper@/-defaults-init.ly}, apply
to the default paper size (a4) and are automatically scaled according to the
paper size chosen.
make grand-replace
@end example
-Internally, this invokes the script @file{scripts/@/build/@/grand@/-replace@/.py},
+Internally, this invokes the script @file{scripts/build/grand-replace.py},
which performs a regular expression substitution for old-year -> new-year
wherever it finds a valid copyright notice.
-Note that snapshots of third party files such as @file{texinfo@/.tex} should
-not be included in the automatic update; @file{grand@/-replace@/.py} ignores these
+Note that snapshots of third party files such as @file{texinfo.tex} should
+not be included in the automatic update; @file{grand-replace.py} ignores these
files if they are listed in the variable @code{copied_files}.
@c Word counts are updated automatically by translations-status.py
-Translation of @file{Documentation/@/foo/@/bar} should be
-@file{Documentation/@/@var{LANG}/@/foo/@/bar}. Unmentioned files should not
+Translation of @file{Documentation/foo/bar} should be
+@file{Documentation/@var{LANG}/foo/bar}. Unmentioned files should not
be translated.
Priorities:
All manuals live in @file{Documentation/}.
In particular, there are four user manuals, their respective master
-source files are @file{learning@/.tely} (LM, Learning Manual),
-@file{notation@/.tely} (NR, Notation Reference),
-@file{music@/-glossary@/.tely} (MG, Music Glossary), and
-@file{lilypond@/-program} (AU). Each chapter is written in a separate
-file, ending in @file{@/.itely} for files containing lilypond code, and
-@file{@/.itexi} for files without lilypond code, located in a subdirectory
-associated to the manual (@file{learning/} for @file{learning@/.tely}, and
+source files are @file{learning.tely} (LM, Learning Manual),
+@file{notation.tely} (NR, Notation Reference),
+@file{music-glossary.tely} (MG, Music Glossary), and
+@file{lilypond-program} (AU). Each chapter is written in a separate
+file, ending in @file{.itely} for files containing lilypond code, and
+@file{.itexi} for files without lilypond code, located in a subdirectory
+associated to the manual (@file{learning/} for @file{learning.tely}, and
so on); list the subdirectory of each manual to determine the filename
of the specific chapter you wish to modify.
Developer manuals live in @file{Documentation/} too. Currently there is
-only one: the Contributor's Guide @file{contrib@/-guide@/.texi} you are
+only one: the Contributor's Guide @file{contrib-guide.texi} you are
reading.
Snippet files are part of documentation, and the Snippet List (SL) lives
see @@ref@{Controlling direction and placement@}.
Most tweaks should be added to LSR and not placed directly in the
-@file{@/.itely} file. In some cases, tweaks may be placed in the main
+@file{.itely} file. In some cases, tweaks may be placed in the main
text, but ask about this first.
Finally, you should assume that users know what the notation
@item
@@predefined ... @@endpredefined is for commands in
-@file{ly/@/*-init@/.ly}
+@file{ly/*-init.ly}
@item
Do not include any real info in second-level sections (i.e. 1.1
@item
move LSR-worthy material into LSR. Add the snippet, delete the
-material from the @file{@/.itely} file, and add a @@lilypondfile command.
+material from the @file{.itely} file, and add a @@lilypondfile command.
@item
check the examples and descriptions. Do they still work?
In general, any \set or \override commands should go in the
@qq{select snippets} section, which means that they should go in
-LSR and not the @file{@/.itely} file. For some cases, the command
+LSR and not the @file{.itely} file. For some cases, the command
obviously belongs in the @qq{main text} (i.e. not inside
@@predefined or @@seealso or whatever) -- instrument names are a
good example of this.
Material in the Internals reference is generated automatically
from our source code. Any doc work on Internals therefore
-requires modifying files in @file{scm/@/*.scm}. Texinfo is allowed
+requires modifying files in @file{scm/*.scm}. Texinfo is allowed
in these docstrings.
Most documentation writers never touch these, though. If you want
where @var{MY-LANGUAGE} is the ISO 639 language code.
Finally, add a language definition for your language in
-@file{python/@/langdefs@/.py}.
+@file{python/langdefs.py}.
@node Documentation translation details
script @command{texi-langutils.py} and the makefile target are updated.
Some pieces of text manipulated by build scripts that appear in the
-output are translated in a @file{@/.po} file -- just like LilyPond output
-messages -- in @file{Documentation/@/po}. The Gettext domain is named
+output are translated in a @file{.po} file -- just like LilyPond output
+messages -- in @file{Documentation/po}. The Gettext domain is named
@code{lilypond-doc}, and unlike @code{lilypond} domain it is not managed
through the Free Translation Project.
Take care of using typographic rules for your language, especially in
-@file{macros@/.itexi}.
+@file{macros.itexi}.
If you wonder whether a word, phrase or larger piece of text should be
translated, whether it is an argument of a Texinfo command or a small
piece sandwiched between two Texinfo commands, try to track whether and
where it appears in PDF and/or HTML output as visible text. This piece
-of advice is especially useful for translating @file{macros@/.itexi}.
+of advice is especially useful for translating @file{macros.itexi}.
Please keep verbatim copies of music snippets (in @code{@@lilypond}
blocs). However, some music snippets containing text that shows in
@end example
@noindent
-in the source, open @file{Documentation/@/snippets/@/@var{filename}@/.ly},
+in the source, open @file{Documentation/snippets/@var{filename}.ly},
translate the @code{texidoc} header field it contains, enclose it with
@code{texidoc@var{MY-LANGUAGE} = "} and @code{"}, and write it into
-@file{Documentation/@/@var{MY-LANGUAGE}/@/texidocs/@/@var{filename}@/.texidoc}.
+@file{Documentation/@var{MY-LANGUAGE}/texidocs/@var{filename}.texidoc}.
Additionally, you may translate the snippet's title in @code{doctitle}
header field, in case @code{doctitle} is a fragment option used in
@code{@@lilypondfile}; you can do this exactly the same way as
@code{texidoc}. For instance,
-@file{Documentation/@/@var{MY-LANGUAGE}/@/texidocs/@/@var{filename}@/.texidoc}
+@file{Documentation/@var{MY-LANGUAGE}/texidocs/@var{filename}.texidoc}
may contain
@example
@noindent
Then, you should get these translated strings into compiled snippets in
-@file{Documentation/@/snippets}, see @q{General guidelines} in @ref{Adding
+@file{Documentation/snippets}, see @q{General guidelines} in @ref{Adding
and editing snippets}.
@code{@@example} blocks need not be verbatim copies, e.g. variable
@seeCommittishesUpdate
Global state of the translation is recorded in
-@file{Documentation/@/translations@/.itexi}, which is used to generate
+@file{Documentation/translations.itexi}, which is used to generate
Translations status page. To update that page, do from
@file{Documentation/}
make translation-status
@end example
-This will also leave @file{out/@/translations@/-status@/.txt}, which contains
+This will also leave @file{out/translations-status.txt}, which contains
up-to-dateness percentages for each translated file, and update word
counts of documentation files in this Guide.
@seeCommittishesUpdate
-Texinfo skeleton files, i.e. @file{@/.itely} files not yet translated,
+Texinfo skeleton files, i.e. @file{.itely} files not yet translated,
containing only the first node of the original file in English can be
updated automatically: whenever @command{make check-translation} shows
that such files should be updated, run from @file{Documentation/}
make ISOLANG=@var{MY_LANGUAGE} skeleton-update
@end example
-@file{@/.po} message catalogs in @file{Documentation/@/po/} may be updated
-by issuing from @file{Documentation/} or @file{Documentation/@/po/}
+@file{.po} message catalogs in @file{Documentation/po/} may be updated
+by issuing from @file{Documentation/} or @file{Documentation/po/}
@example
make po-update
@end example
This script overwrites music snippets in
-@file{@var{MY_LANGUAGE/@/foo/@/every@/.itely}} with music snippets from
-@file{@var{foo/@/every@/.itely}}. It ignores skeleton files, and keeps
+@file{@var{MY_LANGUAGE/foo/every.itely}} with music snippets from
+@file{@var{foo/every.itely}}. It ignores skeleton files, and keeps
intact music snippets preceded with a line starting with @code{@@c
-KEEP LY}; it reports an error for each @file{@/.itely} that has not the
+KEEP LY}; it reports an error for each @file{.itely} that has not the
same music snippet count in both languages. Always use this script
with a lot of care, i.e. run it on a clean Git working tree, and check
the changes it made with @command{git diff} before committing; if you
no sense in their context.
When you have updated texidocs in
-@file{Documentation/@/@var{MY-LANGUAGE}/@/texidocs}, you can get these
-changes into compiled snippets in @file{Documentation/@/snippets}, see
+@file{Documentation/@var{MY-LANGUAGE}/texidocs}, you can get these
+changes into compiled snippets in @file{Documentation/snippets}, see
@q{General guidelines} in @ref{Adding and editing snippets}.
Finally, a command runs the three update processes above for all
@end example
A special case is updating Snippet documentation strings in
-@file{Documentation/@/@var{MY-LANGUAGE}/@/texidocs}. For these to be
+@file{Documentation/@var{MY-LANGUAGE}/texidocs}. For these to be
correctly marked as up-to-date, first run @code{makelsr.py} as
explained in @ref{Adding and editing snippets}, and commit the
-resulting compiled snippets left in @file{Documentation/@/snippets/}.
+resulting compiled snippets left in @file{Documentation/snippets/}.
Say the SHA1 ID code of this commit is <C>. Now edit again your
-translated files in @file{Documentation/@/@var{MY-LANGUAGE}/@/texidocs}
+translated files in @file{Documentation/@var{MY-LANGUAGE}/texidocs}
adjusting the 40-digit committish that appears in the text to be <C>;
finally, commit these updated files. Not doing so would result in
changes made both to your updates and original snippets to
@item Update macros.itexi.
For each obsolete macro definition, if it is possible to update macro
usage in documentation with an automatic text or regexp substitution,
-do it and delete the macro definition from @file{macros@/.itexi}; otherwise,
+do it and delete the macro definition from @file{macros.itexi}; otherwise,
mark this macro definition as obsolete with a comment, and keep it in
-@file{macros@/.itexi} until the documentation translation has been updated and
+@file{macros.itexi} until the documentation translation has been updated and
no longer uses this macro.
-@item Update @file{@/*@/.tely} files completely with
+@item Update @file{*.tely} files completely with
@command{make check-translation} -- you may want to redirect output
to a file because of overwhelming output, or call check-translation.py
on individual files, see @ref{Check state of translation}.
-@item In @file{@/.itelys}, match sections and .itely file names with those from
+@item In @file{.itelys}, match sections and .itely file names with those from
English docs, which possibly involves moving nodes contents in block
between files, without updating contents itself. In other words, the
game is catching where has gone each section. In Learning manual, and
A number of Python scripts handle a part of the documentation
translation process. All scripts used to maintain the translations
-are located in @file{scripts/@/auxiliar/}.
+are located in @file{scripts/auxiliar/}.
@itemize
-@item @file{check@/_translation@/.py} -- show diff to update a translation,
-@item @file{texi@/-langutils@/.py} -- quickly and dirtily parse Texinfo files to
+@item @file{check_translation.py} -- show diff to update a translation,
+@item @file{texi-langutils.py} -- quickly and dirtily parse Texinfo files to
make message catalogs and Texinfo skeleton files,
-@item @file{texi@/-skeleton@/-update@/.py} -- update Texinfo skeleton files,
-@item @file{update@/-snippets@/.py} -- synchronize ly snippets with those
+@item @file{texi-skeleton-update.py} -- update Texinfo skeleton files,
+@item @file{update-snippets.py} -- synchronize ly snippets with those
from English docs,
-@item @file{translations@/-status@/.py} -- update translations status pages and word
+@item @file{translations-status.py} -- update translations status pages and word
counts in the file you are reading,
-@item @file{tely@/-gettext@/.py} -- gettext node names, section titles and references
+@item @file{tely-gettext.py} -- gettext node names, section titles and references
in the sources; WARNING only use this script once for each file, when support for
"makeinfo --html" has been dropped.
@end itemize
-Other scripts are used in the build process, in @file{scripts/@/build/}:
+Other scripts are used in the build process, in @file{scripts/build/}:
@itemize
-@item @file{mass@/-link@/.py} -- link or symlink files between English documentation
+@item @file{mass-link.py} -- link or symlink files between English documentation
and documentation in other languages.
@end itemize
-Python modules used by scripts in @file{scripts/@/auxiliar/} or @file{scripts/@/build/} (but
-not by installed Python scripts) are located in @file{python/@/auxiliar/}:
+Python modules used by scripts in @file{scripts/auxiliar/} or @file{scripts/build/} (but
+not by installed Python scripts) are located in @file{python/auxiliar/}:
@itemize
-@item @file{manuals@/_definitions@/.py} -- define manual names and name of
+@item @file{manuals_definitions.py} -- define manual names and name of
cross-reference Texinfo macros,
-@item @file{buildlib@/.py} -- common functions (read piped output
+@item @file{buildlib.py} -- common functions (read piped output
of a shell command, use Git),
-@item @file{postprocess@/_html@/.py} (module imported by @file{www_post@/.py}) -- add footer and
+@item @file{postprocess_html.py} (module imported by @file{www_post.py}) -- add footer and
tweak links in HTML pages.
@end itemize
And finally
@itemize
-@item @file{python/@/langdefs@/.py} -- language definitions module
+@item @file{python/langdefs.py} -- language definitions module
@end itemize
@qq{host}.
@item
-Download the @file{lilybuntu@/.iso} disk image.
+Download the @file{lilybuntu.iso} disk image.
@example
@uref{http://@/files.lilynet.net/@/lilybuntu.iso}
@end example
@item
-Install @file{lilybuntu@/.iso} as the @qq{client} operating system
+Install @file{lilybuntu.iso} as the @qq{client} operating system
on your virtualized system.
The latest version of lilybuntu is based on Ubuntu 9.04; if you
@item
If the issue has a notation example which fits in one system,
-generate a small @file{bug@/.preview@/.png} file with:
+generate a small @file{bug.preview.png} file with:
@example
lilypond -dpreview bug.ly
@item
If the issue has an example which requires more than one system
-(i.e. a spacing bug), generate a @file{bug@/.png} file with:
+(i.e. a spacing bug), generate a @file{bug.png} file with:
@example
lilypond --png bug.ly
@item
If the issue requires multi-page output, then generate a
-@file{bug@/.pdf} file with the normal:
+@file{bug.pdf} file with the normal:
@example
lilypond --png bug.ly
If the new snippet uses new features that are not available in the
current LSR version, the snippet should be added to
-@file{Documentation/@/snippets/@/new} and a reference should be added to the
+@file{Documentation/snippets/new} and a reference should be added to the
manual.
-Snippets created or updated in @file{Documentation/@/snippets/@/new} should
-be copied to @file{Documentation/@/snippets} by invoking at top of the
+Snippets created or updated in @file{Documentation/snippets/new} should
+be copied to @file{Documentation/snippets} by invoking at top of the
source tree
@example
@noindent
This also copies translated texidoc fields and snippet titles into
-snippets in @file{Documentation/@/snippets}. Note: this, in turn, could
+snippets in @file{Documentation/snippets}. Note: this, in turn, could
make the translated texidoc fields to appear as out of sync when you
run @code{make check-translation}, if the originals changed from the
last translation update, even if the translations are also updated;
Be sure that @command{make doc} runs successfully before submitting a
patch, to prevent breaking compilation.
-@subheading Formatting snippets in @file{Documentation/@/snippets/@/new}
+@subheading Formatting snippets in @file{Documentation/snippets/new}
When adding a file to this directory, please start the file with
@end example
\noindent
-and name the file @file{snippet@/-title@/.ly}.
+and name the file @file{snippet-title.ly}.
@node Approving snippets
@end enumerate
Note that whenever there is one snippet from
-@file{Documentation/@/snippets/@/new} and the other from LSR with the same
-file name, the one from @file{Documentation/@/snippets/@/new} will be copied
+@file{Documentation/snippets/new} and the other from LSR with the same
+file name, the one from @file{Documentation/snippets/new} will be copied
by @command{makelsr.py}.
@node Fixing snippets in LilyPond sources
@section Fixing snippets in LilyPond sources
-In case some snippet from @file{Documentation/@/snippets} causes the
+In case some snippet from @file{Documentation/snippets} causes the
documentation compilation to fail, the following steps should be
followed to fix it reliably.
@enumerate
@item
-Look up the snippet filename @file{@var{foo}@/.ly} in the error output
-or log, then fix the file @file{Documentation/@/snippets/@/@var{foo}@/.ly} to make the
+Look up the snippet filename @file{@var{foo}.ly} in the error output
+or log, then fix the file @file{Documentation/snippets/@var{foo}.ly} to make the
documentation build successfully.
@item
when some features has been introduced or vastly changed so it requires
(or takes significant advantage of) important changes in the snippet, it
is simpler and recommended to write a new version of the snippet in
-@file{Documentation/@/snippets/@/new}, then run @command{makelsr.py}.
+@file{Documentation/snippets/new}, then run @command{makelsr.py}.
@item
@strong{In case the snippet comes from}
-@file{Documentation/@/snippets/@/new}, apply in
-@file{Documentation/@/snippets/@/new/@/@var{foo}@/.ly} the same fix you did in
-@file{Documentation/@/snippets/@/@var{foo}@/.ly}. In case the build failure
+@file{Documentation/snippets/new}, apply in
+@file{Documentation/snippets/new/@var{foo}.ly} the same fix you did in
+@file{Documentation/snippets/@var{foo}.ly}. In case the build failure
was caused by a translation string, you may have to fix
-@file{input/@/texidocs/@/@var{foo}@/.texidoc} instead.
+@file{input/texidocs/@var{foo}.texidoc} instead.
@item
In any case, commit all changes to Git.
@item
Copy relevant snippets (i.e., snippets whose version is equal to or less
than the new version of LilyPond) from
-@file{Documentation/@/snippets/@/new/} into the tarball.
+@file{Documentation/snippets/new/} into the tarball.
You must not rename any files during this, or the next, stage.
@item
When LSR has been updated, download another snippet tarball, verify that
-the relevant snippets from @file{Documentation/@/snippets/@/new/} were
+the relevant snippets from @file{Documentation/snippets/new/} were
included, then delete those snippets from
-@file{Documentation/@/snippets/@/new/}.
+@file{Documentation/snippets/new/}.
@end enumerate
-Here is a shell script to run all @file{@/.ly} files in a directory
+Here is a shell script to run all @file{.ly} files in a directory
and redirect terminal output to text files, which are then
searched for the word "failed" to see which snippets do not compile.
begins.
Each type of music event has an associated iterator. Iterators are defined in
-@file{@/*@/-iterator@/.cc}. During iteration, an
+@file{*-iterator.cc}. During iteration, an
event's iterator is called to deliver that music event to the appropriate
context(s).
through its two derived classes: Engraver (for graphical output) and
Performer (for midi output).
-Translators are defined in C++ files named @file{@/*@/-engraver@/.cc}
-and @file{@/*@/-performer@/.cc}.
+Translators are defined in C++ files named @file{*-engraver.cc}
+and @file{*-performer.cc}.
Much of the work of translating is handled by Scheme functions,
which is one of the keys to LilyPond's exceptional flexibility.
@node Programming without compiling
@section Programming without compiling
-Much of the development work in LilyPond takes place by changing @file{@/*@/.ly} or
-@file{@/*@/.scm} files. These changes can be made without compiling LilyPond. Such
+Much of the development work in LilyPond takes place by changing @file{*.ly} or
+@file{*.scm} files. These changes can be made without compiling LilyPond. Such
changes are described in this section.
Much of LilyPond is written in Scheme or LilyPond input files. These
files are interpreted when the program is run, rather than being compiled
when the program is built, and are present in all LilyPond distributions.
-You will find @file{@/.ly} files in the @file{ly/@/} directory and the Scheme files in the
-@file{scm/@/} directory. Both Scheme files and @file{@/.ly} files can be modified and
+You will find @file{.ly} files in the @file{ly/} directory and the Scheme files in the
+@file{scm/} directory. Both Scheme files and @file{.ly} files can be modified and
saved with any text editor. It's probably wise to make a backup copy of
your files before you modify them, although you can reinstall if the
files become corrupted.
case -- this can be very useful if you are not yet familiar with
our capitalization conventions.
-The most likely directories to grep for function names are @file{scm/@/} for
-scheme files, ly/ for lilypond input (@file{@/*@/.ly}) files, and @file{lily/@/} for C++
+The most likely directories to grep for function names are @file{scm/} for
+scheme files, ly/ for lilypond input (@file{*.ly}) files, and @file{lily/} for C++
files.
scripts/auxiliar/fixcc.py lily/my-test-file.cc
@end example
-Be sure you replace @file{my@/-test@/-file@/.cc} with the name of the file
+Be sure you replace @file{my-test-file.cc} with the name of the file
that you edited.
If you are editing a file that contains an ADD_TRANSLATOR or ADD_INTERFACE
@}
@end example
-See also @file{flower/@/getopt@/-long@/.cc} and @file{lily/@/main@/.cc}.
+See also @file{flower/getopt-long.cc} and @file{lily/main.cc}.
@item
Do not use leading or trailing whitespace in messages. If you need
@end example
@noindent
This loads the LilyPond symbol tables into gdb. Then, to run
-LilyPond on @file{test@/.ly} under the debugger, enter the following:
+LilyPond on @file{test.ly} under the debugger, enter the following:
@example
run test.ly
has all the LilyPond modules loaded. This requires the following
steps.
-First, define a Scheme symbol for the active module in the @file{@/.ly} file:
+First, define a Scheme symbol for the active module in the @file{.ly} file:
@example
#(module-define! (resolve-module '(guile-user))
'lilypond-module (current-module))
@end example
-Now place a Scheme function in the @file{@/.ly} file that gives an
+Now place a Scheme function in the @file{.ly} file that gives an
interactive Guile prompt:
@example
#(top-repl)
@end example
-When the @file{@/.ly} file is compiled, this causes the compilation to be
+When the @file{.ly} file is compiled, this causes the compilation to be
interrupted and an interactive guile prompt to appear. Once the
guile prompt appears, the LilyPond active module must be set as the
current guile module:
guile> (quit)
@end example
-The compilation of the @file{@/.ly} file will then continue.
+The compilation of the @file{.ly} file will then continue.
@subheading Using the Guile debugger
command at the guile prompt.
Embedding breakpoint commands like this is particularly useful if
-you want to look at how the Scheme procedures in the @file{@/.scm}
+you want to look at how the Scheme procedures in the @file{.scm}
files supplied with LilyPond work. To do this, edit the file in
the relevant directory to add this line near the top:
Now you can set a breakpoint after the procedure you are interested
in has been declared. For example, if you are working on routines
-called by @var{print-book-with} in @file{lily@/-library@/.scm}:
+called by @var{print-book-with} in @file{lily-library.scm}:
@example
(define (print-book-with parser book process-procedure)
make -C lily clean && make -C lily
@end example
-@item Create a graphviz-compatible @file{@/.ly} file
+@item Create a graphviz-compatible @file{.ly} file
-In order to use the graphviz utility, the @file{@/.ly} file must include
-@file{ly/@/graphviz@/-init@/.ly}, and should then specify the
+In order to use the graphviz utility, the @file{.ly} file must include
+@file{ly/graphviz-init.ly}, and should then specify the
grobs and symbols that should be tracked. An example of this
-is found in @file{input/@/regression/@/graphviz@/.ly}.
+is found in @file{input/regression/graphviz.ly}.
@item Run lilypond with output sent to a log file
In order to demonstrate that the code works properly, you will
need to write one or more regression tests. These tests are
-typically @file{@/.ly} files that are found in @file{input/@/regression}.
+typically @file{.ly} files that are found in @file{input/regression}.
Regression tests should be as brief as possible to demonstrate the
functionality of the code.
@end itemize
If you modify any source files that have to be compiled (such as
-@file{@/.cc} or @file{@/.hh} files in @file{flower/@/} or @file{lily/@/}),
+@file{.cc} or @file{.hh} files in @file{flower/} or @file{lily/}),
then you must run @command{make} before @command{make test-redo},
so @command{make} can compile the modified files and relink all
the object files. If you only modify files which are interpreted,
-like those in the @file{scm/@/} and @file{ly/@/} directories, then
+like those in the @file{scm/} and @file{ly/} directories, then
@command{make} is not needed before @command{make test-redo}.
TODO: Fix the following paragraph. You can do @command{rm mf/out/*}
instead of make clean, and you can probably do
@command{make -C mf/ clean} as well, but I haven't checked it -- cds
-Also, if you modify any font definitions in the @file{mf/@/}
+Also, if you modify any font definitions in the @file{mf/}
directory then you must run @command{make clean} and
@command{make} before running @command{make test-redo}. This will
recompile everything, whether modified or not, and takes a lot
longer.
Running @command{make@tie{}check} will leave an HTML page
-@file{out/@/test@/-results/@/index@/.html}. This page shows all the
+@file{out/test-results/index.html}. This page shows all the
important differences that your change introduced, whether in the
layout, MIDI, performance or error reporting.
@end example
@noindent with @code{\paper}, @code{\midi} and @code{\header} being
-nested scope inside the @file{@/.ly} file-level scope. @w{@code{foo = 1}}
+nested scope inside the @file{.ly} file-level scope. @w{@code{foo = 1}}
is translated in to a scheme variable definition.
This implemented using modules, with each scope being an anonymous
module that imports its enclosing scope's module.
-Lilypond's core, loaded from @file{@/.scm} files, is usually placed in the
-@code{lily} module, outside the @file{@/.ly} level. In the case of
+Lilypond's core, loaded from @file{.scm} files, is usually placed in the
+@code{lily} module, outside the @file{.ly} level. In the case of
@example
lilypond a.ly b.ly
@noindent
we want to reuse the built-in definitions, without changes effected in
-user-level @file{a@/.ly} leaking into the processing of @file{b@/.ly}.
+user-level @file{a.ly} leaking into the processing of @file{b.ly}.
The user-accessible definition commands have to take care to avoid
memory leaks that could occur when running multiple files. All
@itemize
@item
-@file{paper@/-score@/.cc} , Paper_score::process_
+@file{paper-score.cc} , Paper_score::process_
@item
-@file{system@/.cc} , System::get_lines()
+@file{system.cc} , System::get_lines()
@item
The step, where things go from grobs to output, is in
System::get_line(): each grob delivers a Stencil (a Device
independent output description), which is interpreted by our
-outputting backends (@file{scm/@/output@/-tex@/.scm} and
-@file{scm/@/output@/-ps@/.scm}) to produce TeX and PS.
+outputting backends (@file{scm/output-tex.scm} and
+@file{scm/output-ps.scm}) to produce TeX and PS.
@end itemize
@subheading Where is the functionality associated with KEYWORDs?
-See @file{my@/-lily@/-lexer@/.cc} (keywords, there aren't that many)
-and @file{ly/@/@/*@/.ly} (most of the other backslashed @code{@/\words} are identifiers)
+See @file{my-lily-lexer.cc} (keywords, there aren't that many)
+and @file{ly/*.ly} (most of the other backslashed @code{/\words} are identifiers)
@subheading What Contexts/Properties/Music/etc. are available when they are processed?
What do you mean exactly with this question?
-See @file{ly/@/engraver@/-init@/.ly} for contexts,
-see @file{scm/@/define@/-@/*@/.scm} for other objects.
+See @file{ly/engraver-init.ly} for contexts,
+see @file{scm/define-*.scm} for other objects.
@subheading How do you decide if something is a Music, Context, or Grob property?
Why is part-combine-status a Music property when it seems (IMO)
\autochange is one of these extra strange beasts: it requires
look-ahead to decide when to change staves. This is achieved by
running the interpreting step twice (see
-@file{scm/@/part@/-combiner@/.scm} , at the bottom), and
+@file{scm/part-combiner.scm} , at the bottom), and
storing the result of the first step (where to switch
staves) in a Music property. Since you want to influence that
where-to-switch list, your must affect the code in
-make-autochange-music (@file{scm/@/part@/-combiner@/.scm}).
+make-autochange-music (@file{scm/part-combiner.scm}).
That code is called directly from the parser and there are no
official "parsing properties" yet, so there is no generic way
to tune \autochange. We would have to invent something new
-> the second c' remains untransposed.
-Take a look at @file{lily/@/music@/.cc} to see where the transposition takes place.
+Take a look at @file{lily/music.cc} to see where the transposition takes place.
@subheading How do I tell about the execution environment?
@end example
noindent
-inside the @file{@/.ly} file.
+inside the @file{.ly} file.
The breakpoint failing may have to do with the call sequence. See
-@file{parser@/.yy}, run_music_function(). The function is called directly from
+@file{parser.yy}, run_music_function(). The function is called directly from
C++, without going through the GUILE evaluator, so I think that is why
there is no debugger trap.
as described in @rweb{Bug reports}.
@warning{ The special regression test
-@file{test@/-output@/-distance@/.ly} will always show up as a
+@file{test-output-distance.ly} will always show up as a
regression. This test changes each time it is run, and serves to
verify that the regression tests have, in fact, run.}
@end example
The regtest output will then be available in
-@file{input/@/regression/@/out@/-test}.
-@file{input/@/regression/@/out@/-test/@/collated@/-examples@/.html}
+@file{input/regression/out-test}.
+@file{input/regression/out-test/collated-examples.html}
contains a listing of all the regression tests that were run,
but none of the images are included. Individual images are
also available in this directory.
@end example
After @samp{make@tie{}check} is complete, a regression test comparison
-will be available at @file{out/@/test@/-results/@/index@/.html}.
+will be available at @file{out/test-results/index.html}.
For each regression test that differs between the baseline and the
changed code, a regression test entry will displayed. Ideally, the
only changes would be the changes that you were working on. If
code.
@warning{
-The special regression test @file{test@/-output@/-distance@/.ly} will always
+The special regression test @file{test-output-distance.ly} will always
show up as a regression. This test changes each time it is run, and
serves to verify that the regression tests have, in fact, run.}
make test-redo
@end example
-This updates the regression list at @file{out/@/test@/-results/@/index@/.html}.
-It does @emph{not} redo @file{test@/-output@/-distance@/.ly}.
+This updates the regression list at @file{out/test-results/index.html}.
+It does @emph{not} redo @file{test-output-distance.ly}.
When all regressions have been resolved, the output list will be empty.
can be used to test any MusicXML implementation.
The MusicXML regression tests are found at
-@file{input/@/regression/@/musicxml/}.
+@file{input/regression/musicxml/}.
The output resulting from running these tests
through @samp{muscxml2ly} followed by @samp{lilypond} is
make LILYPOND_BRANCH=stable/2.12 lilypond
@end example
-@item Check the regtest comparison in @file{uploads/@/webtest/} for
+@item Check the regtest comparison in @file{uploads/webtest/} for
any unintentional breakage. More info in
@ref{Precompiled regression tests}.
@item
update links to distros providing lilypond packages? link in:
-@file{Documentation@/web@/download@/.itexi}
+@file{Documentation/web/download.itexi}
This has nothing to do with the release, but it's a "periodic
maintenance" task that might make sense to include with releases.
@item
To run the program from the command line, navigate to the
-directory containing @file{lily@/-git@/.tcl} and enter:
+directory containing @file{lily-git.tcl} and enter:
@example
wish lily-git.tcl
@subsubheading 1. Get source / Update source
When you click the @qq{Get source} button, @command{lily-git} will
-create a directory called @file{lilypond@/-git/} within your home
+create a directory called @file{lilypond-git/} within your home
directory, and will download the source code into that
directory (around 55Mb). When the process is finished, the
@qq{Command output} window will display @qq{Done}, and the button
label will change to say @qq{Update source}.
-Navigate to the @file{lilypond@/-git/} directory to view the source
+Navigate to the @file{lilypond-git/} directory to view the source
files. You should now be able to modify the source files using
your normal text editor.
hopelessly confused!}
The button labeled @qq{Abort changes -- Reset to origin} will copy
-all changed files to a subdirectory of @file{lilypond@/-git/} named
-@file{aborted@/_edits/}, and will reset the repository to the
+all changed files to a subdirectory of @file{lilypond-git/} named
+@file{aborted_edits/}, and will reset the repository to the
current state of the remote repository (at @code{git.sv.gnu.org}).
Once Git is installed, you'll need to create a new directory where
your initial repository will be stored (the example below uses
-@file{@/~/lilypond@/-git/}, where @code{~} represents your home
+@file{~/lilypond-git/}, where @code{~} represents your home
directory). Run @command{git@tie{}init} from within the new
directory to initialize an empty repository:
@subsubheading Technical details
-This creates (within the @file{@/~/lilypond@/-git/} directory) a
-subdirectory called @file{@/.git/}, which Git uses to keep track of
+This creates (within the @file{~/lilypond-git/} directory) a
+subdirectory called @file{.git/}, which Git uses to keep track of
changes to the repository, among other things. Normally you don't
need to access it, but it's good to know it's there.
@warning{Throughout the rest of this manual, all command-line
input should be entered from the top directory of the Git
-repository being discussed (eg. @file{@/~/lilypond@/-git/}). This is
+repository being discussed (eg. @file{~/lilypond-git/}). This is
referred to as a @emph{top source directory}.}
Before downloading a copy of the main LilyPond repository, you
Git stores the information entered with
@command{git@tie{}config@tie{}--global} in the file
-@file{@/.gitconfig}, located in your home directory. This file can
+@file{.gitconfig}, located in your home directory. This file can
also be modified directly, without using
-@command{git@tie{}config}. The @file{@/.gitconfig} file generated
+@command{git@tie{}config}. The @file{.gitconfig} file generated
by the above commands would look like this:
@example
Using the @command{git@tie{}config} command @emph{without} the
@command{--global} option configures repository-specific settings,
-which are stored in the file @file{@/.git/@/config}. This file is
+which are stored in the file @file{.git/config}. This file is
created when a repository is initialized (using
@command{git@tie{}init}), and by default contains these lines:
@end example
By now the source files should be accessible---you should be able
-to edit any files in the @file{lilypond@/-git/} directory using a
+to edit any files in the @file{lilypond-git/} directory using a
text editor of your choice. But don't start just yet! Before
editing any source files, learn how to keep your changes organized
and prevent problems later---read @ref{Basic Git procedures}.
@subsubheading Technical Details
The @command{git@tie{}remote@tie{}add} command should add some
-lines to your local repository's @file{@/.git/@/config} file:
+lines to your local repository's @file{.git/config} file:
@example
[remote "origin"]
The @command{git@tie{}config} command mentioned above adds the
line @code{rebase = true} to the master branch in your local
-repository's @file{@/.git/@/config} file:
+repository's @file{.git/config} file:
@example
[branch "master"]
git clone git://neugierig.org/git-cl.git
@end example
-Then, add the @file{git@/-cl} directory to your PATH, or create a
+Then, add the @file{git-cl} directory to your PATH, or create a
symbolic link to the @command{git-cl} and @command{upload.py} in
-one of your PATH directories (like @file{usr/@/bin}). Then
+one of your PATH directories (like @file{usr/bin}). Then
configure the program by running:
@example
The commands above don't only bring you the latest version of the
sources, but also the full history of revisions (revisions, also
called commits, are changes made to the sources), stored in the
-@file{@/.git} directory. You can browse this history with
+@file{.git} directory. You can browse this history with
@example
git log # only shows the logs (author, committish and commit message)
@end example
When prompted for a location to save the key, press <ENTER> to
-accept the default location (@file{~/.ssh/@/id_dsa}).
+accept the default location (@file{~/.ssh/id_dsa}).
Next you are asked to enter an optional passphrase. On most
systems, if you use a passphrase, you will likely be prompted for
@end example
After setting up your passphrase, your private key is saved as
-@file{~/.ssh/@/id_dsa} and your public key is saved as
-@file{~/.ssh/@/id_dsa@/.pub}.
+@file{~/.ssh/id_dsa} and your public key is saved as
+@file{~/.ssh/id_dsa.pub}.
@item
Register your public SSH @q{dsa} key with Savannah. From the
@qq{My Account Configuration} page, click on @qq{Edit SSH Keys},
-then paste the contents of your @file{~/.ssh/@/id_dsa@/.pub} file into
+then paste the contents of your @file{~/.ssh/id_dsa.pub} file into
one of the @qq{Authorized keys} text fields, and click
@qq{Update}.
@end example
The list of known hosts is stored in the file
-@file{~/.ssh/@/known@/_hosts}.
+@file{~/.ssh/known_hosts}.
At this point, you are prompted for your passphrase if you have
one, then Git will attempt a pull.
@item
The @command{git@tie{}config} commands above should modify your
-local repository's @file{@/.git/@/config} file. These lines:
+local repository's @file{.git/config} file. These lines:
@example
[remote "origin"]
@item
Similarly, the
@command{git@tie{}config@tie{}push.default@tie{}matching} command
-should add these lines to @file{@/.git/@/config}:
+should add these lines to @file{.git/config}:
@example
[push]
@item
The bibliography in Community->Publications is generated automatically
-from @file{@/.bib} files; formatting is done automatically by
-@file{texi@/-web@/.bst}.
+from @file{.bib} files; formatting is done automatically by
+@file{texi-web.bst}.
@item
@dots{}
@subheading Initial setup
-You should symlink your own @file{@/~/lilypond/} to
-@file{@/~graham/@/lilypond/}
+You should symlink your own @file{~/lilypond/} to
+@file{~graham/lilypond/}
If this directory does not exist, make it. Git master should go
-in @file{@/~/lilypond/@/lilypond@/-git/} but make sure you enable:
+in @file{~/lilypond/lilypond-git/} but make sure you enable:
@example
git config core.filemode false
@end example
-If you have created any files in @file{@/~graham/@/lilypond/} then
+If you have created any files in @file{~graham/lilypond/} then
please run:
@example
@end example
To reduce the CPU burden on the shared host (as well as some
-security concerns), the @file{Documentation/@/pictures/} and
-@file{Documentation/@/web/@/ly@/-examples/} directories are
+security concerns), the @file{Documentation/pictures/} and
+@file{Documentation/web/ly-examples/} directories are
@strong{not} compiled. You need to upload them, and if they ever
change, a user in the @code{lilypond} group must upload them to
-@file{@/~graham/@/lilypond@/media} on the host.
+@file{~graham/lilypond/media} on the host.
Upload latest pictures/ and ly-examples/ (local script):
@subsubheading Additional information
Some information about the website is stored in
-@file{~graham/@/lilypond/@/*.txt}; this information should not be
+@file{~graham/lilypond/*.txt}; this information should not be
shared with people without trusted access to the server.
however, please note that this command is not designed for being
run multiple times. If you see unexpected output (mainly the page
footers getting all messed up), then delete your
-@file{out@/-website} directory and run @code{make website} again.
+@file{out-website} directory and run @code{make website} again.
@item
Some of the translation infrastructure is defined in python files;
@item
Translations are not included by default in @code{make website}.
To test your translation, edit the @code{WEB_LANGS} line in
-@file{make/@/website@/.make}. Do not submit a patch to add your language
+@file{make/website.make}. Do not submit a patch to add your language
to this file unless @code{make website} completes with less than 5
warnings.
@ruser{Vordefinierte Typenprädikate}.
Installierte Dateien:
-@file{lily/@/music@/-scheme@/.cc},
-@file{scm/@/c++@/.scm},
-@file{scm/@/lily@/.scm}.
+@file{lily/music-scheme.cc},
+@file{scm/c++.scm},
+@file{scm/lily.scm}.
@node Einfache Ersetzungsfunktionen
um 0.5 Notenlinienzwischenräume nach oben. Das ist ein einfaches
Beispiel. Weitere, kompliziertere Beispiele finden sich nachfolgend
in diesem Abschnitt und in der Datei
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@node Neue Definitionen von Beschriftungsbefehlen
Ein guter Weg, einen neuen Beschriftungsbefehl zu schreiben, ist es, als Vorbild
einen existierenden zu nehmen. Die meisten Beschriftungsbefehle, die
LilyPond mitbringt, finden sich in der Datei
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
Man könnte beispielsweise den Befehl @code{\draw-line}, der eine Linie
zeichnet, anpassen, sodass er eine Doppellinie zeichnet. Der
Systembreiten gemessen, so dass der Befehl das Objekt eine Systembreite
nach rechts verschiebt und zwei Breiten nach oben.
-Prozeduren, um mit Abständen zu arbeiten, finden sich in @file{scm/@/lily@/-library@/.scm}.
+Prozeduren, um mit Abständen zu arbeiten, finden sich in @file{scm/lily-library.scm}.
@subheading Bereiche (extend)
ist @code{car} die untere Koordinate und @code{cdr} die obere Koordinate.
Prozeduren, um mit Intervallen zu arbeiten, finden sich in
-@file{scm/@/lily@/-library@/.scm}. Diese Prozeduren sollten benutzt, wenn es möglich
+@file{scm/lily-library.scm}. Diese Prozeduren sollten benutzt, wenn es möglich
ist, um den Code konsistent zu halten.
@subheading Eigenschafts-Alisten (property alist)
@sourceimage{Learning_Macos_Save_menu,,,}
-Wählen Sie einen Namen für die Datei, etwa @file{test@/.ly}.
+Wählen Sie einen Namen für die Datei, etwa @file{test.ly}.
@sourceimage{Learning_Macos_Save_file_with_name,,,}
@sourceimage{Learning_Win7_Save_Menu,,,}
-Wählen Sie einen Namen für Ihre Datei, etwa @file{test@/.ly}.
+Wählen Sie einen Namen für Ihre Datei, etwa @file{test.ly}.
@sourceimage{Learning_Win7_Save_File_With_Name,,,}
@subsubheading Schritt 2b: Kompilieren (mit Doppelklick)
-Sie können auch einfach die Datei @file{test@/.ly} doppelt anklicken.
+Sie können auch einfach die Datei @file{test.ly} doppelt anklicken.
@subsubheading 3. Schritt: Ausgabe anschauen
-Während der Kompilation von @file{test@/.ly} öffnet sich ein
+Während der Kompilation von @file{test.ly} öffnet sich ein
Kommandofenster sehr schnell und schließt sich wieder. Drei
zusätzliche Dateien werden in diesem Schritt erstellt.
@sourceimage{Learning_Win7_All_Files_Created,,,}
-Das PDF enthält den Notensatz aus der Datei @file{test@/.ly}.
+Das PDF enthält den Notensatz aus der Datei @file{test.ly}.
@sourceimage{Learning_Win7_Pdf_Output,,,}
@subsubheading Schritt 1: Erstellen Sie eine @file{.ly}-Datei
-Erstellen Sie eine Text-Datei mit dem Namen @file{test@/.ly} und
+Erstellen Sie eine Text-Datei mit dem Namen @file{test.ly} und
geben Sie folgenden Text ein:
@example
@subsubheading 3. Schritt: Ausgabe anschauen
-Als Ergebnis erhalten Sie ein @file{test@/.pdf}, das Sie mit den
+Als Ergebnis erhalten Sie ein @file{test.pdf}, das Sie mit den
Standardprogrammen Ihres Betriebssystemes anschauen können.
allerdings alle in dieselbe Ausgabedatei plaziert werden.
Ein @code{\book}-Befehl ist nicht explizit notwendig -- er wird
implizit erzeugt. Wenn jedoch für jeden @code{\score}-Block in einer
-einzigen @file{@/.ly}-Datei eine eigene Ausgabe-Datei erzeugt werden soll,
+einzigen @file{.ly}-Datei eine eigene Ausgabe-Datei erzeugt werden soll,
dann muss jeder dieser Blöcke in einen eigenen @code{\book}-Block
gesetzt werden: Jeder @code{\book}-Block erzeugt dann eine
eigene Ausgabedatei.
kann man nicht nur die @code{strechability}-Untereigenschaft verändern,
darum müssen hier auch die anderen Untereigenschaften kopiert werden. Die
Standardeinstellungen dieser Untereigenschaften finden sich in der Datei
-@file{scm/@/define@/-grobs@/.scm} in den Definitionen für den
+@file{scm/define-grobs.scm} in den Definitionen für den
@code{VerticalAxisGroup}-Grob. Der Wert für @code{strechability} wird aus
der Definition für das Klaviersystem (@code{PianoStaff}) entnommen
-(in der Datei @file{ly/@/engraver@/-init@/.ly}) sodass die Werte identisch
+(in der Datei @file{ly/engraver-init.ly}) sodass die Werte identisch
sind.
@example
Wenn man eine einzige Definition hat (wie etwa @code{\dolce}),
die für alle Vorkommen in der Notation eingesetzt wird, muss
man auch nur einmal diese Definition aktualisieren, anstatt
-dass man sie in jeder @file{@/.ly}-Datei einzeln ändern müsste.
+dass man sie in jeder @file{.ly}-Datei einzeln ändern müsste.
@node Partitur und Stimmen
benutzt um sowohl die Stimme als auch die Partitur zu erstellen.
Es bietet sich an, die Noten in einer extra Datei abzulegen.
-Nehmen wir an, dass die Datei @file{horn@/-music@/.ly} folgende
+Nehmen wir an, dass die Datei @file{horn-music.ly} folgende
Noten eines Horn/@/Fagott-Duos enthält:
@example
@end example
@noindent
-ersetzt den Inhalt von @file{horn@/-music@/.ly} an dieser Position
+ersetzt den Inhalt von @file{horn-music.ly} an dieser Position
in der Datei, sodass @code{hornNotes} im Folgenden definiert
ist. Der Befehl @code{\transpose f@tie{}c'} zeigt an, dass
das Argument (@code{\hornNotes}) eine Quinte nach oben transponiert
Die Partitur wird erstellt, indem man alle Noten kombiniert.
Angenommen, die andere Stimme ist in @code{bassoonNotes}
-in der Datei @file{bassoon@/-music@/.ly} definiert, würde eine
+in der Datei @file{bassoon-music.ly} definiert, würde eine
Partitur erstellt mit:
@example
in der Datei eingefügt. (Die Erweiterung @code{.ily} wird benutzt,
um diese Datei als eine eingefügte, inkludierte zu kennzeichnen, die
man nicht alleinstehend kompilieren kann.) Jetzt ändern wir die
-Noten (in der Datei @file{music@/.ly}).
+Noten (in der Datei @file{music.ly}).
@c We have to do this awkward example/lilypond-non-verbatim
@c because we can't do the \include stuff in the manual.
mag mein Kompositionsprofessor keine @qq{C}-Taktangaben, das ändern
wir also in @qq{4/4}.
-Ändern Sie jetzt jedoch nicht @file{music@/.ly}. Ändern Sie die
-@file{definitions@/.ily} mit dem Folgenden:
+Ändern Sie jetzt jedoch nicht @file{music.ly}. Ändern Sie die
+@file{definitions.ily} mit dem Folgenden:
@example
%%% definitions.ily
Das sieht besser aus! Aber nehmen wir an, Ich will dieses Stück publizieren.
Mein Professor mag die @qq{C}-Taktangabe nicht, mir gefällt sie aber sehr
-gut. Kopieren wir also die Datei @file{definitions@/.ily} nach
-@file{web@/-publish@/.ily} und verändern diese. Weil die Noten als PDF
+gut. Kopieren wir also die Datei @file{definitions.ily} nach
+@file{web-publish.ily} und verändern diese. Weil die Noten als PDF
auf dem Monitor dargestellt werden sollen, wird auch die Notengröße
global geändert.
@code{\include "definitions.ily"} mit
@code{\include "web-publish.ily"} ersetzt werden. Das könnte
man natürlich noch besser machen. Es könnte eine Datei
-@file{definitions@/.ily} mit allen Definitionen (also
+@file{definitions.ily} mit allen Definitionen (also
@code{mpdolce} und @code{inst}) geben, eine Datei
-@file{web@/-publish@/.ily}, die nur die @code{\layout}-Veränderung
-enthält und eine Datei @file{university@/.ily}, die nur die
+@file{web-publish.ily}, die nur die @code{\layout}-Veränderung
+enthält und eine Datei @file{university.ily}, die nur die
Prozedur enthält, die Ausgabe meinem Professor angenehm zu machen.
-Der Anfang von @file{music@/.ly} würde dann folgendermaßen aussehen:
+Der Anfang von @file{music.ly} würde dann folgendermaßen aussehen:
@example
\include "definitions.ily"
In diesem Ordner sind die zwei interessanten Unterordner:
@itemize
-@item @file{ly/@/} - beinhaltet Dateien im LilyPond-Format
-@item @file{scm/@/} - beinhaltet Dateien im Scheme-Format
+@item @file{ly/} - beinhaltet Dateien im LilyPond-Format
+@item @file{scm/} - beinhaltet Dateien im Scheme-Format
@end itemize
-Schauen wir uns zuerst einige Dateien in @file{ly/@/} an.
-Öffnen Sie @file{ly/@/property@/-init@/.ly} in einem Texteditor.
+Schauen wir uns zuerst einige Dateien in @file{ly/} an.
+Öffnen Sie @file{ly/property-init.ly} in einem Texteditor.
Der, den Sie normalerweise für @code{.ly}-Dateien benutzen,
genügt. Diese Datei enthält die Definitionen aller vordefinierten
Befehle für LilyPond, wie etwa @code{\stemUp} und
Quelldatei schreiben.
Hier sind die wichtigsten Dateien, die sich im Ordner
-@file{ly/@/} befinden:
+@file{ly/} befinden:
@multitable @columnfractions .4 .6
@headitem Dateiname
@tab Inhalt
-@item @file{ly/@/engraver@/-init@/.ly}
+@item @file{ly/engraver-init.ly}
@tab Definitionen von Engraver-Kontexten
-@item @file{ly/@/paper@/-defaults@/-init@/.ly}
+@item @file{ly/paper-defaults-init.ly}
@tab Spezifikationen von Voreinstellungen für Papiermaße
-@item @file{ly/@/performer@/-init@/.ly}
+@item @file{ly/performer-init.ly}
@tab Definitionen von Performer-Kontexten
-@item @file{ly/@/property@/-init@/.ly}
+@item @file{ly/property-init.ly}
@tab Definitionen aller vordefinierten Befehle
-@item @file{ly/@/spanner@/-init@/.ly}
+@item @file{ly/spanner-init.ly}
@tab Definitionen aller vordefinierten Strecker-Befehle
@end multitable
Andere Einstellungen (wie die Definitionen von Beschriftungsbefehlen)
-sind in @file{@/.scm}-(Scheme)-Dateien gespeichert. Die
+sind in @file{.scm}-(Scheme)-Dateien gespeichert. Die
Scheme-Programmiersprache wird benutzt, um eine
programmierbare Schnittstelle zu den internen Operationen von
LilyPond zu haben. Eine weitere Erklärung dieser Dateien ist
@multitable @columnfractions .4 .6
@headitem Dateiname
@tab Inhalt
-@item @file{scm/@/auto@/-beam@/.scm}
+@item @file{scm/auto-beam.scm}
@tab Sub-Balken-Voreinstellungen
-@item @file{scm/@/define@/-grobs@/.scm}
+@item @file{scm/define-grobs.scm}
@tab Voreinstellungen für Grob-Eigenschaften
-@item @file{scm/@/define@/-markup@/-commands@/.scm}
+@item @file{scm/define-markup-commands.scm}
@tab Definition aller Markup-Beschriftungsbefehle
-@item @file{scm/@/midi@/.scm}
+@item @file{scm/midi.scm}
@tab Voreinstellung für die MIDI-Ausgabe
-@item @file{scm/@/output@/-lib@/.scm}
+@item @file{scm/output-lib.scm}
@tab Einstellungen mit Einfluss auf die Darstellung von Bunddiagrammen, Farben, Versetzungszeichen, Taktlinien usw.
-@item @file{scm/@/parser@/-clef@/.scm}
+@item @file{scm/parser-clef.scm}
@tab Definitionen der unterstützten Schlüssel
-@item @file{scm/@/script@/.scm}
+@item @file{scm/script.scm}
@tab Voreinstellungen für Artikulationszeichen
@end multitable
bezeichnet nicht nur das Ende eines Chorals, sondern wird auch oft innerhalb
eines Antiphons/Responsoriums benutzt, um das Ende eines Abschnitts anzuzeigen.
-Divisiones können benutzt werden, indem die Datei @file{gregorian@/.ly}
+Divisiones können benutzt werden, indem die Datei @file{gregorian.ly}
in die Quelldatei eingefügt wird. Hier sind die entsprechenden Definitionen
schon abgelegt, so dass es genügt, die Befehle @code{\divisioMinima},
@code{\divisioMaior}, @code{\divisioMaxima} und @code{\finalis} an den
entsprechenden Stellen zu schreiben. Einige Editionen verwenden eine
@emph{virgula} oder @emph{caesura} anstelle der divisio minima. Darum findet
-sich in der Datei @file{gregorian@/.ly} auch eine Definition für
+sich in der Datei @file{gregorian.ly} auch eine Definition für
@code{\virgula} und @code{\caesura}.
@lilypond[quote,ragged-right]
Versetzungszeichen fehlen noch.
Die Unterstützung für gregorianische Neumen wird aktiviert, indem
-man mit @code{\include} die Datei @file{gregorian@/.ly} am Anfang
+man mit @code{\include} die Datei @file{gregorian.ly} am Anfang
der Quelldatei aktiviert. Damit werden zusätzliche Befehl
zur Verfügung gestellt, mit denen man die Neumensymbole des
Chorals produzieren kann.
möglich, wenn auch nicht @emph{richtig}, eine Quilisma
bestehend aus einer Note zu notieren.
-Neben den Notenformen definiert die Datei @file{gregorian@/.ly}
+Neben den Notenformen definiert die Datei @file{gregorian.ly}
auch die Befehle @code{\versus}, @code{\responsum}, @code{\ij},
@code{\iij}, @code{\IJ} und @code{\IIJ}, mit denen die
entsprechenden Zeichen, etwa für den Text oder als
@rlearning{Kontexte und Engraver}.
Installierte Dateien:
-@file{ly/@/engraver@/-init@/.ly},
-@file{ly/@/performer@/-init@/.ly}.
+@file{ly/engraver-init.ly},
+@file{ly/performer-init.ly}.
Schnipsel:
@rlsr{Contexts and engravers}.
Es wurde immer von einem @code{Fingering}-Objekt gesprochen, aber
eigentlich handelt es sich nicht um sehr viel. Die Initialisierungsdatei
-@file{scm/@/define@/-grobs@/.scm} zeigt den Inhalt dieses @qq{Objekts}
+@file{scm/define-grobs.scm} zeigt den Inhalt dieses @qq{Objekts}
(zu Information, wo diese Dateien sich finden siehe
@rlearning{Mehr Information}):
Es gibt eine besondere Art von Kontexteigenschaft: die Grob-Beschreibung.
Grob-Beschreibungen werden mit @code{GroßGroßbuchstabe} benannt. Sie
enthalten @qq{Standardeinstellungen} für ein bestimmtes Grob als eine
-assoziative Liste. Siehe @file{scm/@/define@/-grobs@/.scm} für die
+assoziative Liste. Siehe @file{scm/define-grobs.scm} für die
Einstellungen aller Grob-Beschreibungen. Grob-Beschreibungen werden
mit @code{\override} verändert.
@code{GroßGroß} benannt (beginnen also auch mit einem
Großbuchstaben). Sie beinhalten die Standardeinstellungen
für die besagten graphischen Objekte in Form einer
-Assosiationsliste. Siehe auch die Datei @file{scm/@/define@/-grobs@/.scm}
+Assosiationsliste. Siehe auch die Datei @file{scm/define-grobs.scm}
für ein Beispiel zu diesen Einstellungen. Elementbeschreibungen
können mit dem Befehl @code{\override} verändert werden.
Aliste mit vier Schlüsseln: @code{padding} (Verschiebung),
@code{space} (Platz), @code{minimum-distance} (minimaler Abstand)
und @code{stretchability} (Dehnbarkeit). Drei der vier Schlüssel
-haben zu Beginn Standardwerte, die in der Datei @file{scm/@/define@/-grobs@/.scm}
+haben zu Beginn Standardwerte, die in der Datei @file{scm/define-grobs.scm}
(neben allen anderen Grob-Eigenschaften) definiert sind.
@example
zu Beginn einer LilyPond-Partitur geladen werden, nach dem Aufruf
rückgängig gemacht werden. Im obigen Beispiel werden die
initialisierten Standardwerte für @code{padding} und @code{minimum-distance}
-(definiert in @file{scm/@/define@/-grobs@/.scm}) auf den Standard zurückgesetzt,
+(definiert in @file{scm/define-grobs.scm}) auf den Standard zurückgesetzt,
den sie uninitialisiert hätten (0 in beiden Fällen). Wenn eine Eigenschaft oder
Variable in Form einer Aliste (jeder Größe) definiert wird, werden
immer alle Schlüsselwerte auf den uninitialisierten Zustand zurückgesetzt.
wo kein Zeilenumbruch auftritt oder nach einem Zeilenumbruch.
Die acht möglichen Kombinationen können auch durch vordefinierte
-Funktionen bestimmt werden, welche in der Datei @file{scm/@/output@/-lib@/.scm}
+Funktionen bestimmt werden, welche in der Datei @file{scm/output-lib.scm}
definiert sind. Die letzten drei Spalten der folgenden Tabelle
zeigen an, ob das Layout-Objekt an einer bestimmten Position
sichtbar sein wird oder nicht:
@ref{Schnittstellen für Programmierer}.
Installierte Dateien:
-@file{scm/@/define@/-grobs@/.scm}.
+@file{scm/define-grobs.scm}.
Schnipsel:
@rlsr{Tweaks and overrides}.
@rextend{Musikalische Funktionen}.
Installierte Dateien:
-@file{lily/@/music@/-scheme@/.cc},
-@file{scm/@/c++@/.scm},
-@file{scm/@/lily@/.scm}.
+@file{lily/music-scheme.cc},
+@file{scm/c++.scm},
+@file{scm/lily.scm}.
@node Beispiele der Ersetzungsfunktionen
@ref{Übliche Akkord-Variablen}.
Installierte Dateien:
-@file{scm/@/chords@/-ignatzek@/.scm},
-@file{scm/@/chord@/-entry@/.scm},
-@file{ly/@/chord@/-modifier@/-init@/.ly}.
+@file{scm/chords-ignatzek.scm},
+@file{scm/chord-entry.scm},
+@file{ly/chord-modifier-init.ly}.
Schnipsel:
@rlsr{Chords}.
@end lilypond
Die Regeln für die standardmäßige Platzierung von
-Artikulationszeichen werden in der Datei @file{scm/@/script@/.scm}
+Artikulationszeichen werden in der Datei @file{scm/script.scm}
definiert. Artikulationszeichen und Ornamente können manuell
über oder unter dem System gesetzt werden, siehe
@ref{Richtung und Platzierung}.
@ref{Triller}.
Installierte Dateien:
-@file{scm/@/script@/.scm}.
+@file{scm/script.scm}.
Schnipsel:
@rlsr{Expressive marks}.
in der EADGHE-Stimmung. Andere vordefinierte Stimmung sind:
@code{guitar-open-g-tuning}, @code{mandolin-tuning} und
@code{banjo-open-g-tuning}. Die vordefinierten Stimmungen finden
-sich in @file{scm/@/tablature@/.scm}.
+sich in @file{scm/tablature.scm}.
Die Stimmung ist eine Scheme-Liste von Tonhöhen der Saiten,
eine für jede Saite, geordnet von Saitennummer 1 bis n, wobei 1
@seealso
Installierte Dateien:
-@file{scm/@/tablature@/.scm}.
+@file{scm/tablature.scm}.
Schnipsel:
@rlsr{Fretted strings}.
@end lilypond
Die vordefinierten Diagramme sind in der Datei
-@file{predefined@/-guitar@/-fretboards@/.ly} enthalten. Sie werden
+@file{predefined-guitar-fretboards.ly} enthalten. Sie werden
basierend auf der Tonhöhe eines Akkordes und dem Wert von
@code{stringTunings} (Saitenstimmung), der gerade benutzt wird,
-gespeichert. @file{predefined@/-guitar@/-fretboards@/.ly} beinhaltet
+gespeichert. @file{predefined-guitar-fretboards.ly} beinhaltet
vordefinierte Diagramme für die Gitarrenstimmung (@code{guitar-tuning}).
Anhand der Beispiele in dieser Datei können auch für andere
Instrumente oder Stimmungen Diagramme definiert werden.
Bunddiagramme für die Ukulele finden sich in der Datei
-@file{predefined@/-ukulele@/-fretboards@/.ly}.
+@file{predefined-ukulele-fretboards.ly}.
@lilypond[verbatim, ragged-right, quote]
\include "predefined-ukulele-fretboards.ly"
@ref{Vordefinierte Bund-Diagramme}.
Installierte Dateien:
-@file{ly/@/predefined@/-guitar@/-fretboards@/.ly},
-@file{ly/@/predefined@/-guitar@/-ninth@/-fretboards@/.ly}.
+@file{ly/predefined-guitar-fretboards.ly},
+@file{ly/predefined-guitar-ninth-fretboards.ly}.
Schnipsel:
@rlsr{Fretted strings}.
@rlsr{Fretted strings}.
Installierte Dateien:
-@file{scm/@/tablature@/.scm} enthält vordefinierte Banjo-Stimmungen.
+@file{scm/tablature.scm} enthält vordefinierte Banjo-Stimmungen.
@translationof Input structure
Das hauptsächliche Eingabeformat von LilyPond sind Textdateien.
-Üblicherweise werden diese Dateien mit der Endung @file{@/.ly}
+Üblicherweise werden diese Dateien mit der Endung @file{.ly}
versehen.
@menu
enhält, implizit in eine @code{\book}-Umgebung eingeschlossen wird. Eine
@code{\book}-Umgebung in einer Eingabdatei produziert wenigstens eine
Ausgabedatei, und standardmäßig wird der Name der Ausagabedatei aus dem
-Namen der Eingabedatei abgeleitet. @file{fandangoforelephants@/.ly} produziert
-also @file{fandangoforelephants@/.pdf}.
+Namen der Eingabedatei abgeleitet. @file{fandangoforelephants.ly} produziert
+also @file{fandangoforelephants.pdf}.
Zu weiteren Einzelheiten zu @code{\book}-Umgebungen siehe
@ref{Mehrere Partituren in einem Buch},
@funindex \book
-Alle Sätze und Texte, die in derselben @file{@/.ly}-Datei vorkommen,
+Alle Sätze und Texte, die in derselben @file{.ly}-Datei vorkommen,
werden normalerweise in eine einzige Ausgabedatei gesetzt.
@example
@subsection Mehrere Ausgabedateien aus einer Eingabedatei
@translationof Multiple output files from one input file
-Wenn Sie mehrere Ausgabedateien aus derselben @file{@/.ly}-Datei haben
+Wenn Sie mehrere Ausgabedateien aus derselben @file{.ly}-Datei haben
wollen, können Sie mehrere @code{\book}-Umgebungen hinzufügen, wobei
jede Umgebung eine neue Ausgabedatei produziert. Wenn Sie keine
@code{\book}-Umgebung in der Eingabedatei angeben, wird die Datei von
@itemize
@item
-@file{eightminiatures@/.pdf},
+@file{eightminiatures.pdf},
@item
-@file{eightminiatures@/-1@/.pdf} and
+@file{eightminiatures-1.pdf} and
@item
-@file{eightminiatures@/-2@/.pdf}.
+@file{eightminiatures-2.pdf}.
@end itemize
Ausgabedateien verhindert, wenn mehrere Ausgabedateien aus derselben
Eingabedatei erstellt werden. Es gibt auch die Möglichkeit, eigene
Suffixe für jeden @code{\book}-Abschnitt zu definieren, sodass man etwa
-Dateinamen wie @file{eightminiatures@/-Romanze@/.pdf}, @file{eightminiatures@/-Menuetto@/.pdf}
-und @file{eightminiatures@/-Nocturne.pdf} produzieren kann, indem man
+Dateinamen wie @file{eightminiatures-Romanze.pdf}, @file{eightminiatures-Menuetto.pdf}
+und @file{eightminiatures-Nocturne.pdf} produzieren kann, indem man
eine @code{\bookOutputSuffix}-Angabe in jede @code{\book}-Umgebung
einfügt.
@itemize
@item
-@file{Romanze@/.pdf},
+@file{Romanze.pdf},
@item
-@file{Menuetto@/.pdf} and
+@file{Menuetto.pdf} and
@item
-@file{Nocturne@/.pdf}.
+@file{Nocturne.pdf}.
@end itemize
@node Die Dateistruktur
@subsection Die Dateistruktur
@cindex Eingabedatei, Struktur
@cindex Quelldatei, Struktur
-Eine @file{@/.ly}-Datei kann eine beliebige Anzahl an Ausdrücken
+Eine @file{.ly}-Datei kann eine beliebige Anzahl an Ausdrücken
auf der obersten Ebene beinhalten, wobei ein Ausdruck der obersten
Ebene einer der folgenden sein kann:
und in ein @code{\book} zusammengefasst. Dieses Verhalten kann
verändert werden, indem die Variable @code{toplevel-score-handler}
auf höchster Ebene gesetzt wird. Die Definition des Standards findet sich
-in der Datei @file{@/.@/./@/scm/@/lily@/.scm}.
+in der Datei @file{../scm/lily.scm}.
@item
Eine @code{\book}-Umgebung fasst mehrere Sätze (d. h. mehrere
im gleichen Beispiel angezeigt werden soll. Dieses Verhalten
kann verändert werden, indem die Variable @code{toplevel-book-handler}
auf höchster Ebene gesetzt wird. Die Definition des Standards
-findet sich in der Datei @file{@/.@/./@/scm/@/lily@/.scm}.
+findet sich in der Datei @file{../scm/lily.scm}.
@item
Eine @code{\bookpart}-Umgebung. Ein Buch (@code{\book}) kann in
Dieses Verhalten kann verändert werden, indem die Variable
@code{toplevel-music-handler} auf der obersten Ebene gesetzt
wird. Die Definition des Standards findet sich in der Datei
-@file{@/.@/./@/scm/@/lily@/.scm}.
+@file{../scm/lily.scm}.
@item
Eine Textbeschriftung, eine Strophe etwa:
Kompliziertere Anpassungen können vorgenommen werden, indem die
folgenden Variablen innerhalb der @code{\paper}-Umgebung geändert
-werden. Die Init-Datei @file{@/.@/./@/ly/@/titling@/-init@/.ly} enthält das
+werden. Die Init-Datei @file{../ly/titling-init.ly} enthält das
Standardverhalten.
@table @code
@seealso
Installierte Dateien:
-@file{@/.@/./@/ly/@/toc@/-init@/.ly}.
+@file{../ly/toc-init.ly}.
@funindex \table-of-contents
@funindex \tocItem
benutzt werden.
Die Zeile @code{\include "andereDatei.ly"} benimmt sich genauso,
-also ob der Inhalt der Datei @file{andereDatei@/.ly} komplett in die
+also ob der Inhalt der Datei @file{andereDatei.ly} komplett in die
Hauptdatei eingefügt werden würde. So kann man für ein größeres
Projekt die einzelnen Stimmen der Instrumente getrennt notieren
und sie dann in einer Partitur-Datei benutzen. Meistens werden
Pfad oder ein relativer Pfad zu der Datei angegeben wird. Hierbei
sollten die für UNIX typischen Schrägstriche (/) und nicht die
rückwärtsgeneigten von Windows (\) verwendet werden, um die Verzeichnisse
-zu trennen. Wenn etwa die Datei @file{kram@/.ly} ein Verzeichnis
+zu trennen. Wenn etwa die Datei @file{kram.ly} ein Verzeichnis
höher liegt als das aktuelle Verzeichnis, sollte der Befehl so
aussehen:
dass im Suchpfad von LilyPond liegt. Hierzu muss auf der
Kommandozeile das entsprechende Verzeichnis angegeben werden
und die Dateien, die eingebunden werden, müssen nur mit ihrem Namen
-notiert sein. Wenn etwa die Datei @file{Haupt@/.ly} kompiliert
+notiert sein. Wenn etwa die Datei @file{Haupt.ly} kompiliert
werden soll, die Dateien aus dem Unterverzeichnis @file{stimmen}
-einbindet, müssen sie sich im Verzeichnis von @file{Haupt@/.ly}
+einbindet, müssen sie sich im Verzeichnis von @file{Haupt.ly}
befinden und dann LilyPond folgendermaßen aufrufen:
@example
@end example
@noindent
-In @file{Haupt@/.ly} steht:
+In @file{Haupt.ly} steht:
@example
\include "VI.ly"
@end example
Dateien, die in vielen Partituren verwendet werden sollen, können
-im LilyPond-Verzeichnis @file{@/.@/./@/ly} gespeichert werden. (Die
+im LilyPond-Verzeichnis @file{../ly} gespeichert werden. (Die
Stelle, an der dieses Verzeichnis sich befindet, hängt vom Betriebssystem
ab, siehe hierzu @rlearning{Mehr Information}). Dateien
in diesem Verzeichnis können einfach mit ihrem Namen eingefügt werden.
-So werden auch die Sprachdateien wie etwa @file{deutsch@/.ly} eingefügt.
+So werden auch die Sprachdateien wie etwa @file{deutsch.ly} eingefügt.
LilyPond lädt eine Anzahl an Dateien, wenn das Programm aufgerufen wird.
Diese Dateien sind für den Benutzer nicht ersichtlich, aber die Dateien
der Syntax, wie sie in der @code{\layout}-Umgebung benutzt
wird. Klangübersetzungsmodule werden @code{performer}
genannt. Die Kontexte für die MIDI-Ausgabe sind in der
-Datei @file{@/.@/./@/ly/@/performer@/-init@/.ly} definiert, siehe
+Datei @file{../ly/performer-init.ly} definiert, siehe
@rlearning{Mehr Information}. Um beispielsweise
die Auswirkung von Dynamikzeichen aus der MIDI-Ausgabe zu
entfernen, müssen folgende Zeilen eingefügt werden:
zur Verfügung stehenden MIDI-Lautstärke notiert. Die Standardbrüche
reichen von 0,25 für @notation{ppppp} bis hin zu 0,95 für
@notation{fffff}. Diese Anweisung befinden sich in der Datei
-@file{@/.@/./@/scm/@/midi@/.scm}, siehe auch @rlearning{Mehr Information}.
+@file{../scm/midi.scm}, siehe auch @rlearning{Mehr Information}.
Diese Brüche können nach Belieben geändert oder erweitert werden, indem
eine Funktion erstellt wird, die ein Dynamikzeichen als Argument
nimmt und den erforderlichen Bruch ausgibt; schließlich muss noch
Alternativ, insbesondere wenn die gesamte Tabelle der MIDI-Lautstärken
umdefiniert werden soll, ist es besser, die
@notation{default-dynamic-absolute-volume}-Prozedur in der Datei
-@file{@/.@/./@/scm/@/midi@/.scm} und die hiermit verknüpfte Tabelle als Modell
+@file{../scm/midi.scm} und die hiermit verknüpfte Tabelle als Modell
zu benutzen. Das letzte Beispiel dieses Abschnittes zeigt, wie das
gemacht werden kann.
Anpassungen für die Lautstärken bestimmter Instrumente vor.
Diese Instrumente und ihre entsprechende Veränderung lassen
sich aus der Tabelle @notation{instrument-equalizer-alist}
-in der Datei @file{@/.@/./@/scm/@/midi@/.scm} entnehmen.
+in der Datei @file{../scm/midi.scm} entnehmen.
Dieser grundlegende Equalizer kann ersetzt werden, indem die
Funktion @code{instrumentEqualizer} im @code{Score}-Kontext auf
@code{dynamicAbsoluteVolumeFunction} zu Beginn dieses Abschnittes
gezeigt wurde. Der Standard-Equalizer,
@notation{default-instrument-equalizer} in der Datei
-@file{@/.@/./@/scm/@/midi@/.scm} zeigt, wie solche eine Funktion erstellt werden
+@file{../scm/midi.scm} zeigt, wie solche eine Funktion erstellt werden
kann.
Das folgende Beispiel definiert für die Flöte und Klarinette relative
Eine assoziative Liste oder @strong{alist} in kurz ist ein
Scheme-Paar, das einen Wert mit einem Schlüssel assoziiert:
-@w{@code{(Schlüssel . Wert)}}. In der Datei @file{scm/@/lily@/.scm}
+@w{@code{(Schlüssel . Wert)}}. In der Datei @file{scm/lily.scm}
beispielsweise assoziiert die alist @w{@qq{type-p-name-alist}}
bestimmte Prädikate (etwa@tie{}@code{ly:music?}) mit
Bezeichnungen (wie@tie{}@qq{music}) sodass Fehler der
Ein @strong{lexer} ist ein Programm, das eine Charaktersequenz
in eines Sequenz von Tokens übersetzt. Dieser Prozess wird als
lexikalische Analyse bezeichnet. Der LilyPond-Lexer konvertiert
-eine Eingabedatei (@file{@/.ly} in eine Datei mit Tokens, die sich
+eine Eingabedatei (@file{.ly} in eine Datei mit Tokens, die sich
besser für den nächsten Schritt der Verarbeitung, nämlich das
Parsen, eignet. Siehe @ref{parser}.
Wenn dies nicht erreicht werden kann, ist die Datei nicht korrekt und
ensprechende Fehlermeldungen werden ausgegeben. Die syntaktischen Gruppierungen
und die Regeln, nach welchen die Gruppen aus ihren Einzelteilen nach der
-LilyPond-Syntax erstellt werden, finden sich in der Datei @file{lily/@/parser@/.yy}
+LilyPond-Syntax erstellt werden, finden sich in der Datei @file{lily/parser.yy}
und werden in der Backus Normal Form (BNF) in @ref{LilyPond-Grammatik}
gezeigt. Diese Datei wird benutzt, um den Parser während der Programmkompilation
zu erstellen. Hierzu wird der Parser-Ersteller Bison verwendet. Er ist
Benutzung durch den Benutzer wird streng abgeraten, weil ihre
Semantikzuordnung sehr verwirrend sein kann.
-Wenn der Wert einer derartigen Variable in einer @file{@/.ly}-Datei
+Wenn der Wert einer derartigen Variable in einer @file{.ly}-Datei
verändert wird, ist diese Änderung global, und wenn sie nicht
explizit rückgängig gemacht wird, wird der neue Wert bis zum Ende
der Datei gelten und dabei sowohl aufeinander folgende
Arten von Smob-Objekten: einfache Smobs, die da sind für einfach
immutable Objekte wie Nummern, und komplexe Smobs, benutzt für Objekte
mit einer Identität. Wenn Sie auf die LilyPond-Quellen zurückgreifen
-können, findet sich mehr Information hierzu in @file{lily/@/includes/@/smob@/.hh}.
+können, findet sich mehr Information hierzu in @file{lily/includes/smob.hh}.
@node stencil
@unnumberedsubsec stencil
@ref{Schlagzeugnoten}.
Installierte Dateien:
-@file{ly/@/drumpitch@/-init@/.ly}.
+@file{ly/drumpitch-init.ly}.
Schnipsel:
@rlsr{Percussion}.
Befehls @code{\time} auch die Standardwerte fürt die Eigenschaften
@code{baseMoment}, @code{beatStructure} und @code{beamExtensions}
gesetzt. Die vordefinierten Standardwerte für diese Eigenschaften
-finden sich in @file{scm/@/time@/-signature@/-settings@/.scm}. Die existierenden
+finden sich in @file{scm/time-signature-settings.scm}. Die existierenden
Standardwerte können verändert oder neue Standardwerte hinzugefügt
werden.
@ref{Einstellung von automatischen Balken}.
Installierte Dateien:
-@file{scm/@/auto@/-beam@/.scm}.
+@file{scm/auto-beam.scm}.
Schnipsel:
@rlsr{Rhythms}.
Der Standardwert von @code{baseMoment} ist Eins durch den Denominator
der Taktangabe. Alle Ausnahmen dieses Standards finden sich in der Datei
-@file{scm/@/time@/-signature@/-settings@/.scm}.
+@file{scm/time-signature-settings.scm}.
Besondere automatische Bebalkungsregeln (außer dass ein Balken auf einem
Taktschlag aufhört) sind in der @code{beamExceptions}-Eigenschaft
@end lilypond
Diese automatischen Standardeinstellungen für die Bebalkung einer
-Taktart werden in der Datei @file{scm/@/time@/-signature@/-settings@/.scm}
+Taktart werden in der Datei @file{scm/time-signature-settings.scm}
bestimmt. Die automatischen Bebalkungsregeln für eine Taktart
können nach der Beschreibung in @ref{Taktangabe} geändert werden.
kürzesten Note der bebalkten Gruppe.
Zur Erinnerung: die Standardbebalkungsregeln finden sich in der Datei
-@file{scm/@/time@/-signature@/-settings@/.scm}.
+@file{scm/time-signature-settings.scm}.
@snippets
@seealso
Installierte Dateien:
-@file{scm/@/beam@/-settings@/.scm}.
+@file{scm/beam-settings.scm}.
Schnipsel:
@rlsr{Rhythms}.
c1
@end lilypond
-Die Datei @file{scm/@/translation@/-functions@/.scm} beinhaltet
+Die Datei @file{scm/translation-functions.scm} beinhaltet
die Definitionen für @code{format-mark-numbers} (erstelle-Zeichen-Nummern),
@code{format-mark-box-numbers} (erstelle-Zeichen-Kasten-Nummern),
@code{format-mark-letters} (erstelle-Zeichen-Buchstaben) und
@ref{Objekte ausrichten}.
Installierte Dateien:
-@file{scm/@/translation@/-functions@/.scm} beinhaltet die Definition
+@file{scm/translation-functions.scm} beinhaltet die Definition
von @code{format-mark-numbers} und
@code{format-mark-letters}. Sie können als Anleitung für eigene
Funktionen benutzt werden.
@ref{Manuelle Balken}.
Installierte Dateien:
-@file{ly/@/grace@/-init@/.ly}.
+@file{ly/grace-init.ly}.
Schnipsel:
@rlsr{Rhythms}.
@ref{Artikulationszeichen und Verzierungen}.
Installierte Dateien:
-@file{ly/@/chord@/-repetition@/-init@/.ly}.
+@file{ly/chord-repetition-init.ly}.
@node Gleichzeitige Ausdrücke
@code{letter}, @code{legal} und @code{11x17} (auch als
Tabloit bekannt). Sehr viel mehr Formate sind unterstützt.
Einzelheiten finden sich in der Datei
-@file{scm/@/paper@/.scm} in der Definition von
+@file{scm/paper.scm} in der Definition von
@code{paper-alist}.
@warning{Das Standardformat ist @code{a4}.}
Weitere Papierformate können hinzugefügt werden, indem die
Definition von @code{paper-alist} in der Datei
-@file{scm/@/paper@/.scm} verändert wird. Derartige
+@file{scm/paper.scm} verändert wird. Derartige
Änderungen werden jedoch bei einer Aktualisierung des
Programmes überschrieben.
@seealso
Installierte Dateien:
-@file{scm/@/paper@/.scm}.
+@file{scm/paper.scm}.
Schnipsel:
@rlsr{Spacing}.
entsprechend dem Papierformat automatisch gesetzt.
Standardwerte für Ränder finden sich in der Datei
-@file{ly/@/paper@/-defaults@/-init@/.ly}. Sie gelten
+@file{ly/paper-defaults-init.ly}. Sie gelten
für die normale Papiergröße (A4, wenn nicht anders angegeben)
und sind entsprechend skaliert für andere Papiergrößen.
@code{minimum-distance}. Wenn also eine Variable als Aliste
(jeglicher Länge) definiert wird, werden immer alle Standard-Schlüsselwerte
zurückgesetzt. Standardwerte für die flexiblen vertikalen Dimensionen
-der @code{\paper}-Umgebung finden sich in @file{ly/@/paper@/-defaults@/-init@/.ly}.
+der @code{\paper}-Umgebung finden sich in @file{ly/paper-defaults-init.ly}.
@subsubheading Flexible vertikale Dimensionsvariablen der @code{\paper}-Umgebung
Kopf- und Fußzeile werden von den Funktionen @code{make-footer} und
@code{make-header} erstellt, welche in der @code{\paper}-Umgebung definiert
werden. Die Standardeinstellungen sind in den Dateien
-@file{ly/@/paper@/-defaults@/.ly} und @code{ly/@/titling@/-init@/.ly} dargestellt.
+@file{ly/paper-defaults.ly} und @code{ly/titling-init.ly} dargestellt.
Das Seitenlayout wird durch zwei Funktionen der @code{\paper}-Umgebung
bestimmt: @code{page-music-height} und @code{page-make-stencil}. Die erste
Man kann @code{\paper}-Umgebungswerte in Scheme definieren. In diesem
Fall sind @code{mm}, @code{in}, @code{pt} und @code{cm} Variablen, die
-in @file{paper@/-defaults@/.ly} mit Werten in Millimetern definiert sind.
+in @file{paper-defaults.ly} mit Werten in Millimetern definiert sind.
Darum muss der Wert @w{@code{2 cm}} in dem Beispiel unten multipliziert werden:
@example
>>
@end example
-Eine Zeilenumbruchkonfiguration kann auch als eine @file{@/.ly}-Datei
+Eine Zeilenumbruchkonfiguration kann auch als eine @file{.ly}-Datei
automatisch gespeichert werden. Damit kann die vertikale Ausrichtung
während eines zweiten Programmdurchlaufs angepasst werden um die
Seiten besser zu füllen. Diese Eigenschaft ist recht neu und
@rlsr{Text}.
Installierte Dateien:
-@file{scm/@/markup@/.scm}.
+@file{scm/markup.scm}.
@knownissues
@rinternals{TextScript}.
Installierte Dateien:
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@node Textausrichtung
@rinternals{TextScript}.
Installierte Dateien:
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@rinternals{TextScript}.
Installierte Dateien:
-@file{scm/@/define@/-markup@/-commands@/.scm},
-@file{scm/@/stencil@/.scm}.
+@file{scm/define-markup-commands.scm},
+@file{scm/stencil.scm}.
@rinternals{TextScript}.
Installierte Dateien:
-@file{scm/@/define@/-markup@/-commands@/.scm},
-@file{scm/@/fret@/-diagrams@/.scm},
-@file{scm/@/harp@/-pedals@/.scm}.
+@file{scm/define-markup-commands.scm},
+@file{scm/fret-diagrams.scm},
+@file{scm/harp-pedals.scm}.
@rinternals{TextScript}.
Installierte Dateien:
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@funindex \markuplines
@funindex markuplines
@noindent zu schreiben.
-@file{bagpipe@/.ly} enthält außerdem Definitionen für Tonhöhen von
+@file{bagpipe.ly} enthält außerdem Definitionen für Tonhöhen von
Dudelsacknoten in bestimmten Oktaven, so dass man sich nicht mehr um
@code{\relative} oder @code{\transpose} kümmern muss.
@end lilypond
Neue Diagramme können erstellt werden, indem man die Muster in den Datei
-@file{scm/@/define@/-woodwind@/-diagrams@/.scm} und
-@file{scm/@/display@/-woodwind@/-diagrams@/.scm} befolgt. Das benötigt jedoch
+@file{scm/define-woodwind-diagrams.scm} und
+@file{scm/display-woodwind-diagrams.scm} befolgt. Das benötigt jedoch
Scheme-Fähigkeit und ist nicht für alle Benutzer verständlich.
@seealso
Installierte Dateien:
-@file{scm/@/define@/-woodwind@/-diagrams@/.scm},
-@file{scm/@/display@/-woodwind@/-diagrams@/.scm}.
+@file{scm/define-woodwind-diagrams.scm},
+@file{scm/display-woodwind-diagrams.scm}.
Schnipsel:
@rlsr{Winds}.
moderne nationale Lösung ist es, die normale europäische Notation
auf dem System mit normalen Noten zu benutzen und ihnen spezielle
türkische Versetzungszeichen hinzuzufügen. Diese Versetzungszeichen
-sind in der Datei @file{makam@/.ly} definiert. (Wie Sie diese Datei
+sind in der Datei @file{makam.ly} definiert. (Wie Sie diese Datei
finden können, wird erklärt in @rlearning{Mehr Information}. Die
folgende Tabelle zeigt ihre Bezeichnungen, die Versetzungszeichen-Endung,
die an die Noten gefügt werden müssen und die Tonhöhenveränderung
Das Symbol für das Halb-B sieht anders aus als das Symbol, was
üblicherweise in arabischer Notation benutzt wird. Das
-@code{\dwn}-Symbol, das in der Datei @file{arabic@/.ly} definiert
+@code{\dwn}-Symbol, das in der Datei @file{arabic.ly} definiert
ist, kann als ein Workaround eingesetzt werden, wenn es notwendig
ist, das arabische Symbol zu benutzen. Das Aussehen des
Halb-Bs in den Vorzeichen kann mit dieser Methode nicht verändert
@cindex arabische Vorzeichen
Neben den westlichen Dur- und Moll-Tonarten sind folgende
-Tonarten in @file{arabic@/.ly} definiert: @notation{bayati},
+Tonarten in @file{arabic.ly} definiert: @notation{bayati},
@notation{rast}, @notation{sikah}, @notation{iraq} und
@notation{kurd}. Diese Tonarten definieren eine kleine
Gruppe von Maqams, die weitverbreitet sind.
benutzen (also c, d, e @dots) angrereichert mit besonderen Versetzungszeichen,
die die Noten um 1/9, 4/9, 5/9 und 8/9 eines Ganztons erhöhen oder
erniedrigen. Diese Versetzungszeichen sind definiert in der Datei
-@file{makam@/.ly}. (Um die Datei auf Ihrem System zu finden, lesen Sie bitte
+@file{makam.ly}. (Um die Datei auf Ihrem System zu finden, lesen Sie bitte
@rlearning{Mehr Information}.) Eine ausführlichere Erklärung findet sich in
@ref{Nichteuropäische Notenbezeichnungen und Versetzungszeichen}.
texidocde = "
Makam ist eine türkische Melodie, in der 1/9-Tonabstände
eingesetzt werden. Sehen Sie sich die Initialisierungsdatei
-@file{makam@/.ly} für weiter Information zu Tonhöhenbezeichnungen
+@file{makam.ly} für weiter Information zu Tonhöhenbezeichnungen
und Alterationen an (siehe
Handbuch zum Lernen @version{}, 4.6.3 Weitere Information zu
Hinweisen, wo diese Datei gespeichert ist)."
%% Translation of GIT committish: 0a868be38a775ecb1ef935b079000cebbc64de40
texidocde = "
-Die Abkürzungen sind in der Datei @file{ly/@/script@/-init@/.ly} definiert, wo
+Die Abkürzungen sind in der Datei @file{ly/script-init.ly} definiert, wo
den Variablen @code{dashHat}, @code{dashPlus}, @code{dashDash},
@code{dashBar}, @code{dashLarger}, @code{dashDot} und
@code{dashUnderscore} Standardwerte zugewiesen werden. Diese Standardwerte
den Variablen@code{startGraceMusic}, @code{stopGraceMusic},
@code{startAcciaccaturaMusic}, @code{stopAcciaccaturaMusic},
@code{startAppoggiaturaMusic} und @code{stopAppoggiaturaMusic}
-gespeichert, die in der Datei @file{ly/@/grace@/-init@/.ly} definiert
+gespeichert, die in der Datei @file{ly/grace-init.ly} definiert
sind. Wenn man sie umdefiniert, können andere Effekte erreicht
werden.
gezeigt, wie Sie mit diesen Variablen einzelne Stimmen erstellen.
Sie müssen das Beispiel in einzelne Dateien aufteilen; die Dateinamen
-sind in den Kommentaren am Anfang jeder Datei enthalten. @file{piece@/.ly}
-enthält die Noten. Die anderen Dateien -- @file{score@/.ly},
-@file{vn1@/.ly}, @file{vn2@/.ly}, @file{vla@/.ly} und
-@file{vlc@/.ly} -- erstellen daraus die entsprechenden Stimmen bzw. die
-Partitur (@file{score@/.ly}). Mit @code{\tag} wird den Stimmen ein Name
+sind in den Kommentaren am Anfang jeder Datei enthalten. @file{piece.ly}
+enthält die Noten. Die anderen Dateien -- @file{score.ly},
+@file{vn1.ly}, @file{vn2.ly}, @file{vla.ly} und
+@file{vlc.ly} -- erstellen daraus die entsprechenden Stimmen bzw. die
+Partitur (@file{score.ly}). Mit @code{\tag} wird den Stimmen ein Name
zugewiesen, auf den zurückgegriffen werden kann.
"
texidocde="
Dieses Schnipsel erzeugt eine Liste aller möglichen Löcher und Locheinstellungen
für Holzbläserdiagramme, wie sie in der Datei
-@file{scm/@/define@/-woodwind@/-diagrams@/.scm} definiert sind. Die Liste wird auf
+@file{scm/define-woodwind-diagrams.scm} definiert sind. Die Liste wird auf
der Kommandozeile und in der Log-Datei angezeigt, nicht in den Noten.
"
doctitlede = "Liste der Löcher für Holzbläserdiagramme"
Damit diese Kettenreaktion funktionieren kann, müssen Sie das
PDF-Programm dazu anweisen, Hyperlinks zu folgen, indem das Skript
-@file{lilypond@/-invoke@/-editor}, welches mit LilyPond kommt, verwendet
+@file{lilypond-invoke-editor}, welches mit LilyPond kommt, verwendet
wird.
Für Xpdf unter UNIX sollte folgende Zeile in der Datei
@file{xpdfrc}@footnote{Unter UNIX findet man diese Datei
-entweder in @file{/@/etc/@/xpdfrc} oder als @file{@/.xpdfrc} im
+entweder in @file{/etc/xpdfrc} oder als @file{.xpdfrc} im
home-Verzeichnis.} stehen:
@example
urlCommand "lilypond-invoke-editor %s"
@end example
-Das Programm @file{lilypond@/-invoke@/-editor} ist ein kleines
+Das Programm @file{lilypond-invoke-editor} ist ein kleines
Hilfsprogramm. Es ruft einen Editor für besondere @code{textedit}-URIs#
auf und einen Webbrowser für andere. Es testes die Umgebungsvariable
@code{EDITOR} nach folgenden Mustern:
@unnumberedsubsec Emacs-Modus
@translationof Emacs mode
-Emacs hat einen @file{lilypond@/-mode}-Modus, der Ergänzung von Befehlen,
+Emacs hat einen @file{lilypond-mode}-Modus, der Ergänzung von Befehlen,
Einrückung, Syntaxhervorhebung, die Paarung von LilyPond-Klammern,
einfache Tastaturkürzel zur Übersetzung und das Lesen von LilyPond-Dokumentation
-mit Info unterstützt. Wenn @file{lilypond@/-mode} nicht auf Ihrem Computer
+mit Info unterstützt. Wenn @file{lilypond-mode} nicht auf Ihrem Computer
installiert ist, siehe unten.
Ein Emacs-Modus zur Noteneingabe und zum Kompilieren mit LilyPond bfindet sich
in dem Quellarchiv im @file{elisp}-Verzeichnis. Führen Sie @command{make
install} aus, damit es nach @var{elispdir} installiert wird. Die Datei
-@file{lilypond@/-init@/.el} sollte in @var{Ladepfad}@file{/@/site@/-start@/.d/@/} gespeichert
-werden oder Ihrer @file{@/~/@/@/.emacs} bzw. @file{@/~/@/@/.emacs@/.el} hinzugefügt werden.
+@file{lilypond-init.el} sollte in @var{Ladepfad}@file{/site-start.d/} gespeichert
+werden oder Ihrer @file{~/.emacs} bzw. @file{~/.emacs.el} hinzugefügt werden.
-Als ein Benutzer können Sie Ihren Quellpfad (z. B. @file{@/~/@/site@/-lisp/@/})
+Als ein Benutzer können Sie Ihren Quellpfad (z. B. @file{~/site-lisp/})
zum @var{Ladepfad} hinzufügen, indem Sie die (veränderte) folgende
-Zeile in Ihr @file{@/~/@/@/.emacs} kopieren:
+Zeile in Ihr @file{~/.emacs} kopieren:
@c any reason we do not advise: (push "~/site-lisp" load-path)
@example
Für @uref{http://@/www@/.vim@/.org,Vim} gibt es ein Dateiartplugin, einen
Einzugsmodus und einen Syntaxhervorhebungsmodus für LilyPond. Um alle diese
Eigenschaften zu aktivieren, erstellen (oder verändern) Sie die Datei
-@file{@/$HOME/@/@/.vimrc}, sodass sie folgende Zeilen enthält:
+@file{$HOME/.vimrc}, sodass sie folgende Zeilen enthält:
@example
filetype off
@end example
@noindent
-Wenn LilyPond nicht in @file{/@/usr/@/local/@/} installiert ist, müssen Sie
+Wenn LilyPond nicht in @file{/usr/local/} installiert ist, müssen Sie
den Pfad anpassen. Das wird besprochen in
@rlearning{Mehr Information}.
angegeben, Tondauern nur wenn nötig.
MIDI-Dateien können auch direkt von einem digitalen Keyboard
-aufgenommen und dann in eine @file{@/.ly}-Datei konvertiert werden.
+aufgenommen und dann in eine @file{.ly}-Datei konvertiert werden.
Allerdings sind Musikinterpretationen von Menschen (aus gutem Grund!)
rhythmisch nicht exakt genug um die Konvertierung von MIDI nach LY
trivial zu gestalten. Wenn @command{midi2ly} mit Quantisierung
Eine Moll-Tonart wird durch @code{:1} angegeben.
@item -o, --output=@var{Datei}
-Die Ausgabe wird in die Datei @var{Datei}@file{@/.ly} geschrieben.
+Die Ausgabe wird in die Datei @var{Datei}@file{.ly} geschrieben.
@item -s, --start-quant=@var{LÄNGE}
Quantisiert den Beginn der Noten zu Vielfachen von @var{LÄNGE}.
@command{musicxml2ly} wandelt eine MusicXML-Datei nach LilyPond um,
wobei sowohl die Noten, Artikulationszeichen, Struktur der Partitur,
Liedtexte etc. einer MusicXML-Datei (im @q{part-wise}-Format) in eine
-@file{@/.ly}-Datei um.
+@file{.ly}-Datei um.
@command{musicxml2ly} wird von der Kommandozeile folgendermaßen aufgerufen:
@example
Zeigt eine Zusammenfassung der Programmbenutzung und der Optionen.
@item -l, --language=LANG
-Inkludiert die Sprachdatei @var{LANG}@file{@/.ly} in der Ausgabe. Wird z.B.
-'deutsch' angegeben, wird @file{deutsch@/.ly} in die @file{@/.ly}-Datei eingebunden
+Inkludiert die Sprachdatei @var{LANG}@file{.ly} in der Ausgabe. Wird z.B.
+'deutsch' angegeben, wird @file{deutsch.ly} in die @file{.ly}-Datei eingebunden
und deutsche Notenbezeichnungen benutzt.
@item --lxml
MusicXML-Datei. Stattdessen wird dies LilyPond überlassen.
@item -o,--output=@var{Dateiname}
-Die Ausgabe wird in die Datei @var{Dateiname}@file{@/.ly} geschrieben. Wird
+Die Ausgabe wird in die Datei @var{Dateiname}@file{.ly} geschrieben. Wird
als @var{Dateiname} nur @file{-} angegeben, wird das Ergebnis der Konvertierung
an der Kommandozeile ausgegeben. Wird diese Option nicht angegeben, so
-erfolgt die Ausgabe in die Datei @var{XML-Datei}@file{@/.ly}.
+erfolgt die Ausgabe in die Datei @var{XML-Datei}@file{.ly}.
@item -r,--relative
Konvertiert in relative Tonhöhen. (Standardeinstellung)
@item -z,--compressed
Die Eingabedatei wird als komprimierte MusicXML-Datei eingelesen.
Dies ist die Standardeinstellung für Dateien mit der Erweiterung
-@file{@/.xml}.
+@file{.xml}.
@end table
@item -h,--help
Zeigt eine Zusammenfassung der Programmbenutzung und der Optionen.
@item -o,--output=@var{Dateiname}
-Die Ausgabe wird in die Datei @var{Dateiname}@file{@/.ly} geschrieben.
+Die Ausgabe wird in die Datei @var{Dateiname}@file{.ly} geschrieben.
@item -s,--strict
Strenge Auslegung einer erfolgreichen Konvertierung.
@item -v,--version
@item -h,--help
Zeigt eine Zusammenfassung der Programmbenutzung und der Optionen.
@item -o,--output=@var{Dateiname}
-Die Ausgabe wird in die Datei @var{Dateiname}@file{@/.ly} geschrieben.
+Die Ausgabe wird in die Datei @var{Dateiname}@file{.ly} geschrieben.
@item --version
Gibt die Versionsnummer aus.
@end table
@subheading Verarbeitung
-Speichern Sie den obigen @LaTeX{}-Quellcode in eine Datei @file{lilybook@/.lytex}
+Speichern Sie den obigen @LaTeX{}-Quellcode in eine Datei @file{lilybook.lytex}
und führen Sie dann in der Kommandozeile folgende Befehle aus:
@c keep space after @version{} so TeX doesn't choke
von LilyPond angezeigt werden.
Wenn @command{lilypond-book} eine derartige Datei verarbeitet,
-wird eine Texinfo-Datei mit der Erweiterung @file{@/.texi} erzeugt,
+wird eine Texinfo-Datei mit der Erweiterung @file{.texi} erzeugt,
die @code{@@image} Befehle für die Ausgabe nach HTML, Info und PDF
enthält. @command{lilypond-book} erzeugt die entsprechenden Grafiken
der Musikbeispiele im EPS- und PDF-Format für die Ausgabe nach PDF
in der @code{role} Eigenschaft des innersten Elements angegeben,
wie im nächsten Abschnitt gezeigt wird. Die DocBook Datei, die
dann von @command{lilypond-book} verarbeitet wird, sollte der Klarheit
-halber die Dateierweiterung @file{@/.lyxml} (jedenfalls nicht
-@file{@/.xml}) besitzen.
+halber die Dateierweiterung @file{.lyxml} (jedenfalls nicht
+@file{.xml}) besitzen.
@subheading Eine LilyPond-Datei einfügen
Dies ist der einfachste Fall: Die LilyPond-Datei besitzt die Erweiterung
-@file{@/.ly} und wird einfach als @code{imageobject} eingebettet:
+@file{.ly} und wird einfach als @code{imageobject} eingebettet:
@example
<mediaobject>
@subheading Ein DocBook-Dokument übersetzen
-Der Aufruf von @command{lilypond-book} mit der @file{@/.lyxml}-Datei
-erzeugt ein gültiges DocBook-Dokument mit der Erweiterung @file{@/.xml},
+Der Aufruf von @command{lilypond-book} mit der @file{.lyxml}-Datei
+erzeugt ein gültiges DocBook-Dokument mit der Erweiterung @file{.xml},
welches normal weiterverarbeitet werden kann. Bei Benutzung von
@uref{http://@/dblatex@/.sourceforge@/.net@/,dblatex} wird daraus
automatisch eine PDF-Datei erzeugt. Für die Erzeugung von HTML (HTML
Wenn Kommentare und Variablen im Zitat, aber nicht im Quelltext
übersetzt werden sollen, kann die Umgebungsvariable @code{LYDOC_LOCALEDIR}
auf einen Verzeichnispfad gesetzt werden. Das Verzeichnis sollte
-einen Baum an @file{@/.mo}-Nachrichtenkatalogen beinhalten mit
+einen Baum an @file{.mo}-Nachrichtenkatalogen beinhalten mit
@code{lilypond-doc} als Domain.
@item addversion
@item texidoc
(Nur innerhalb von Texinfo-Dateien.) Wird @command{lilypond} mit der
Kommandozeilenoption @option{--header=@/texidoc} für eine Datei
-@file{foo@/.ly} und enthält die Datei ein @code{texidoc}-Feld im
+@file{foo.ly} und enthält die Datei ein @code{texidoc}-Feld im
@code{\header}-Block, so wird dessen Inhalt in die Datei
-@file{foo@/.texidoc} ausgegeben. Die @code{texidoc} Option veranlasst
-@code{lilypond-book}, den Inhalt dieser @file{@/.texidoc} Dateien innerhalb
+@file{foo.texidoc} ausgegeben. Die @code{texidoc} Option veranlasst
+@code{lilypond-book}, den Inhalt dieser @file{.texidoc} Dateien innerhalb
eines Dokumentationsblocks direkt vor dem Musikfragment in das aktuelle
Dokument einzufügen.
-Enthält also die Datei @file{foo@/.ly} etwa den LilyPond-Code
+Enthält also die Datei @file{foo.ly} etwa den LilyPond-Code
@example
\header @{
@end example
@noindent
-und das Texinfo-Dokument @file{text@/.texinfo}
+und das Texinfo-Dokument @file{text.texinfo}
@example
@@lilypondfile[texidoc]@{foo.ly@}
-dbackend=eps --header=texidoc" test.texinfo
@end example
-Die meisten Test-Dateien (im @file{input/@/} Verzeichnis von LilyPond)
-sind kleine @file{@/.ly} Dateien von genau dieser Form.
+Die meisten Test-Dateien (im @file{input/} Verzeichnis von LilyPond)
+sind kleine @file{.ly} Dateien von genau dieser Form.
Auch die Übersetzung dieser zusätzlichen Kommentare ist möglich:
Dazu muss das Texinfo-Dokument den Befehl @code{@@documentlanguage @var{LANG}}
-und der @code{\header} Block in der Datei @file{foo@/.ly}
+und der @code{\header} Block in der Datei @file{foo.ly}
die Übersetzung im Feld @code{texidoc@var{LANG}} enthalten. Wird nun
@command{lilypond} mit der Option @option{--header=@/texidoc@var{LANG}}
-aufgerufen, so wird der Inhalt der Datei @file{foo@/.texidoc@var{LANG}}
-anstelle von @file{foo@/.texidoc} eingefügt.
+aufgerufen, so wird der Inhalt der Datei @file{foo.texidoc@var{LANG}}
+anstelle von @file{foo.texidoc} eingefügt.
@item lilyquote
(Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt wie die
(Nur innerhalb von Texinfo-Dateien.) Diese Option wirkt ähnlich wie die
@code{texidoc} Option: Wenn @command{lilypond} mit der Option
@option{--header=@/doctitle} aufgerufen wird und die Eingabedatei
-@file{foo@/.ly} ein Feld @code{doctitle} im @code{\header}-Block enthält,
-wird dessen Wert in die Datei @file{foo@/.doctitle} geschrieben. Wird die
+@file{foo.ly} ein Feld @code{doctitle} im @code{\header}-Block enthält,
+wird dessen Wert in die Datei @file{foo.doctitle} geschrieben. Wird die
@code{doctitle} Option für ein Musikfragment benutzt, so wird der Inhalt
dieser Datei, der eine einzelne Textzeile sein sollte, im Texinfo-Dokument
als @code{@@lydoctitle @var{Text}} eingefügt. @code{@@lydoctitle} muss
@translationof Invoking lilypond-book
@command{lilypond-book} erzeugt abhängig vom Ausgabeformat eine Datei mit
-einer der folgenden Dateierweiterungen: @file{@/.tex}, @file{@/.texi},
-@file{@/.html} oder @file{@/.xml}. Alle @file{@/.tex}, @file{@/.texi} und
-@file{@/.xml} Dateien müssen noch mit den entsprechenden Programmen (@LaTeX{},
+einer der folgenden Dateierweiterungen: @file{.tex}, @file{.texi},
+@file{.html} oder @file{.xml}. Alle @file{.tex}, @file{.texi} und
+@file{.xml} Dateien müssen noch mit den entsprechenden Programmen (@LaTeX{},
DocBook, etc.) weiter verarbeitet werden, um druckfähige Dateien zu erhalten.
@end example
@noindent
-Die @file{@/.dvi}-Datei, die beim Aufruf von @command{latex} erzeugt wird,
+Die @file{.dvi}-Datei, die beim Aufruf von @command{latex} erzeugt wird,
scheint keine Notenköpfe zu enthalten, was in Ordnung ist. Wenn Sie die
Datei wie beschrieben weiter verarbeiten, erscheinen die Notenköpfe korrekt
-in den @file{@/.ps} und @file{@/.pdf} Dateien.
+in den @file{.ps} und @file{.pdf} Dateien.
Der Aufruf von @command{dvips} kann einige Warnungen über fehlende
Schriftarten ausgeben. Auch dies ist in Ordnung und kann ignoriert werden.
Grafiken.
@itemx --lily-output-dir=@var{Verzeichnis}
-Schreibt @file{lily@/-XXX} Dateien nach @var{Verzeichnis} und erzeugt
+Schreibt @file{lily-XXX} Dateien nach @var{Verzeichnis} und erzeugt
im mit @code{--output} angegebenen Verzeichnis Verknüpfungen darauf.
Diese Option ist nützlich, um Zeit zu sparen, wenn Dokumente in
verschiedenen Verzeichnissen viele identische Musikfragmente
@end example
-Wird ein @file{Dateiname} ohne Erweiterung angegeben, so wird @file{@/.ly} als
+Wird ein @file{Dateiname} ohne Erweiterung angegeben, so wird @file{.ly} als
Standarderweiterung für LilyPond-Dateien benutzt. Um Daten von
@code{stdin} einzulesen, benutzen Sie einfach einen Bindestrich (@code{-})
als @var{Dateiname}.
-Wenn Lilypond die Datei @file{Dateiname@/.ly} verarbeitet, werden daraus
-die Dateien @file{Dateiname@/.ps} und @file{Dateiname@/.pdf} erzeugt.
-Es können an @code{lilypond} auch mehrere @file{@/.ly} Dateien übergeben
+Wenn Lilypond die Datei @file{Dateiname.ly} verarbeitet, werden daraus
+die Dateien @file{Dateiname.ps} und @file{Dateiname.pdf} erzeugt.
+Es können an @code{lilypond} auch mehrere @file{.ly} Dateien übergeben
werden, die dann einzeln und voneinander unabhängig abgearbeitet
werden.@footnote{Der Zustand von GUILE wird allerdings nicht nach
jeder Datei zurückgesetzt, sodass Achtung geboten ist, wenn in einer
Datei globale Änderungen von Scheme aus durchgeführt werden.}
-Falls @file{Dateiname@/.ly} mehr als eine @code{\book}-Umgebung enthält,
+Falls @file{Dateiname.ly} mehr als eine @code{\book}-Umgebung enthält,
werden die weiteren Stücke in durchnummerierte Dateien der Form
-@file{Dateiname@/-1@/.pdf} ausgegeben. Zusätzlich wird der Wert der
+@file{Dateiname-1.pdf} ausgegeben. Zusätzlich wird der Wert der
Variable @code{output-suffix} zwischen den ursprünglichen Dateinamen
-und der Zahl eingefügt. Eine Lilypond-Datei @file{Dateiname@/.ly} mit dem Inhalt
+und der Zahl eingefügt. Eine Lilypond-Datei @file{Dateiname.ly} mit dem Inhalt
@example
#(define output-suffix "Geige")
@end example
@noindent
-erzeugt daher die Dateien @var{Dateiname}@file{@/-Geige@/.pdf} und
-@var{Dateiname}@file{@/-Cello@/-1@/.pdf}.
+erzeugt daher die Dateien @var{Dateiname}@file{-Geige.pdf} und
+@var{Dateiname}@file{-Cello-1.pdf}.
@table @code
@item -e,--evaluate=@var{expr}
-Wertet den Scheme-Ausdruck @var{expr} aus, bevor die @file{@/.ly} Dateien
+Wertet den Scheme-Ausdruck @var{expr} aus, bevor die @file{.ly} Dateien
gelesen und interpretiert werden.
Die @code{-e} Option kann auch mehrfach angegeben werden, die Ausdrücke
werden nacheinander ausgewertet.
@end example
@noindent
-Am Beginn der @file{@/.ly}-Datei muss dann das @code{guile-user} Modul noch geladen werden, bevor die Definition von @var{a} verfügbar ist:
+Am Beginn der @file{.ly}-Datei muss dann das @code{guile-user} Modul noch geladen werden, bevor die Definition von @var{a} verfügbar ist:
@example
#(use-modules (guile-user))
@cindex safe, Kommandozeile
@item safe
-Vertraut der @file{@/.ly} Datei nicht.
+Vertraut der @file{.ly} Datei nicht.
Wenn LilyPond über einen Webserver verfügbar gemacht wird, @b{MUSS} unbedingt
eine die Optionen @code{--safe} oder @code{--jail} angegeben werden.
-Die @code{--safe} Option verhindert, dass in der @file{@/.ly}-Datei angegebener
+Die @code{--safe} Option verhindert, dass in der @file{.ly}-Datei angegebener
Scheme-Code das System gefährden kann, wie etwa in folgendem Beispiel:
@quotation
@end quotation
Mit der @code{-dsafe} Option werden alle Scheme-Ausdrücke einem speziellen
-sicheren Modus ausgewertet. Dieser Modus ist vom GUILE @file{safe@/-r5rs} Modul
+sicheren Modus ausgewertet. Dieser Modus ist vom GUILE @file{safe-r5rs} Modul
abgeleitet und fügt noch zahlreiche weitere erlaubte Funktionen der
LilyPond Programm-Schnittstelle hinzu. Diese Funktionen sind in
-@file{scm/@/safe@/-lily@/.scm} angegeben.
+@file{scm/safe-lily.scm} angegeben.
Zusätzliche verbietet der sichere Modus auch @code{\include} Befehle.
@item -i,--init=@var{Initialisierungsdatei}
Benutzt @var{Initialisierungsdatei} zur gesamten Programminitialisierung. Der
-Standardwert ist @file{init@/.ly}.
+Standardwert ist @file{init.ly}.
@cindex Verzeichnis, Ausgabe speichern in
@cindex Ausgabedateiname
Sie funktioniert dergestalt, dass das Wurzelverzeichnis von
@command{lilypond} auf @var{Jail-Verzeichnis} gesetzt wird, bevor die
-tatsächliche Kompilierung der @file{@/.ly}-Datei beginnt. Der Benutzer und die Gruppe
+tatsächliche Kompilierung der @file{.ly}-Datei beginnt. Der Benutzer und die Gruppe
werden auf die angegebenen Werte gesetzt und das aktuelle Arbeitsverzeichnis
wird ebenfalls auf den angegebenen Wert @var{Arbeitsverzeichnis} gesetzt.
Diese Einstellungen garantieren (zumindest in der Theorie), dass es nicht
@translationof Apparent error in @code{../ly/init.ly}
Verschiedene seltsame Fehlermeldungen können über Syntax-Fehler in
-@file{@/.@/./@/ly/@/init@/.ly} auftauchen, wenn die Eingabedatei nicht richtig
+@file{../ly/init.ly} auftauchen, wenn die Eingabedatei nicht richtig
formuliert ist, wenn sie etwa nicht richtig passende Klammerpaare
oder Anführungszeichen enthält.
@subsection Emacs-Modus
@translationof Emacs mode
-Emacs hat einen LilyPond-Modus (@file{lilypond@/-mode}), eine Datei, die
+Emacs hat einen LilyPond-Modus (@file{lilypond-mode}), eine Datei, die
die Vervollständigung von Befehlen, Einrückungen, für LilyPond spezifische
Klammerschließungen und die Markierung der Syntax beherrscht.
Zusätzlich stehen noch praktische Tastaturkombinationen zum
Programmaufruf und zum Nachschlagen in den Handbüchern zur
-Verfügung. Siehe unten, wenn die Datei @file{lilypond@/-mode}
+Verfügung. Siehe unten, wenn die Datei @file{lilypond-mode}
sich nicht auf Ihrem Computer befindet.
Der Emacs-Modus zur Noteneingabe und zum Programmaufruf ist
in den Emacs-Quellen im @file{elisp}-Verzeichnis enthalten. Mit
dem Befehl @command{make install} können Sie es nach @var{elispdir}
-installieren. Die Datei @file{lilypond@/-init@/.el} sollte in
- @var{load-path}@file{/@/site@/-start@/.d/@/} liegen oder Ihrem
- @file{@/~/@/@/.emacs} or @file{@/~/@/@/.emacs@/.el} hinzugefügt werden.
+installieren. Die Datei @file{lilypond-init.el} sollte in
+ @var{load-path}@file{/site-start.d/} liegen oder Ihrem
+ @file{~/.emacs} or @file{~/.emacs.el} hinzugefügt werden.
-Als Benutzer können Sie Ihren Quellenpfad (etwa @file{@/~/@/site@/-lisp/@/})
+Als Benutzer können Sie Ihren Quellenpfad (etwa @file{~/site-lisp/})
ihrem @var{load-path} hinzufügen, indem Sie folgende Zeile zu Ihrer
-@file{@/~/@/@/.emacs}-Datei hinzufügen:
+@file{~/.emacs}-Datei hinzufügen:
@c any reason we do not advise: (push "~/site-lisp" load-path)
@example
@code{$VIM}-Verzeichnis.
LilyPond-Dateien werden automatisch erkannt, wenn sich in der Datei
-@file{@/~/@/@/.vim/@/filetype@/.vim} folgender Inhalt befindet:
+@file{~/.vim/filetype.vim} folgender Inhalt befindet:
@example
if exists("did_load_filetypes")
@end example
Fügen Sie den LilyPond-Pfad in ihre
-@file{@/~/@/@/.vimrc}-Datei ein, indem Sie ihre folgende Zeile hinzufügen:
+@file{~/.vimrc}-Datei ein, indem Sie ihre folgende Zeile hinzufügen:
@example
set runtimepath+=/usr/local/share/lilypond/$@{LILYPOND_VERSION@}/vim/
@noindent
Dabei wird $@{LILYPOND_VERSION@}durch Ihre LilyPond-Version ersetzt. Sollten
-Sie LilyPond nicht nach @file{/@/usr/@/local/@/} installiert haben, müssen Sie den
+Sie LilyPond nicht nach @file{/usr/local/} installiert haben, müssen Sie den
Pfad entsprechend anpassen.
einen Texteditor mit dem Cursor an der richtigen Stelle öffnet.
Damit diese Kettenreaktion funktioniert, müssen Sie ihrem PDF-Programm
-mit dem Skript @file{lilypond@/-invoke@/-editor} beibringen, Hyperlinks zu folgen.
+mit dem Skript @file{lilypond-invoke-editor} beibringen, Hyperlinks zu folgen.
Im Falle von Xpdf auf einer UNIX-Maschine sollte folgende Zeile in der Datei
@file{xpdfrc}@footnote{Unter UNIX befindet sich diese Datei entweder in
-@file{/@/etc/@/xpdfrc} oder als @file{@/.xpdfrc} in Ihrem Heim-Verzeichnis.} stehen.
+@file{/etc/xpdfrc} oder als @file{.xpdfrc} in Ihrem Heim-Verzeichnis.} stehen.
@example
urlCommand "lilypond-invoke-editor %s"
@end example
-Das Programm @file{lilypond@/-invoke@/-editor} ist ein kleines Hilfsprogramm.
+Das Programm @file{lilypond-invoke-editor} ist ein kleines Hilfsprogramm.
Es ruft einen Editor auf für bestimmte @code{textedit}-URIs und startet
einen Browser für die anderen. Die Umgebungsvariable @code{EDITOR}
wird für folgende Zeichenketten:
@end example
@noindent
-in der @file{@/.ly}-Datei gesetzt wird. Point and Click kann auch explizit
+in der @file{.ly}-Datei gesetzt wird. Point and Click kann auch explizit
eingeschaltet werden durch die Zeile:
@example
die definiert, welche Dateien von welchen anderen Dateien abhängen und
welche Befehle für das Betriebssystem nötig sind, um eine Datei aus
einer anderen zu erstellen. Ein Makefile könnte etwa erklären, wie
-@file{ballad@/.pdf} und @file{ballad@/.midi} aus @file{ballad@/.ly}
+@file{ballad.pdf} und @file{ballad.midi} aus @file{ballad.ly}
erstellt werden können, indem LilyPond aufgerufen wird.
Es gibt Fällen, wenn es sich sehr stark empfiehlt, ein @code{Makefile}
`-- symphonyDefs.ily
@end example
-Die @file{@/.ly}-Dateien un den Verzeichnissen @code{Scores} und
-@code{Parts} erhalten ihrere Noten aus @file{@/.ily}-Dateien, die
+Die @file{.ly}-Dateien un den Verzeichnissen @code{Scores} und
+@code{Parts} erhalten ihrere Noten aus @file{.ily}-Dateien, die
sich im @code{Notes}-Verzeichnis befinden:
@example
@noindent
im Verzeichnis, in welchem die Datei liegt, aufzurufen. Hierdurch wird
-@file{meineDatei@/.ly} direkt aktualisiert und das Original nach
-@file{meineDatei@/.ly~} gesichert.
+@file{meineDatei.ly} direkt aktualisiert und das Original nach
+@file{meineDatei.ly~} gesichert.
@warning{@command{convert-ly} konvertiert immer bis zur letzten Syntax-Änderung,
die das Programm beherrscht. Das heißt, dass die @code{\version}-Nummer,
Wenn der einfache @command{convert-ly -e *.ly}-Befehl nicht funktioniert,
weil die ausgeschriebene Kommandozeile zu lang wird, kann man
@command{convert-ly} auch als Loop wiederholt laufen lassen. Dieses
-Beispiel für UNIX konvertiert alle @file{@/-ly}-Dateien im aktuellen
+Beispiel für UNIX konvertiert alle @file{-ly}-Dateien im aktuellen
Verzeichnis:
@example
@item
Los márgenes predeterminados del papel, tal y como se especifican en
-el archivo @file{ly/@/paper@/-defaults@/-init@/.ly}, se aplican al
+el archivo @file{ly/paper@/-defaults-init.ly}, se aplican al
tamaño de papel predeterminado (A4) y se redimensionan automáticamente
al tamaño del papel seleccionado.
@ruser{Predicados de tipo predefinidos}.
Archivos de inicio:
-@file{lily/@/music@/-scheme@/.cc},
-@file{scm/@/c++@/.scm},
-@file{scm/@/lily@/.scm}.
+@file{lily/music-scheme.cc},
+@file{scm/c++.scm},
+@file{scm/lily.scm}.
@node Funciones de sustitución sencillas
@code{ejemplo de texto}, y después eleva el sello Stencil en 0.5
espacios de pentagrama. Este es un ejemplo bastante simple; en el
resto de la sección podrán verse ejemplos más complejos, así como en
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@node Definición de una instrucción de marcado nueva
nueva, es seguir el ejemplo de otra instrucción ya incorporada. Casi
todas las instrucciones de marcado que están incorporadas en LilyPond
se pueden encontrar en el archivo
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
Por ejemplo, querríamos adaptar la instrucción @code{\draw-line}, para
que trace una línea doble. La instrucción @code{\draw-line} está
espacio de pentagrama a la derecha, y dos espacios hacia arriba.
Los procedimientos para trabajar con desplazamientos están en
-@file{scm/@/lily@/-library@/.scm}.
+@file{scm/lily-library.scm}.
@subheading Dimensiones
@code{cdr} es la coordenada superior.
Los procedimientos para trabajar con intervalos están en
-@file{scm/@/lily@/-library@/.scm}. Se deben usar estos procedimientos
+@file{scm/lily-library.scm}. Se deben usar estos procedimientos
siempre que sea posible, para asegurar la consistencia del código.
@subheading Listas-A de propiedades
@sourceimage{Learning_Macos_Save_menu,,,}
-ELija un nombre para su archivo, por ejemplo @file{prueba@/.ly}.
+ELija un nombre para su archivo, por ejemplo @file{prueba.ly}.
@sourceimage{Learning_Macos_Save_file_with_name,,,}
@sourceimage{Learning_Win7_Save_Menu,,,}
-Escoja un nombre para el archivo, por ejemplo @file{prueba@/.ly}.
+Escoja un nombre para el archivo, por ejemplo @file{prueba.ly}.
@sourceimage{Learning_Win7_Save_File_With_Name,,,}
@subsubheading Paso 2-B. Compílelo (con doble clic)
-O simplemente haga doble clic sobre el archivo @file{prueba@/.ly}.
+O simplemente haga doble clic sobre el archivo @file{prueba.ly}.
@subsubheading Paso 3. Examinar el resultado
-Durante la compilación del archivo @file{prueba@/.ly}, se abrirá muy
+Durante la compilación del archivo @file{prueba.ly}, se abrirá muy
brevemente una ventana de la consola y luego se cerrará. Durante este
proceso se habrán creado tres archivos adicionales:
@sourceimage{Learning_Win7_All_Files_Created,,,}
-El archivo PDF contiene el documento @file{prueba@/.ly} convertido en
+El archivo PDF contiene el documento @file{prueba.ly} convertido en
una partitura musical.
@sourceimage{Learning_Win7_Pdf_Output,,,}
@subsubheading Paso 1. Creamos el archivo @file{.ly}
Haga un archivo de texto con el nombre
-@file{prueba@/.ly} y escriba en él lo siguiente:
+@file{prueba.ly} y escriba en él lo siguiente:
@c double \\ required because this is inside a macro!
@example
@subsubheading Paso 2. Compilación (con la línea de órdenes)
-Para procesar el archivo @file{prueba@/.ly} escriba lo siguiente en la
+Para procesar el archivo @file{prueba.ly} escriba lo siguiente en la
línea de órdenes:
@example
@subsubheading Paso 3: Examinar el resultado
-Podemos ver o imprimir el archivo @file{prueba@/.pdf} resultante.
+Podemos ver o imprimir el archivo @file{prueba.pdf} resultante.
@end macro
combinarán todos juntos en un archivo de salida único. No se necesita
ninguna instrucción @code{\book}, se creará una implícitamente. Sin
embargo, si quiere archivos de salida separados a partir de un único
-archivo @file{@/.ly}, entonces es necesario utilizar la instrucción
+archivo @file{.ly}, entonces es necesario utilizar la instrucción
@code{\book} para separar las distintas secciones: cada bloque
@code{\book} produce un archivo de salida distinto.
@code{stretchability}.
De nuevo, los curiosos encontrarán los valores
predeterminados para la propiedad staff-staff-spacing
-en el archivo @file{scm/@/define@/-grobs@/.scm}
+en el archivo @file{scm/define-grobs.scm}
examinando la definición del grob @code{VerticalAxisGroup} grob. El
valor de @code{stretchability} se toma de la definición del contexto
-@code{PianoStaff} (en el archivo @file{ly/@/engraver@/-init@/.ly}) de
+@code{PianoStaff} (en el archivo @file{ly/engraver-init.ly}) de
forma que los valores sean idénticos.
@example
definición (como p.ej. @code{\dolce}) para todos sus archivos (ver
@ref{Hojas de estilo}), y después la sintaxis se modifica, sólo tendrá
que actualizar su definición @code{\dolce} única, en lugar de tener
-que hacer cambios en cada uno de los archivos @file{@/.ly}.
+que hacer cambios en cada uno de los archivos @file{.ly}.
generar tanto la particella como la partitura del director.
Es muy conveniente definir las notas en un archivo especial. Por
-ejemplo, supongamos que el archivo @file{trompa@/.ly} contiene la
+ejemplo, supongamos que el archivo @file{trompa.ly} contiene la
siguiente parte de un dúo para trompa y fagot:
@example
@end example
@noindent
-sustituye el contenido de @file{trompa@/.ly} en esta posición dentro del
+sustituye el contenido de @file{trompa.ly} en esta posición dentro del
archivo, así que @code{notasTrompa} se define con posterioridad. La
instrucción @code{\transpose f@tie{}c'} indica que el argumento
constituido por @code{\notasTrompa} se debe transponer una quinta
Esta partitura se hace combinando toda la música junta. Suponiendo
que la otra voz se encuentra dentro de @code{notasFagot} en el archivo
-@file{fagot@/.ly}, la partitura se hace con
+@file{fagot.ly}, la partitura se hace con
@example
\include "fagot.ly"
@code{.ily} se utiliza para distinguir este archivo de inclusión --que
se supone que no debe ser procesado de forma independiente-- del
archivo principal). Ahora modificaremos la música (guardemos este
-archivo como @file{musica@/.ly}).
+archivo como @file{musica.ly}).
@c We have to do this awkward example/lilypond-non-verbatim
@c because we can't do the \include stuff in the manual.
nota. Y por último, mi profesor de composición odia las indicaciones de compás @q{C},
así que la convertiremos en @q{4/4}.
-Sin embargo, no debemos cambiar el archivo @file{musica@/.ly}.
-Sustituyamos nuestro archivo @file{definiciones@/.ily} con éste:
+Sin embargo, no debemos cambiar el archivo @file{musica.ly}.
+Sustituyamos nuestro archivo @file{definiciones.ily} con éste:
@example
%%% definiciones.ily
¡Eso tiene un aspecto mucho mejor! Ahora suponga que quiere publicar esta
pieza. A mi profesor de composición no le gustan las indicaciones de compás @q{C},
pero yo les tengo cierto cariño. Copiaremos el archivo
-actual @file{definiciones@/.ily} a @file{publicar@/-web@/.ily} y modificaremos
+actual @file{definiciones.ily} a @file{publicar-web.ily} y modificaremos
éste. Como el propósito de esta música es producir un PDF que va a mostrarse
en la pantalla, también vamos a aumentar el
tamaño general de la salida.
Ahora, en la música, simplemente sustituyo @code{\include
"definiciones.ily"} por @code{\include "publicar-web.ily"}. Por
supuesto, podríamos hacer esto aún más práctico. Podríamos hacer un
-archivo @file{definiciones@/.ily} que contuviera solamente las
+archivo @file{definiciones.ily} que contuviera solamente las
definiciones de @code{mpdolce} y de @code{inst}, un archivo
-@file{publicar-web@/.ily} que contuviera solamente la sección
+@file{publicar-web.ily} que contuviera solamente la sección
@code{\layout} que se mostró en el ejemplo, y un archivo
-@file{universidad@/.ily} que contendría solamente los trucos para
+@file{universidad.ily} que contendría solamente los trucos para
producir la salida que le gusta a mi profesor. El comienzo de
-@file{musica@/.ly} tendría entonces este aspecto:
+@file{musica.ly} tendría entonces este aspecto:
@example
\include "definiciones.ily"
Dentro de esta carpeta, las dos subcarpetas interesantes son
@itemize
-@item @file{ly/@/} - contiene archivos en formato LilyPond
-@item @file{scm/@/} - contiene archivos en formato Scheme
+@item @file{ly/} - contiene archivos en formato LilyPond
+@item @file{scm/} - contiene archivos en formato Scheme
@end itemize
-Vamos a comenzar observando algunos archivos que están en @file{ly/@/}.
-Abra @file{ly/@/property@/-init@/.ly} con un editor de textos. El mismo que
-usaría normalmente para los archivos @file{@/.ly} servirá perfectamente.
+Vamos a comenzar observando algunos archivos que están en @file{ly/}.
+Abra @file{ly/property-init.ly} con un editor de textos. El mismo que
+usaría normalmente para los archivos @file{.ly} servirá perfectamente.
Este archivo contiene las definiciones de todas las instrucciones
estándar predefinidas de LilyPond, como por ejemplo @code{\stemUp} y
@code{\slurDotted}. Podrá ver que no son nada más que definiciones de
variable, al principio de su archivo de código de entrada.
Los siguientes son los archivos más útiles que se encuentran en
-@file{ly/@/}:
+@file{ly/}:
@multitable @columnfractions .4 .6
@headitem Archivo
@tab Contenido
-@item @file{ly/@/engraver@/-init@/.ly}
+@item @file{ly/engraver-init.ly}
@tab Definiciones de Contextos de grabadores
-@item @file{ly/@/paper@/-defaults@/-init@/.ly}
+@item @file{ly/paper-defaults-init.ly}
@tab especificaciones de valores predeterminados relacionados con el papel
-@item @file{ly/@/performer@/-init@/.ly}
+@item @file{ly/performer-init.ly}
@tab Definiciones de Contextos de interpretación
-@item @file{ly/@/property@/-init@/.ly}
+@item @file{ly/property-init.ly}
@tab Definiciones de todas las instrucciones predefinidas que son comunes
-@item @file{ly/@/spanner@/-init@/.ly}
+@item @file{ly/spanner-init.ly}
@tab Definiciones de las instrucciones predefinidas relacionadas con los objetos de extensión
@end multitable
Otros ajustes (como las definiciones de las instrucciones de marcado)
-se almacenan como archivos @file{@/.scm} (de Scheme). El lenguaje de
+se almacenan como archivos @file{.scm} (de Scheme). El lenguaje de
programación Scheme se utiliza para proporcionar un interfaz
programable en el funcionamiento interno de LilyPond. Cualquier
explicación adicional sobre estos archivos se encuentra por el momento
@multitable @columnfractions .4 .6
@headitem Archivo
@tab Contenido
-@item @file{scm/@/auto@/-beam@/.scm}
+@item @file{scm/auto-beam.scm}
@tab Valores predeterminados de sub-barrado
-@item @file{scm/@/define@/-grobs@/.scm}
+@item @file{scm/define-grobs.scm}
@tab valores predeterminados de las propiedades de grobs
-@item @file{scm/@/define@/-markup@/-commands@/.scm}
+@item @file{scm/define-markup-commands.scm}
@tab Especificar todas las instrucciones de marcado
-@item @file{scm/@/midi@/.scm}
+@item @file{scm/midi.scm}
@tab Ajustes predeterminados para la salida MIDI
-@item @file{scm/@/output@/-lib@/.scm}
+@item @file{scm/output-lib.scm}
@tab Ajustes que afectan al aspecto de los trastes, colores, alteraciones, lineas divisorias, etc.
-@item @file{scm/@/parser@/-clef@/.scm}
+@item @file{scm/parser-clef.scm}
@tab Definiciones de las claves contempladas
-@item @file{scm/@/script@/.scm}
+@item @file{scm/script.scm}
@tab Ajustes predeterminados para las articulaciones
@end multitable
dentro de un único canto antifonal o responsorial para marcar el final
de cada una de las secciones.
-Para usar divisiones, incluya el archivo @file{gregorian@/.ly}.
+Para usar divisiones, incluya el archivo @file{gregorian.ly}.
Contiene definiciones que podrá aplicar con tan sólo escribir
@code{\divisioMinima}, @code{\divisioMaior}, @code{\divisioMaxima} y
@code{\finalis} en los lugares adecuados de la entrada. Algunas
ediciones usan @emph{virgula} o @emph{caesura} en vez de divisio
-minima. Por ello, @file{gregorian@/.ly} define también las
+minima. Por ello, @file{gregorian.ly} define también las
instrucciones @code{\virgula} y @code{\caesura}.
@lilypond[quote,ragged-right]
accidentales.
Se habilita el soporte de los neumas gregorianos por medio de la
-inclusión con @code{\include} del archivo @file{gregorian@/.ly} al principio
+inclusión con @code{\include} del archivo @file{gregorian.ly} al principio
del archivo. Esto hace que estén disponibles una cierta cantidad de
instrucciones adicionales para producir los símbolos de los neumas que
se usan en la notación de canto llano.
un intervalo de semitono, pero es perfectamente posible, si bien
incorrecto, hacer un quilisma de una nota.
-Además de los símbolos de nota, el archivo @file{gregorian@/.ly} define también
+Además de los símbolos de nota, el archivo @file{gregorian.ly} define también
las instrucciones @code{\versus}, @code{\responsum}, @code{\ij},
@code{\iij}, @code{\IJ} y @code{\IIJ}, que producen los caracteres
correspondientes, p.ej. para utilizarlos en la letra, como marcas de
LISP) para aportar la infraestructura. La sobreescritura de las
decisiones de disposición da acceso efectivo a las interioridades del
programa, lo que requiere código de Scheme como entrada. Los
-elementos de Scheme se inauguran dentro de un archivo @file{@/.ly} con
+elementos de Scheme se inauguran dentro de un archivo @file{.ly} con
el símbolo de cuadradillo @code{#}.@footnote{@rextend{Tutorial de Scheme}
contiene un breve tutorial sobre la introducción de números,
listas, cadenas y símbolos en Scheme.}
@rlearning{Contextos y grabadores}.
Archivos de inicio:
-@file{ly/@/engraver@/-init@/.ly},
-@file{ly/@/performer@/-init@/.ly}.
+@file{ly/engraver-init.ly},
+@file{ly/performer-init.ly}.
Fragmentos de código:
@rlsr{Contexts and engravers}.
Hemos estado hablando de @emph{el} objeto @code{Fingering}, pero
realmente esto no significa mucho. El archivo de inicialización
(véase @rlearning{Otras fuentes de información})
-@file{scm/@/define@/-grobs@/.scm} muestra el alma del @q{objeto},
+@file{scm/define-grobs.scm} muestra el alma del @q{objeto},
@example
(Fingering
los grobs. Las decscripciones de los grobs reciben un nombre en
@code{MayúsculasDeCamello} (empezando en mayúscula). Contienen los
@q{ajustes predeterminados} para un tipo particular de grob, en forma
-de lista asociativa. Consulte @file{scm/@/define@/-grobs@/.scm} para
+de lista asociativa. Consulte @file{scm/define-grobs.scm} para
ver los ajustes de cada descripción de grob. Las descripciones de
grob se modifican con @code{\override}.
@qq{Backend} de la Referencia de Funcionamiento Interno
(véase @rinternals{StaffGrouper}):
-@file{scm/@/define@/-grobs@/.scm}:
+@file{scm/define-grobs.scm}:
@example
'((space . 9) (minimum-distance . 7) (padding . 1))
se establezca en un archivo de inicio y que se carga cada vez que se
compila un archivo de entrada. En el ejemplo anterior, los valores
predeterminados inicializados para @code{padding} y
-@code{minimum-distance} (definidos en @file{scm/@/define@/-grobs@/.scm}) se
+@code{minimum-distance} (definidos en @file{scm/define-grobs.scm}) se
reinician a sus valores predeterminados si no se han fijado (cero para
las dos claves). La definición de una propiedad o variable como una
lista-A (de cualquier tamaño) siempre reinicia todos los valores de
Como alternativa se puede especificar cualquiera de las ocho
combinaciones mediante funciones predefinidas cuya definición está en
-@file{scm/@/output@/-lib@/.scm}, donde las tres últimas columnas indican si
+@file{scm/output-lib.scm}, donde las tres últimas columnas indican si
los objetos de presentación serán visibles en las posiciones que se
muestran en el encabezamiento de cada columna:
Archivos de inicio:
-@file{scm/@/define@/-grobs@/.scm}.
+@file{scm/define-grobs.scm}.
Fragmentos de código:
@rlsr{Tweaks and overrides}.
@rextend{Sintaxis de las funciones musicales}.
Archivos instalados:
-@file{lily/@/music@/-scheme@/.cc},
-@file{scm/@/c++@/.scm},
-@file{scm/@/lily@/.scm}.
+@file{lily/music-scheme.cc},
+@file{scm/c++.scm},
+@file{scm/lily.scm}.
@node Ejemplos de funciones de sustitución
@ref{Modificadores de acorde más usuales}.
Archivos instalados:
-@file{scm/@/chords@/-ignatzek@/.scm},
-@file{scm/@/chord@/-entry@/.scm},
-@file{ly/@/chord@/-modifier@/-init@/.ly}.
+@file{scm/chords-ignatzek.scm},
+@file{scm/chord-entry.scm},
+@file{ly/chord-modifier-init.ly}.
Fragmentos de código:
@rlsr{Chords}.
@end lilypond
Las reglas para la colocación predeterminada de las articulaciones se
-encuentran definidas en el archivo @file{scm/@/script@/.scm}. Las
+encuentran definidas en el archivo @file{scm/script.scm}. Las
articulaciones y ornamentos se pueden colocar manualmente por encima o
por debajo del pentagrama; véase @ref{Dirección y posición}.
@ref{Trinos}.
Archivos instalados:
-@file{scm/@/script@/.scm}.
+@file{scm/script.scm}.
Fragmentos de código:
@rlsr{Expressive marks}.
@code{guitar-open-g-tuning} (Sol Mayor al aire, Re-Sol-Re-Sol-Si-Re),
@code{mandolin-tuning} (mandolina) y @code{banjo-open-g-tuning} (banjo
con Sol Mayor al aire). Las afinaciones predefinidas están en
-@file{scm/@/tablature@/.scm}.
+@file{scm/tablature.scm}.
Una afinación de las cuerdas es una lista de Scheme de alturas, una
por cada cuerda, ordenadas de 1 a N, donde la cuerda 1 está arriba en
@seealso
Archivos de inicio:
-@file{scm/@/tablature@/.scm}.
+@file{scm/tablature.scm}.
Fragmentos de código:
@rlsr{Fretted strings}.
@end lilypond
Los diagramas de traste predefinidos están en el archivo
-@file{predefined@/-guitar@/-fretboards@/.ly}. Los diagramas de trastes se
+@file{predefined-guitar-fretboards.ly}. Los diagramas de trastes se
almacenan tomando como base las notas de un acorde y el valor de
@code{stringTunings} que se está utilizando en cada momento.
-@file{predefined@/-guitar@/-fretboards@/.ly} contiene diagramas de traste
+@file{predefined-guitar-fretboards.ly} contiene diagramas de traste
predefinidos sólo para @code{guitar-tuning}. Los diagramas de traste
predefinidos se pueden añadir para otros instrumentos u otras
afinaciones siguiendo los ejemplos que aparecen en
-@file{predefined@/-guitar@/-fretboards@/.ly}.
+@file{predefined-guitar-fretboards.ly}.
Los diagramas de posiciones para el ukelele están en el archivo
-@file{predefined@/-ukulele@/-fretboards@/.ly}.
+@file{predefined-ukulele-fretboards.ly}.
@lilypond[verbatim, ragged-right, quote]
\include "predefined-ukulele-fretboards.ly"
@ref{Diagramas predefinidos de trastes}.
Archivos de inicio:
-@file{ly/@/predefined@/-guitar@/-fretboards@/.ly},
-@file{ly/@/predefined@/-guitar@/-ninth@/-fretboards@/.ly},
-@file{ly/@/predefined@/-ukulele@/-fretboards@/.ly}.
+@file{ly/predefined-guitar-fretboards.ly},
+@file{ly/predefined-guitar-ninth-fretboards.ly},
+@file{ly/predefined-ukulele-fretboards.ly}.
Fragmentos de código:
@rlsr{Fretted strings}.
@rlsr{Fretted strings}.
Archivos de inicio:
-@file{scm/@/output@/-lib@/.scm} contiene las afinaciones
+@file{scm/output-lib.scm} contiene las afinaciones
predefinidas para el banjo.
@translationof Input structure
El formato principal de entrada para LilyPond son archivos de texto.
-Por convenio, el nombre de estos archivos termina en @file{@/.ly}.
+Por convenio, el nombre de estos archivos termina en @file{.ly}.
@menu
* Estructura de una partitura::
archivo fuente produce al menos un archivo de salida, y de forma
predeterminada el nombre del archivo de salida que se produce está
derivado del nombre del archivo de entrada, de forma que
-@file{fandangoforelephants@/.ly} da como resultado
-@file{fandangoforelephants@/.pdf}.
+@file{fandangoforelephants.ly} da como resultado
+@file{fandangoforelephants.pdf}.
(Para ver más detalles acerca de los bloques @code{\book}, consulte
@ref{Varias partituras en un libro}, @ref{Varios archivos de salida a
@funindex \book
Todos los movimientos y textos que aparecen en el mismo archivo
-@file{@/.ly} se tipografían normalmente en la forma de un solo archivo
+@file{.ly} se tipografían normalmente en la forma de un solo archivo
de salida.
@example
@translationof Multiple output files from one input file
Si queremos varios archivos de salida a partir del mismo archivo
-@file{@/.ly}, podemos escribir varios bloques @code{\book}, donde cada
+@file{.ly}, podemos escribir varios bloques @code{\book}, donde cada
uno de estos bloques @code{\book} dará como resultado un archivo de
salida distinto. Si no especificamos ningún bloque @code{\book} en el
archivo, LilyPond trata implícitamente todo el archivo como un solo
@}
@end example
-en el archivo fuente @file{eightminiatures@/.ly}, produce
+en el archivo fuente @file{eightminiatures.ly}, produce
@itemize
@item
-@file{eightminiatures@/.pdf},
+@file{eightminiatures.pdf},
@item
-@file{eightminiatures@/-1@/.pdf} y
+@file{eightminiatures-1.pdf} y
@item
-@file{eightminiatures@/-2@/.pdf}.
+@file{eightminiatures-2.pdf}.
@end itemize
@node Nombres de los archivos de salida
nombres al producir varias salidas a partir de un único archivo fuente
de entrada. También podemos especificar nuestros propios sufijos para
cada bloque @code{\book}, de manera que podemos producir, por ejemplo,
-archivos con los nombres @file{eightminiatures@/-Romanze@/.pdf},
-@file{eightminiatures@/-Menuetto@/.pdf} y
-@file{eightminiatures@/-Nocturne@/.pdf} añadiendo una declaración
+archivos con los nombres @file{eightminiatures-Romanze.pdf},
+@file{eightminiatures-Menuetto.pdf} y
+@file{eightminiatures-Nocturne.pdf} añadiendo una declaración
@code{\bookOutputSuffix} dentro de cada bloque @code{\book}.
@example
@itemize
@item
-@file{Romanze@/.pdf},
+@file{Romanze.pdf},
@item
-@file{Menuetto@/.pdf} y
+@file{Menuetto.pdf} y
@item
-@file{Nocturne@/.pdf}.
+@file{Nocturne.pdf}.
@end itemize
@node Estructura del archivo
@funindex \book
@funindex \bookpart
-Un archivo @file{@/.ly} puede contener cualquier número de expresiones
+Un archivo @file{.ly} puede contener cualquier número de expresiones
del nivel superior, donde una expresión del nivel superior es una de
las siguientes posibilidades:
(libro) único. Este comportamiento se puede cambiar estableciendo el
valor de la variable @code{toplevel-score-handler} en el nivel
superior. El @emph{handler} predeterminado se define en el archivo de
-inicio @file{@/.@/./@/scm/@/lily@/.scm}.
+inicio @file{../scm/lily.scm}.
@item
Un bloque @code{\book} combina lógicamente varios movimientos (es
para cada bloque @code{\book}, en el que se concatenan todos los
movimientos correspondientes. La única razón para especificar
explícitamente bloques @code{\book} en un archivo de entrada
-@file{@/.ly} es si queremos crear varios archivos de salida a partir de
+@file{.ly} es si queremos crear varios archivos de salida a partir de
un único archivo de entrada. Una excepción se da dentro de los
documentos de lilypond-book, en los que tenemos que escribir
explícitamente un bloque @code{\book} si queremos tener más de una
ejemplo. Se puede cambiar este comportamiento estableciendo el valor
de la variable @code{toplevel-book-handler} en el nivel superior. El
@emph{handler} predeterminado se define en el archivo de inicio
-@file{@/.@/./@/scm/@/lily@/.scm}.
+@file{../scm/lily.scm}.
@item
Un bloque @code{\bookpart}. Un libro puede dividirse en varias
Se puede cambiar este comportamiento estableciendo el valor de la
variable @code{toplevel-music-handler} en el nivel más alto. El
@emph{handler} predeterminado se define en el archivo de inicio
-@file{@/.@/./@/scm/@/lily@/.scm}.
+@file{../scm/lily.scm}.
@item
Un texto de marcado, por ejemplo una estrofa
Una opción más avanzada es cambiar las definiciones de las variables
siguientes dentro del bloque @code{\paper}. El archivo de inicio
-@file{@/.@/./@/ly/@/titling@/-init@/.ly} ofrece un listado de la
+@file{../ly/titling-init.ly} ofrece un listado de la
disposición predeterminada.
@table @code
@seealso
Archivos de inicio:
-@file{@/.@/./@/ly/@/toc@/-init@/.ly}.
+@file{../ly/toc-init.ly}.
@predefined
@end example
La línea @code{\include "otroarchivo.ly"} equivale a pegar todo el
-contenido de @file{otroarchivo@/.ly} en el archivo actual en el lugar en
+contenido de @file{otroarchivo.ly} en el archivo actual en el lugar en
que aparece el @code{\include}. Por ejemplo, en un proyecto grande
podríamos querer archivos distintos para cada parte instrumental y
crear un archivo de @qq{partitura completa} que reúne los archivos
incluir proporcionando una referencia de ruta completa o una ruta
relativa (pero utilice la barra inclinada normal del UNIX, /, no la
barra invertida de DOS/Windows, \, como separador de directorio). Por
-ejemplo, si @file{material@/.ly} está situado un directorio por encima
+ejemplo, si @file{material.ly} está situado un directorio por encima
del directorio de trabajo actual, utilice
@example
ruta de búsqueda especificada como opción al invocar a LilyPond desde
la línea de órdenes. Los archivos incluidos se especifican usando
solamente su nombre de archivo. Por ejemplo, para compilar mediante
-este método un archivo @file{principal@/.ly} que incluye archivos
+este método un archivo @file{principal.ly} que incluye archivos
situados en un subdirectorio llamado @file{partes}, cambie al
-directorio que contiene @file{principal@/.ly} e introduzca
+directorio que contiene @file{principal.ly} e introduzca
@example
lilypond --include=partes principal.ly
@end example
-y en @file{principal@/.ly} escriba
+y en @file{principal.ly} escriba
@example
\include "VI.ly"
@end example
Los archivos que se incluyen en muchas partituras se pueden poner en
-el directorio de LilyPond @file{@/.@/./@/ly} (la localización de este
+el directorio de LilyPond @file{../ly} (la localización de este
directorio depende de la instalación: véase
@rlearning{Otras fuentes de información}). Estos archivos se pueden
incluir sencillamente por su nombre en un enunciado @code{\include}.
De esta forma se incluyen los archivos dependientes del idioma como
-@file{espanol@/.ly}.
+@file{espanol.ly}.
LilyPond incluye de forma predeterminada ciertos archivos cuando se
inicia el programa. Estas inclusiones no son visibles para el
Las definiciones de contexto siguen con precisión la misma sintaxis
que la de un bloque @code{\layout}. Los módulos de traducción para el
sonido reciben el nombre de ejecutantes. Los contextos para la salida
-MIDI se definen en @file{@/.@/./@/ly/@/performer@/-init@/.ly}, véase
+MIDI se definen en @file{../ly/performer-init.ly}, véase
@rlearning{Otras fuentes de información}. Por ejemplo, para eliminar
el efecto de los matices de la salida MIDI, inserte las líneas
siguientes en el bloque @code{\midi@{ @}}.
del rango de volumen MIDI disponible. Las fracciones predeterminadas
se extienden desde 0.25 para @notation{ppppp} hasta 0.95 para
@notation{fffff}. El conjunto de indicaciones dinámicas y las
-fracciones asociadas pueden verse en @file{@/.@/./@/scm/@/midi@/.scm}, véase
+fracciones asociadas pueden verse en @file{../scm/midi.scm}, véase
@rlearning{Otras fuentes de información}. Este conjunto de fracciones
se puede cambiar o extender proporcionando una función que toma como
argumento una indicación dinámica y devuelve la fracción requerida, y
Como alternativa, si se necesitara redefinir la tabla completa de
fracciones, sería mejor usar el procedimiento
@notation{default-dynamic-absolute-volume} que aparece en
-@file{@/.@/./@/scm/@/midi@/.scm} y la tabla asociada como modelo. El último
+@file{../scm/midi.scm} y la tabla asociada como modelo. El último
ejemplo de esta sección muestra cómo se puede hacer esto.
@unnumberedsubsubsec Volumen maestro MIDI
establecidas, de forma predeterminada LilyPond aplica un pequeño grado
de ecualización a algunos instrumentos. Los instrumentos y la
ecualización que se aplica se muestra en la tabla
-@notation{instrument-equalizer-alist} en @file{@/.@/./@/scm/@/midi@/.scm}.
+@notation{instrument-equalizer-alist} en @file{../scm/midi.scm}.
El ecualizador básico predeterminado se puede sustituir estableciendo
@code{instrumentEqualizer} en el contexto @code{Score} a un
la fracción de volumen absoluto @code{dynamicAbsoluteVolumeFunction}
al comienzo de esta sección. El ecualizador predeterminado,
@notation{default-instrument-equalizer}, en
-@file{@/.@/./@/scm/@/midi@/.scm}, muestra cómo se puede escribir tal
+@file{../scm/midi.scm}, muestra cómo se puede escribir tal
procedimiento.
El ejemplo siguiente establece los volúmenes relativos de la flauta y
Una lista asociativa o abreviadamente una @strong{lista-A} (alist en
inglés) es una pareja de Scheme que asocia un valor con una clave:
-@w{@code{(clave . valor)}}. Por ejemplo, en @file{scm/@/lily@/.scm}, la
+@w{@code{(clave . valor)}}. Por ejemplo, en @file{scm/lily.scm}, la
lista-A @w{@qq{type-p-name-alist}} asocia ciertos predicadps de tipo
(p.ej.@tie{}@code{ly:music?}) con nombres (p.ej.@tie{}@qq{music}) de
forma que se pueda informar de los fallos de comprobación de tipo con
secuencia de caracteres en una secuencia de elementos o tokens, en un
proceso que se llama análisis léxico. El analizador léxico de
LilyPond convierte el flujo obtenido a partir de un archivo de entrada
-@file{@/.ly} en un flujo descompuesto en tokens más apto para la
+@file{.ly} en un flujo descompuesto en tokens más apto para la
siguiente fase del procesado: el análisis sintáctico, véase
@ref{parser (analizador sintáctico)}. El analizador léxico de
LilyPond lexer está construido con la herramienta Flex a partir del
-archivo de lexer @file{lily/@/lexer@/.ll} que contiene las reglas léxicas.
+archivo de lexer @file{lily/lexer.ll} que contiene las reglas léxicas.
Este archivo es parte del código fuente y no se incluye dentro de la
instalación binaria de LilyPond.
mensaje de error adecuado. Las agrupaciones sintácticas y las reglas
para construir estas agrupaciones a partir de sus elementos
constituyentes para la sintaxis de LilyPond están definidas en
-@file{lily/@/parser@/.yy} y se muestran en la forma normal de Backus (BNF)
+@file{lily/parser.yy} y se muestran en la forma normal de Backus (BNF)
dentro de @ref{Gramática de LilyPond}. Este archivo se usa para
construir el analizador sintáctico durante la compilación del programa
por parte del generador de analizadores sintácticos, Bison. Es parte
semántica de ámbito puede ser confusa.
Cuando el valor de una de estas variables se modifica dentro de un
-archivo @file{@/.ly}, el cambio es global, y a no ser que se revierta
+archivo @file{.ly}, el cambio es global, y a no ser que se revierta
explícitamente, el nuevo valor persistirá hasta el final del archivo,
afectando a todos los bloques @code{\score} así como a los archivos
externos añadidos con la instrucción @code{\include}. Esto puede
orientados a objetos inmutables simples como números, y los smobs
complejos, usados para objetos con identidades. Si tiene acceso a las
fuentes de LilyPond sources, encontrará más información en
-@file{lily/@/includes/@/smob@/.hh}.
+@file{lily/includes/smob.hh}.
@node stencil (sello)
@unnumberedsubsec stencil (sello)
@ref{Notas de percusión}.
Archivos de inicio:
-@file{ly/@/drumpitch@/-init@/.ly}.
+@file{ly/drumpitch-init.ly}.
Fragmentos de código:
@rlsr{Percussion}.
basados en el tipo de compás para las propiedades @code{baseMoment},
@code{beatStructure} y @code{beamExceptions}. Los valores
predefinidos de estas propiedades están en
-@file{scm/@/time@/-signature@/-settings@/.scm}. Los valores predefinidos
+@file{scm/time-signature-settings.scm}. Los valores predefinidos
existentes se pueden cambiar, o pueden añadirse valores nuevos:
@lilypond[quote,verbatim]
@ref{Establecer el comportamiento de las barras automáticas}.
Archivos instalados:
-@file{scm/@/auto@/-beam@/.scm}.
+@file{scm/auto-beam.scm}.
Fragmentos de código:
@rlsr{Rhythms}.
De forma predeterminada @code{baseMoment} está fijado a una unidad más
que el denominador del compás. Todas las excepciones a este valor
predeterminado están en
-@file{scm/@/time@/-signature@/-settings@/.scm}.
+@file{scm/time-signature-settings.scm}.
Las reglas de autobarrado especiales (distintas de terminar una barra
sobre un pulso) están definidas en la propiedad @code{beamExceptions}.
Estos ajustes de barrado automático predeterminados para un tipo de
compás están determinados en el archivo
-@file{scm/@/time@/-signature@/-settings@/.scm}. Los ajustes de
+@file{scm/time-signature-settings.scm}. Los ajustes de
barrado automático para un tipo de compás pueden cambiarse como se
describe en @ref{Indicación de compás}.
la nota más breve dentro del grupo unido por una barra.
Como referencia, pueden encontrarse las reglas de barrado predefinidas
-en el archivo @file{scm/@/time@/-signature@/-settings@/.scm}.
+en el archivo @file{scm/time-signature-settings.scm}.
@snippets
@seealso
Archivos de inicio:
-@file{scm/@/beam@/-settings@/.scm}.
+@file{scm/beam-settings.scm}.
Fragmentos de código:
@rlsr{Rhythms}.
c1
@end lilypond
-El archivo @file{scm/@/translation@/-functions@/.scm} contiene las
+El archivo @file{scm/translation-functions.scm} contiene las
definiciones de @code{format-mark-numbers} (el formato por omisión),
@code{format-mark-box-numbers}, @code{format-mark-letters} y
@code{format-mark-box-letters}. Se pueden usar éstos como inspiración
@ref{Formatear el texto},
@ref{Alinear los contextos}.
-Archivos de inicio: @file{scm/@/translation@/-functions@/.scm}
+Archivos de inicio: @file{scm/translation-functions.scm}
contiene las definiciones de @code{format-mark-numbers} y de
@code{format-mark-letters}. Se pueden usar como inspiración para
escribir otras funciones de formateo.
@ref{Barras manuales}.
Archivos de inicio:
-@file{ly/@/grace@/-init@/.ly}.
+@file{ly/grace-init.ly}.
Fragmentos de código:
@rlsr{Rhythms}.
@ref{Articulaciones y ornamentos}.
Archivos de inicio:
-@file{ly/@/chord@/-repetition@/-init@/.ly}.
+@file{ly/chord-repetition-init.ly}.
@node Expresiones simultáneas
ellos @code{a4}, @code{letter}, @code{legal} y @code{11x17} (conocido
también como tabloide). Están contemplados muchos más tamaños de papel
de forma predeterminada. Para ver más detalles, consulte
-@file{scm/@/paper@/.scm} y busque la definición de @code{paper-alist}.
+@file{scm/paper.scm} y busque la definición de @code{paper-alist}.
@c TODO add a new appendix for paper sizes (auto-generated) -pm
@warning{El tamaño predeterminado del papel es @code{a4}.}
Se pueden añadir tamaños adicionales editando la definición de
-@code{paper-alist} en el archivo de inicio @file{scm/@/paper@/.scm},
+@code{paper-alist} en el archivo de inicio @file{scm/paper.scm},
aunque se sobreescribirán en la siguiente reinstalación del programa.
@cindex orientación
@seealso
Archivos instalados:
-@file{scm/@/paper@/.scm}.
+@file{scm/paper.scm}.
Fragmentos de código:
@rlsr{Spacing}.
tamaño del papel.
El valor predeterminado de los márgenes está accesible en el archivo
-@file{ly/@/paper@/-defaults@/-init@/.ly}. Estos valores se aplican al
+@file{ly/paper-defaults-init.ly}. Estos valores se aplican al
tamaño predeterminado del papel (A4, a no ser que se especifique de
otra forma) y se escalan adecuadamente para otros tamaños del papel.
@end example
Los ajustes predeterminados de inicio para estas variables están
-definidos en el archivo @file{ly/@/paper@/-defaults@/-init@/.ly}.
+definidos en el archivo @file{ly/paper-defaults-init.ly}.
@subsubheading Variables de dimensión de @code{\paper} verticales flexibles
El encabezamiento y el pie se crean por parte de las funciones
@code{make-footer} y @code{make-header}, definidas dentro de
@code{\paper}. Las implementaciones predeterminadas están en
-@file{ly/@/paper@/-defaults@/.ly} y en @file{ly/@/titling@/-init@/.ly}.
+@file{ly/paper-defaults.ly} y en @file{ly/titling-init.ly}.
El diseño de la página en sí está realizado por dos funciones dentro
del bloque @code{\paper}, @code{page-music-height} y
Se pueden definir valores del bloque @code{\paper} en Scheme. En tal
caso, @code{mm}, @code{in}, @code{pt}, y @code{cm} son variables que
-están definidas en @file{paper@/-defaults@/.ly} con valores en milímetros.
+están definidas en @file{paper-defaults.ly} con valores en milímetros.
Por ello el valor @w{@code{2 cm}} se debe multiplicar en el siguiente
ejemplo:
@c TODO Check this
Una configuración de división de líneas se puede guardar como archivo
-@code{@/.ly} automáticamente. Ello permite que alineaciones verticales
+@file{.ly} automáticamente. Ello permite que alineaciones verticales
se estiren para que encajen en las páginas durante una segunda
ejecución del proceso de formateo. Esta posibilidad es bastante
novedosa y difícil. Hay más detalles disponibles en @rlsr{Spacing}.
@seealso
Archivos de inicio:
-@file{ly/@/engraver@/-init@/.ly},
-@file{scm/@/define@/-grobs@/.scm}.
+@file{ly/engraver-init.ly},
+@file{scm/define-grobs.scm}.
Referencia de funcionamiento interno:
@rinternals{Contexts},
@seealso
Archivos de inicio:
-@file{scm/@/define@/-grobs@/.scm}.
+@file{scm/define-grobs.scm}.
Fragmentos de código:
@rlsr{Spacing}.
@seealso
Installed Files:
-@file{scm/@/define@/-grobs@/.scm}.
+@file{scm/define-grobs.scm}.
Snippets:
@rlsr{Spacing}.
@seealso
Archivos de inicio:
-@file{ly/@/engraver@/-init@/.ly},
-@file{scm/@/define@/-grobs@/.scm}.
+@file{ly/engraver-init.ly},
+@file{scm/define-grobs.scm}.
Fragmentos de código:
@rlsr{Spacing}.
@rlsr{Text}.
Archivos de inicio:
-@file{scm/@/markup@/.scm}.
+@file{scm/markup.scm}.
@knownissues
@rinternals{TextScript}.
Archivos de inicio:
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@node Alineación de texto
@rinternals{TextScript}.
Archivos de inicio:
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@node Notación gráfica dentro de elementos de marcado
@rinternals{TextScript}.
Archivos de inicio:
-@file{scm/@/define@/-markup@/-commands@/.scm},
-@file{scm/@/stencil@/.scm}.
+@file{scm/define-markup-commands.scm},
+@file{scm/stencil.scm}.
@node Notación musical dentro de elementos de marcado
@rinternals{TextScript}.
Archivos de inicio:
-@file{scm/@/define@/-markup@/-commands@/.scm},
-@file{scm/@/fret@/-diagrams@/.scm},
-@file{scm/@/harp@/-pedals@/.scm}.
+@file{scm/define-markup-commands.scm},
+@file{scm/fret-diagrams.scm},
+@file{scm/harp-pedals.scm}.
@node Elementos de marcado de varias páginas
@rinternals{TextScript}.
Archivos de inicio:
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@funindex \markuplines
@c A source file gets never installed...
@c Installed files:
-@c @file{lily/@/font@/-config@/-scheme@/.cc}.
+@c @file{lily/font-config-scheme.cc}.
@node Fuentes tipográficas del documento completo
\grace @{ \small G32[ d G e] @}
@end example
-@file{bagpipe@/.ly} también contiene definiciones de alturas para las notas de la
+@file{bagpipe.ly} también contiene definiciones de alturas para las notas de la
gaita en las octavas adecuadas, de forma que no se tenga que preocupar por
@code{\relative} o por @code{\transpose}.
@end lilypond
Se pueden crear diagramas nuevos siguiendo los patrones que están en
-@file{scm/@/define@/-woodwind@/-diagrams@/.scm} y en
-@file{scm/@/display@/-woodwind@/-diagrams@/.scm}. Sin embargo, esto requiere
+@file{scm/define-woodwind-diagrams.scm} y en
+@file{scm/display-woodwind-diagrams.scm}. Sin embargo, esto requiere
conocimientos de Scheme y quizá no esté al alcance de todos los
usuarios.
@seealso
Archivos de inicio:
-@file{scm/@/define@/-woodwind@/-diagrams@/.scm},
-@file{scm/@/display@/-woodwind@/-diagrams@/.scm}.
+@file{scm/define-woodwind-diagrams.scm},
+@file{scm/display-woodwind-diagrams.scm}.
Fragmentos de código:
@rlsr{Winds}.
semitono y de cuarto de tonoc, estando determinadas por el contexto
las exactas alteraciones de altura. Se usan por lo general los
nombres de nota italianos, mientras que el archivo de inicio
-@file{arabic@/.ly} proporciona un conjunto adecuado de macros y
+@file{arabic.ly} proporciona un conjunto adecuado de macros y
definiciones que extienden la notación estándar. Para ver más
detalles, consulte @ref{Música árabe}.
intervalos están basados en divisiones de 1/9 de tono. Se siguen
usando las notas del pentagrama occidental, pero con alteraciones
accidentales exclusivas de la música turca, que están definidas en el
-archivo @file{makam@/.ly}. Para ver más información sobre la música
+archivo @file{makam.ly}. Para ver más información sobre la música
clásica turca y los makamlar, consulte @ref{Música clásica de
Turquía}.
-PAra localizar los archivos de inicio como @file{arabic@/.ly} o
-@file{makam@/.ly} en su sistema, consulte @rlearning{Otras fuentes de
+PAra localizar los archivos de inicio como @file{arabic.ly} o
+@file{makam.ly} en su sistema, consulte @rlearning{Otras fuentes de
información}.
@snippets
El símbolo del semi-bemol no coincide con el símbolo que se utiliza en
la notación árabe. Se puede usar el símbolo @code{\dwn} definido en
-@file{arabic@/.ly} precediendo a un bemol como vía alternativa si es
+@file{arabic.ly} precediendo a un bemol como vía alternativa si es
importante usar el símbolo árabe específico del semi-bemol. El
aspecto del símbolo del semi-bemol dentro de la armadura no se puede
alterar mediante este método.
@cindex Arabic key signatures
Además de las armaduras de tonalidad mayores y menores, están
-definidas en @file{arabic@/.ly} las siguientes tonalidades:
+definidas en @file{arabic.ly} las siguientes tonalidades:
@notation{bayati}, @notation{rast}, @notation{sikah}, @notation{iraq}
y @notation{kurd}. Estas armaduras de tonalidad definen una pequeña
cantidad de grupos de maqam, en contraste con los numerosos maqams que
utilizar las notas occidentales (do, re, mi, ... ó c, d, e, ...) con
alteraciones especiales que elevan o bajan las notas en intervalos de
1/9, 4/9, 5/9 y 8/9 de tono. Esetas alteraciones están definidas en
-el archivo @file{makam@/.ly}.
+el archivo @file{makam.ly}.
La tabla siguiente relaciona:
La agrupación de pulsos dentro de un compás está controlada por la
propiedad de contexto @code{beatStructure}. Hay establecidos valores
de @code{beatStructure} para muchos tipos de compases en
-@file{scm/@/time@/-signature@/-settings@/.scm}. Los valores de
+@file{scm/time-signature-settings.scm}. Los valores de
@code{beatStructure} se pueden cambiar o establecer con @code{\\set}.
Como alternativa, se puede usar la función de Scheme
@code{set-time-signature} para establecer tanto el compás como la
rítmicamente compleja. En este ejemplo, el compás de 9/8 se agrupa
según dos patrones distintos utilizando los dos métodos, mientras que
el compás de 5/8 se agrupa de acuerdo con el ajuste predeterminado que
-está en @file{scm/@/time@/-signature@/-settings@/.scm}:
+está en @file{scm/time-signature-settings.scm}:
"
doctitlees = "Símbolos de dirección y símbolos de agrupación de compás"
el espacio del usuario, con un grabador de Scheme.
Esto es básicamente una reescritura en Scheme del código de
-@file{lily/@/ambitus@/-engraver@/.cc}.
+@file{lily/ambitus-engraver.cc}.
"
sólo en el primer acorde.
Este fragmento de código contiene código de tipo cabecera que se puede
-copiar como @file{flamenco@/.ly} e incluirse en los documentos fuente.
+copiar como @file{flamenco.ly} e incluirse en los documentos fuente.
"
doctitlees = "Notación del flamenco"
texidoces = "
El «Makam» es un tipo de melodía de Turquía que
utiliza alteraciones microtonales de 1/9 de tono. Consulte el
-archivo de inicio @file{makam@/.ly} (véase el 'Manual de
+archivo de inicio @file{makam.ly} (véase el 'Manual de
aprendizaje @version{}, 4.6.3 Otras fuentes de información' para
averiguar la situación de este archivo) para ver detalles de los
nombres de las notas y las alteraciones.
%% Translation of GIT committish: 5160eccb26cee0bfd802d844233e4a8d795a1e94
texidoces = "
Las abreviaturas se encuentran definidas dentro del archivo
-@file{ly/@/script@/-init@/.ly}, donde las variables @code{dashHat},
+@file{ly/script-init.ly}, donde las variables @code{dashHat},
@code{dashPlus}, @code{dashDash}, @code{dashBar},
@code{dashLarger}, @code{dashDot} y @code{dashUnderscore} reciben
valores predeterminados. Se pueden modificar estos valores
@code{stopGraceMusic}, @code{startAcciaccaturaMusic},
@code{stopAcciaccaturaMusic}, @code{startAppoggiaturaMusic} y
@code{stopAppoggiaturaMusic}, que están definidos en el archivo
-@file{ly/@/grace@/-init@/.ly}. Redefiniéndolos se pueden obtener otros
+@file{ly/grace-init.ly}. Redefiniéndolos se pueden obtener otros
efectos.
"
Tenemos que dividir esta plantilla en archivos independientes; los
nombres de archivo están dentro de los comentarios al principio de
-cada archivo. @file{piece@/.ly} contiene todas las definiciones de
-música. Los otros archivos (@file{score@/.ly}, @file{vn1@/.ly},
-@file{vn2@/.ly}, @file{vla@/.ly} y @file{vlc@/.ly}) producen la particella
+cada archivo. @file{piece.ly} contiene todas las definiciones de
+música. Los otros archivos (@file{score.ly}, @file{vn1.ly},
+@file{vn2.ly}, @file{vla.ly} y @file{vlc.ly}) producen la particella
correspondiente.
¡No olvide quitar los comentarios que hemos especificado cuando use
El fragmento de código que aparece a continuación produce una lista de
todas las llaves y disposiciones de llave posibles para los diagramas
de posiciones de instrumentos de viento madera, tal y como están
-definidos en @file{scm/@/define@/-woodwind@/-diagrams@/.scm}. La lista se
+definidos en @file{scm/define-woodwind-diagrams.scm}. La lista se
presenta en la consola y en el archivo de registro de salida, pero no
en la salida de música.
Para conseguir que esta cadena funcione, tendrá que configurar el
visor de PDF de forma que siga los hiper-enlaces usando el guión
-@file{lilypond@/-invoke@/-editor} proporcionado con LilyPond.
+@file{lilypond-invoke-editor} proporcionado con LilyPond.
Para Xpdf sobre Unix, lo siguiente debe estar presente en
@file{xpdfrc}@footnote{En Unix, este archivo se encuentra o bien en
-@file{/@/etc/@/xpdfrc} o como @file{@/.xpdfrc} en su directorio personal.}
+@file{/etc/xpdfrc} o como @file{.xpdfrc} en su directorio personal.}
@example
urlCommand "lilypond-invoke-editor %s"
@end example
-El programa @file{lilypond@/-invoke@/-editor} es un pequeño programa de
+El programa @file{lilypond-invoke-editor} es un pequeño programa de
apoyo. Invoca un editor para las URIs especiales de @code{textedit}, y
lanza un navegador de web para el resto. Comprueba la variable de
entorno @code{EDITOR} en busca de los siguientes patrones,
@end example
@noindent
-dentro de un archivo @file{@/.ly}. Se puede activar explícitamente la
+dentro de un archivo @file{.ly}. Se puede activar explícitamente la
posibilidad de apuntar y pulsar con
@example
@unnumberedsubsec Modo de Emacs
@translationof Emacs mode
-Emacs tiene un @file{lilypond@/-mode}, que proporciona autocompleción de
+Emacs tiene un @file{lilypond-mode}, que proporciona autocompleción de
teclado, sangrado, compensación de paréntesis específica de LilyPond y
resaltado de sintaxis con colores, útiles combinaciones de teclas para
compilar y leer los manuales de LilyPond utilizando Info. Si el
-@file{lilypond@/-mode} no está instalado en su sistema, siga leyendo.
+@file{lilypond-mode} no está instalado en su sistema, siga leyendo.
Está incluido un modo de Emacs para escribir música y ejecutar
LilyPond, en el archivo del código fuente dentro del directorio
@file{elisp}. Haga @command{make install} para instalarlo dentro de
-@var{elispdir}. El archivo @file{lilypond@/-init@/.el} se debe situar en
-@var{load-path}@file{/@/site@/-start@/.d/@/} o añadirse a su @file{@/~/@/@/.emacs} o
-@file{@/~/@/@/.emacs@/.el}.
+@var{elispdir}. El archivo @file{lilypond-init.el} se debe situar en
+@var{load-path}@file{/site-start.d/} o añadirse a su @file{~/.emacs} o
+@file{~/.emacs.el}.
Como usuario, puede querer añadir su ruta a las fuentes
-(p.ej. @file{@/~/@/site@/-lisp/@/}) a su @var{load-path} añadiendo la
-siguiente línea (modificada) a su @file{@/~/@/@/.emacs}
+(p.ej. @file{~/site-lisp/}) a su @var{load-path} añadiendo la
+siguiente línea (modificada) a su @file{~/.emacs}
@c any reason we do not advise: (push "~/site-lisp" load-path)
@example
su uso con LilyPond un plug-in o complemento para el tipo de archivo,
un modo de sangrado y un modo de resaltado de sintaxis.
Para habilitar todas estas posibilidades, cree (o modifique)
-su archivo @file{@/$HOME/@/@/.vimrc} de manera que contenga estas tres líneas
+su archivo @file{$HOME/.vimrc} de manera que contenga estas tres líneas
en el mismo orden:
@example
@end example
Si LilyPond no está instalado en el directorio
-@file{/@/usr/@/local/}, cambie esta ruta de una forma adecuada.
+@file{/usr/local/}, cambie esta ruta de una forma adecuada.
Este asunto se trata en
@rlearning{Otras fuentes de información}.
las duraciones se escriben solamente cuando es necesario.
Es posible grabar un archivo MIDI usando un teclado digital y
-convertirlo después a @file{@/.ly}. Sin embargo, los intérpretes
+convertirlo después a @file{.ly}. Sin embargo, los intérpretes
humanos no son lo suficientemente exactos desde el punto de vista
rítmico como para hacer que sea trivial la conversión de MIDI a LY.
Si se invoca con las opciones de cuantización (@code{-s} y @code{-d}),
@command{musicxml2ly} extrae las notas, articulaciones, estructura de
la partitura, letra, etc., de archivos de MusicXML parte a parte, y
-los escribe en un archivo @file{@/.ly}. Se invoca a través de la línea de
+los escribe en un archivo @file{.ly}. Se invoca a través de la línea de
órdenes.
La invocación desde la línea de órdenes se hace como sigue:
mostrar un resumen de la utilización y las opciones.
@item -l, --language=IDIOMA
-utilizar un archivo de idioma distinto @file{IDIOMA@/.ly} y los
-correspondientes nombres de nota, p.ej. 'deutsch' para @file{deutsch@/.ly} y
+utilizar un archivo de idioma distinto @file{IDIOMA.ly} y los
+correspondientes nombres de nota, p.ej. 'deutsch' para @file{deutsch.ly} y
los nombres de nota en alemán.
@item --lxml
@item -o,--output=@var{archivo}
fijar el nombre del archivo de salida como @var{archivo}. Si
@var{archivo} es @file{-}, la salida se imprime sobre stdout, la
-salida estándar. Si no se da, se usa @var{archivo_xml}@file{@/.ly}.
+salida estándar. Si no se da, se usa @var{archivo_xml}@file{.ly}.
@item -r,--relative
convertir las alturas en modo relativo (predeterminado).
@subheading Procesado
Guarde el código anterior como un archivo llamado
-@file{lilybook@/.lytex}, y luego ejecute en un terminal:
+@file{lilybook.lytex}, y luego ejecute en un terminal:
@c keep space after @version{} so TeX doesn't choke
@example
de lilypond.
Cuando se ejecuta @command{lilypond-book} sobre el archivo, se obtiene
-como resultado un archivo Texinfo (con la extensión @file{@/.texi}) que
+como resultado un archivo Texinfo (con la extensión @file{.texi}) que
contiene etiquetas @code{@@image} para el HTML, Info y la salida
impresa. @command{lilypond-book} genera imágenes de la música en
formatos EPS y PDF para usarlos en la salida impresa, y en formato PNG
siguientes). Las etiquetas se eligen de forma que permitan a los
editores de DocBook formatear el contenido satisfactoriamente. Los
archivos de DocBook que se van a procesar con @command{lilypond-book}
-deben tener la extensión @file{@/.lyxml}.
+deben tener la extensión @file{.lyxml}.
@subheading Incluir un archivo de LilyPond
-Este es el caso más sencillo. Debemos usar la extensión @file{@/.ly}
+Este es el caso más sencillo. Debemos usar la extensión @file{.ly}
para el archivo incluido, e insertarlo como un @code{imageobject}
estándar, con la estructura siguiente:
@subheading Procesar el documento de DocBook
-Al ejecutar @command{lilypond-book} sobre el archivo @file{@/.lyxml} se
+Al ejecutar @command{lilypond-book} sobre el archivo @file{.lyxml} se
creará un documento de DocBook válido que se puede procesar
-posteriormente con la extensión @file{@/.xml}. Si usa
+posteriormente con la extensión @file{.xml}. Si usa
@uref{http://@/dblatex@/.sourceforge@/.net@/,dblatex}, creará un
archivo PDF a partir de este documento automáticamente. Para la
generación de HTML (HTML Help, JavaHelp, etc.) puede usar las hojas de
salida literal pero no en el código fuente, podemos establecer el
valor de la variable de entorno @code{LYDOC_LOCALEDIR} a la ruta de un
directorio; este directorio debe contener un árbol de catálogos de
-mensajes @file{@/.mo} con @code{lilypond-doc} como dominio.
+mensajes @file{.mo} con @code{lilypond-doc} como dominio.
@item addversion
(Sólo para la salida de Texinfo.) Anteponer la línea @code{\version
@item texidoc
(Sólo para la salida de Texinfo.) Si se llama a @command{lilypond}
con la opción @option{--header=@/texidoc}, y el archivo que se procesa
-se llama @file{fulanito@/.ly}, crea un archivo
-@file{fulanito@/.texidoc} si existe un campo @code{texidoc} dentro del
+se llama @file{fulanito.ly}, crea un archivo
+@file{fulanito.texidoc} si existe un campo @code{texidoc} dentro del
bloque @code{\header} de cabecera. La opción @code{texidoc} hace que
@command{lilypond-book} incluya estos archivos, añadiendo su contenido
como un bloque de documentación inmediatamente antes del fragmento
musical.
-Suponiendo que el archivo @file{fulanito@/.ly} contiene
+Suponiendo que el archivo @file{fulanito.ly} contiene
@example
\header @{
@noindent
y que tenemos lo siguiente en nuestro documento de Texinfo
-@file{prueba@/.texinfo}
+@file{prueba.texinfo}
@example
@@lilypondfile[texidoc]@{fulanito.ly@}
@end example
La mayoría de los documentos de prueba de LilyPond (en el directorio
-@file{input} de la distribución) son pequeños archivos @file{@/.ly} que
+@file{input} de la distribución) son pequeños archivos @file{.ly} que
tienen exactamente este aspecto.
Por motivos de localización de idioma, si el documento de Texinfo
contiene @code{@@documentlanguage @var{LANG}} y la cabecera de
-@file{loquesea@/.ly} contiene un campo @code{texidoc@var{LANG}}, y
+@file{loquesea.ly} contiene un campo @code{texidoc@var{LANG}}, y
@command{lilypond} se ejecuta con
@option{--header=@/texidoc@var{LANG}}, entonces se incluirá
-@file{loquesea@/.texidoc@var{LANG}} en lugar de
-@file{loquesea@/.texidoc}.
+@file{loquesea.texidoc@var{LANG}} en lugar de
+@file{loquesea.texidoc}.
@item lilyquote
(Sólo para la salida de Texinfo.) Esta opción es similar a quote,
(Sólo para la salida de Texinfo.) Esta opción funciona de forma
parecida a la opción @code{texidoc}: si @command{lilypond} se llama
con la opción @option{--header=@/doctitle}, y el archivo que procesar
-se llama @file{loquesea@/.ly} y contiene un campo @code{doctitle} en
-el bloque @code{\header}, crea un archivo @file{loquesea@/.doctitle}.
+se llama @file{loquesea.ly} y contiene un campo @code{doctitle} en
+el bloque @code{\header}, crea un archivo @file{loquesea.doctitle}.
Cuando se usa la opción @code{doctitle}, el contenido de
-@file{loquesea@/.doctitle}, que debería ser una línea única de
+@file{loquesea.doctitle}, que debería ser una línea única de
@var{texto}, se inserta en el documento de Texinfo como
@code{@@lydoctitle @var{texto}}. @code{@@lydoctitle} debe ser un
macro definido en el documento de Texinfo. La misma indicación
@translationof Invoking lilypond-book
@command{lilypond-book} produce un archivo con una de las siguientes
-extensiones: @file{@/.tex}, @file{@/.texi}, @file{@/.html} o @file{@/.xml},
-dependiendo del formato de salida. Todos los archivos @file{@/.tex},
-@file{@/.texi} y @file{@/.xml} necesitan un procesado posterior.
+extensiones: @file{.tex}, @file{.texi}, @file{.html} o @file{.xml},
+dependiendo del formato de salida. Todos los archivos @file{.tex},
+@file{.texi} y @file{.xml} necesitan un procesado posterior.
@subheading Instrucciones específicas de formato
@end example
@noindent
-El archivo @file{@/.dvi} creado por este proceso no contiene las cabezas
+El archivo @file{.dvi} creado por este proceso no contiene las cabezas
de las notas. Esto es normal; si sigue las instrucciones, las cabezas
-aparecerán en los archivos @file{@/.ps} y @file{@/.pdf}.
+aparecerán en los archivos @file{.ps} y @file{.pdf}.
La ejecución de @command{dvips} puede dar como resultado algunas
advertencias sobre las fuentes tipográficas; son inocuas y se pueden
@end example
Cuando se invoca con un nombre de archivo sin extensión, se prueba en
-primer lugar con la extensión @file{@/.ly}. Para leer la entrada desde
+primer lugar con la extensión @file{.ly}. Para leer la entrada desde
stdin, utilice un guión (@code{-}) en sustitución de @var{archivo}.
-Cuando se procesa @file{archivo@/.ly}, la salida resultante son los
-archivos @file{archivo@/.ps} y @file{archivo@/.pdf}. Se pueden
+Cuando se procesa @file{archivo.ly}, la salida resultante son los
+archivos @file{archivo.ps} y @file{archivo.pdf}. Se pueden
especificar varios archivos; cada uno de ellos se procesará de forma
independiente@footnote{El estado de GUILE no se restablece después de
procesar un archivo @code{.ly}, por lo que debe tener cuidado de no
modificar ningún valor predeterminado desde dentro de Scheme.}.
-Si @file{archivo@/.ly} contiene más de un bloque @code{\score}, el resto
+Si @file{archivo.ly} contiene más de un bloque @code{\score}, el resto
de las partituras se obtendrán como salida en archivos numerados,
-empezando por @file{archivo@/-1@/.pdf}. además, el valor de
+empezando por @file{archivo-1.pdf}. además, el valor de
@code{output-suffix} (sufijo de salida) se insertará entre el nombre
base y el número. Un archivo de entrada que contenga
@end example
@noindent
-producirá como salida @var{base}@file{@/-violin@/.pdf} y
-@var{base}@file{@/-cello@/-1@/.pdf}.
+producirá como salida @var{base}@file{-violin.pdf} y
+@var{base}@file{-cello-1.pdf}.
@unnumberedsubsubsec Instrucciones estándar de la línea de órdenes
@item -e,--evaluate=@var{expresión}
Evaluar la @var{expresión} de Scheme antes de analizar los archivos
-@file{@/.ly}. Se pueden pasar varias opciones @code{-e}, que se
+@file{.ly}. Se pueden pasar varias opciones @code{-e}, que se
evaluarán en secuencia.
La expresión se evaluará en el módulo @code{guile-user}, de manera que
@end example
@noindent
-al principio del archivo @file{@/.ly}.
+al principio del archivo @file{.ly}.
@item -f,--format=@var{formato}
Formato de la salida. Como @code{formato} se puede elegir entre
@cindex safe, línea de órdenes
@item safe
-No confiar en la entrada @file{@/.ly}.
+No confiar en la entrada @file{.ly}.
Cuando el proceso de tipografía de LilyPond se encuentra disponible a
través de un servidor web, @b{SE DEBEN} pasar las opciones
La opción @code{-dsafe} funciona evaluando las expresiones en línea de
Scheme dentro de un módulo especial seguro. Este módulo seguro deriva
-del módulo GUILE @file{safe@/-r5rs}, pero añade ciertas funciones del
+del módulo GUILE @file{safe-r5rs}, pero añade ciertas funciones del
API de LilyPond. Estas funciones se relacionan en
-@file{scm/@/safe@/-lily@/.scm}.
+@file{scm/safe-lily.scm}.
Además, el modo seguro prohíbe las directivas @code{\include} e
inhabilita el uso de barras invertidas en las cadenas de @TeX{}.
@item -i,--init=@var{archivo}
Establecer el archivo de inicio a @var{archivo} (predeterminado:
-@file{init@/.ly}).
+@file{init.ly}).
@cindex carpeta, dirigir la salida hacia
@cindex salida, establecer el nombre del archivo de
@translationof Apparent error in ../ly/init.ly
Pueden aparecer varios mensajes de error extraños acerca de errores de
-sintaxis en @file{@/.@/./@/ly/@/init@/.ly} si el archivo de entrada no está
+sintaxis en @file{../ly/init.ly} si el archivo de entrada no está
correctamente formado, por ejemplo si no contiene llaves o comillas
correctamente emparejados.
las relaciones de dependencia entre los archivos y qué instrucciones
necesitamos dar al sistema operativo para producir un archivo a partir
de otro. Por ejemplo, el archivo de make detallaría cómo obtener
-@file{balada@/.pdf} y @file{balada@/.midi} a partir de @file{balada@/.ly}
+@file{balada.pdf} y @file{balada.midi} a partir de @file{balada.ly}
mediante la ejecución de Lilypond.
Existen ocasiones en las que es buena idea crear un @code{Makefile}
`-- sinfoniaDefs.ily
@end example
-Los archivos @file{@/.ly} de los directorios @code{Partituras} y
-@code{Particellas} obtienen las notas de archivos @file{@/.ily} que están en
+Los archivos @file{.ly} de los directorios @code{Partituras} y
+@code{Particellas} obtienen las notas de archivos @file{.ily} que están en
el directorio @code{Notas}:
@example
@noindent
dentro del directorio que contiene el archivo. Con esto se actualiza
-@file{miarchivo@/.ly} @emph{in situ} y se preserva el archivo original
-@file{miarchivo@/.ly~}.
+@file{miarchivo.ly} @emph{in situ} y se preserva el archivo original
+@file{miarchivo.ly~}.
@warning{@command{convert-ly} siempre convierte hasta el último cambio
de sintaxis que es capaz de manejar. Esto significa que el número de
Si la orden simple @command{convert-ly -e *.ly} no funciona porque la
instrucción expandida se hace muy larga, en vez de ello la orden
@command{convert-ly} se puede poner dentro de un bucle. Este ejemplo
-para UNIX actualiza todos los documentos @file{@/.ly} del directorio
+para UNIX actualiza todos los documentos @file{.ly} del directorio
actual
@example
@ruser{Predefined type predicates}.
Installed Files:
-@file{lily/@/music@/-scheme@/.cc},
-@file{scm/@/c++@/.scm},
-@file{scm/@/lily@/.scm}.
+@file{lily/music-scheme.cc},
+@file{scm/c++.scm},
+@file{scm/lily.scm}.
@node Simple substitution functions
@code{text example} string, and then it raises that Stencil by 0.5
staff space. This is a rather simple example; more complex examples
are in the rest
-of this section, and in @file{scm/@/define@/-markup@/-commands@/.scm}.
+of this section, and in @file{scm/define-markup-commands.scm}.
@node New markup command definition
A good way to start writing a new markup command, is to take example on
a builtin one. Most of the markup commands provided with LilyPond can be
-found in file @file{scm/@/define@/-markup@/-commands@/.scm}.
+found in file @file{scm/define-markup-commands.scm}.
For instance, we would like to adapt the @code{\draw-line} command, to
draw a double line instead. The @code{\draw-line} command is defined as
TextScript object. These numbers are measured in staff-spaces, so
this command moves the object 1 staff space to the right, and 2 spaces up.
-Procedures for working with offsets are found in @file{scm/@/lily@/-library@/.scm}.
+Procedures for working with offsets are found in @file{scm/lily-library.scm}.
@subheading Extents
is the bottom coordinate, and the @code{cdr} is the top coordinate.
Procedures for working with intervals are found in
-@file{scm/@/lily@/-library@/.scm}. These procedures should be used when possible
+@file{scm/lily-library.scm}. These procedures should be used when possible
to ensure consistency of code.
@subheading Property alists
@sourceimage{Learning_Macos_Save_menu,,,}
-Attribuez un nom à votre fichier, par exemple @file{test@/.ly}.
+Attribuez un nom à votre fichier, par exemple @file{test.ly}.
@sourceimage{Learning_Macos_Save_file_with_name,,,}
@sourceimage{Learning_Win7_Save_Menu,,,}
-Affectez un nom à votre fichier, comme par exemple @file{test@/.ly}.
+Affectez un nom à votre fichier, comme par exemple @file{test.ly}.
@sourceimage{Learning_Win7_Save_File_With_Name,,,}
@subsubheading Étape 2b. Compilation par double-clic
-Vous pouvez aussi faire un double-clic sur le fichier @file{test@/.ly}.
+Vous pouvez aussi faire un double-clic sur le fichier @file{test.ly}.
@subsubheading Étape 3. Visualisation du résultat
-Au cours de la compilation du fichier @file{test@/.ly}, une fenêtre
+Au cours de la compilation du fichier @file{test.ly}, une fenêtre
d'interpréteur de commande s'ouvre et se referme. Trois fichiers
complémentaires seront générés pendant ce temps là.
@sourceimage{Learning_Win7_All_Files_Created,,,}
-Le fichier PDF contient la gravure de votre fichier @file{test@/.ly}.
+Le fichier PDF contient la gravure de votre fichier @file{test.ly}.
@sourceimage{Learning_Win7_Pdf_Output,,,}
@subsubheading Étape 1. Création d'un fichier @file{.ly}
-Créez un fichier texte du nom de @file{test@/.ly} et saisissez@tie{}:
+Créez un fichier texte du nom de @file{test.ly} et saisissez@tie{}:
@c double \\ required because this is inside a macro!
@example
@subsubheading Étape 2. Compilation en ligne de commande
-Pour traiter le fichier @file{test@/.ly}, tapez ce qui suit à l'invite de
+Pour traiter le fichier @file{test.ly}, tapez ce qui suit à l'invite de
commande@tie{}:
@example
@subsubheading Étape 3. Visualisation du résultat
-Vous pouvez à présent visualiser ou imprimer @file{test@/.pdf}.
+Vous pouvez à présent visualiser ou imprimer @file{test.pdf}.
@end macro
(@emph{recueil} ou @emph{ouvrage}) n'est pas obligatoire -- elle sera
créée implicitement. Néanmoins, le recours à la commande @code{\book}
vous permettra d'obtenir des fichiers résultants distincts à partir
-d'un même fichier source @file{@/.ly} -- par exemple un fichier par pupitre.
+d'un même fichier source @file{.ly} -- par exemple un fichier par pupitre.
En résumé :
Dès que LilyPond rencontre un bloc @code{\book}, il crée un
-fichier distinct (@file{@/.pdf} par exemple). Dans le cas où il n'est pas
+fichier distinct (@file{.pdf} par exemple). Dans le cas où il n'est pas
mentionné explicitement, LilyPond regroupera l'intégralité du code dans
un bloc @code{\book}.
Revenons à notre propos@tie{}: nous voulons modifier uniquement la
sous-propriété @code{stretchability}. Les impatients trouveront les
valeurs par défaut de la propriété @code{staff-staff-spacing} dans le
-fichier @file{scm/@/define@/-grobs@/.scm}, en examinant la définition du
+fichier @file{scm/define-grobs.scm}, en examinant la définition du
@emph{grob} @code{VerticalAxisGroup}. La valeur que nous affecterons à
@code{stretchability} est celle que contient la définition du contexte
@code{PianoStaff} telle qu'elle apparaît dans le fichier
-@file{ly/@/engraver@/-init@/.ly}).
+@file{ly/engraver-init.ly}).
@example
\score @{
définition, par exemple @code{\dolce}, pour tous vos fichiers (voir
@ref{Feuilles de style}) et que la syntaxe change, alors vous n'aurez
qu'à mettre à jour votre seule définition @code{\dolce}, au lieu de
-devoir modifier chaque fichier @file{@/.ly}.
+devoir modifier chaque fichier @file{.ly}.
@node Conducteurs et parties
la partie séparée et la partition d'orchestre.
Il est judicieux de définir les notes dans un fichier séparé. Par
-exemple, supposons que le fichier @file{musique@/-Cor@/.ly} contienne la
+exemple, supposons que le fichier @file{musique-Cor.ly} contienne la
partie suivante pour un duo cor/@/basson.
@example
@end example
@noindent
-sera substitué le contenu du fichier @file{musique@/-Cor@/.ly}, et de ce
+sera substitué le contenu du fichier @file{musique-Cor.ly}, et de ce
fait la variable @code{notesCor} se trouvera définie. La commande
@code{\transpose@tie{}f@tie{}c'} indique que son argument
@code{\notesCor} sera transposé à la quinte supérieure@tie{}: le son
@end lilypond
Le conducteur rassemble toute la musique. Si l'on suppose que l'autre
-voix de notre duo se trouve dans le fichier @file{musique@/-Basson@/.ly} en
+voix de notre duo se trouve dans le fichier @file{musique-Basson.ly} en
tant que variable @code{notesBasson}, on établira un conducteur avec
@example
voué à être inclus dans un fichier maître@tie{}; il n'est pas destiné à
être compilé isolément.@*
Maintenant, modifions notre musique (enregistrez ce fichier
-sous @file{musique@/.ly}).
+sous @file{musique.ly}).
@c We have to do this awkward example/lilypond-non-verbatim
@c because we can't do the \include stuff in the manual.
chiffrages de mesure en @qq{C}, nous allons donc le transformer en
@qq{4/4}.
-Cependant, ne changez pas le fichier @file{musique@/.ly}. Remplacez le
-fichier @file{definitions@/.ily} par ceci@tie{}:
+Cependant, ne changez pas le fichier @file{musique.ly}. Remplacez le
+fichier @file{definitions.ily} par ceci@tie{}:
@example
%%% definitions.ily
C'est encore mieux@tie{}! Mais supposons maintenant que je veuille
publier cette pièce. Mon professeur de composition n'aime pas les
chiffrages de mesure en @qq{C}, mais moi je les aime bien. Copions
-l'actuel @file{definitions@/.ily} dans le fichier
-@file{publication@/-web@/.ily}, et modifions ce dernier. Puisque la musique
+l'actuel @file{definitions.ily} dans le fichier
+@file{publication-web.ily}, et modifions ce dernier. Puisque la musique
est destinée à produire un fichier PDF affiché sur écran, nous allons
aussi augmenter la taille globale de police.
musique.
Il est possible, bien sûr, de rendre cela encore plus pratique. Nous
-pourrions créer un fichier @file{definitions@/.ily} qui ne contiendrait
+pourrions créer un fichier @file{definitions.ily} qui ne contiendrait
que les définitions de @code{mpdolce} et de @code{inst}, un
-fichier @file{publication@/-web@/.ily} qui ne contiendrait que la section
-@code{layout} décrite ci-dessus et un fichier @file{universite@/.ily} qui
+fichier @file{publication-web.ily} qui ne contiendrait que la section
+@code{layout} décrite ci-dessus et un fichier @file{universite.ily} qui
ne contiendrait que les retouches pour produire le résultat que mon
-professeur préfère. Le début du fichier @file{musique@/.ly} ressemblerait
+professeur préfère. Le début du fichier @file{musique.ly} ressemblerait
alors à
@example
@item @code{scm/} -- contient les fichiers en format Scheme
@end itemize
-Commençons par examiner quelques fichiers contenus dans @file{ly/@/}.
-Nous ouvrons @file{ly/@/property@/-init@/.ly} dans un éditeur de texte --
-celui que vous avez l'habitude d'utiliser pour les fichiers @file{@/.ly}
+Commençons par examiner quelques fichiers contenus dans @file{ly/}.
+Nous ouvrons @file{ly/property-init.ly} dans un éditeur de texte --
+celui que vous avez l'habitude d'utiliser pour les fichiers @file{.ly}
fera très bien l'affaire. Ce fichier contient les définitions de toutes
les commandes standard prédéfinies de LilyPond, comme @code{\stemUp} et
@code{\slurDotted}. Vous pouvez constater que ce n'est rien d'autre
peuvent être facilement redéfinies, comme n'importe quelle autre
variable, en tête de votre fichier d'entrée.
-Voici les fichiers les plus utiles dans le répertoire @file{ly/@/}@tie{}:
+Voici les fichiers les plus utiles dans le répertoire @file{ly/}@tie{}:
@multitable @columnfractions .4 .6
@headitem Nom de fichier
@tab Contenu
-@item @file{ly/@/engraver@/-init@/.ly}
+@item @file{ly/engraver-init.ly}
@tab Définitions des Contextes de graveurs
-@item @file{ly/@/paper@/-defaults@/-init@/.ly}
+@item @file{ly/paper-defaults-init.ly}
@tab Réglages papier par défaut
-@item @file{ly/@/performer@/-init@/.ly}
+@item @file{ly/performer-init.ly}
@tab Définitions des Contextes d'interprétation
-@item @file{ly/@/property@/-init@/.ly}
+@item @file{ly/property-init.ly}
@tab Définitions de toutes les commandes prédéfinies courantes
-@item @file{ly/@/spanner@/-init@/.ly}
+@item @file{ly/spanner-init.ly}
@tab Définitions des commandes prédéfinies pour les bandeaux
@end multitable
Les autres réglages (comme les définitions de commandes @emph{markup})
-sont conservés comme fichiers @file{@/.scm} (Scheme). Le langage de
+sont conservés comme fichiers @file{.scm} (Scheme). Le langage de
programmation Scheme offre une interface programmable dans le
processus interne de LilyPond. De plus amples explications sur ces
fichiers dépasseraient le cadre de ce manuel dans la mesure où elles
@multitable @columnfractions .4 .6
@headitem Nom de fichier
@tab Contenu
-@item @file{scm/@/auto@/-beam@/.scm}
+@item @file{scm/auto-beam.scm}
@tab Régles par défaut des ligatures subalternes
-@item @file{scm/@/define@/-grobs@/.scm}
+@item @file{scm/define-grobs.scm}
@tab Réglages par défaut des propriétés de @emph{grobs}
-@item @file{scm/@/define@/-markup@/-commands@/.scm}
+@item @file{scm/define-markup-commands.scm}
@tab Spécification de toutes les commandes de @emph{markup}
-@item @file{scm/@/midi@/.scm}
+@item @file{scm/midi.scm}
@tab Réglages par défaut pour les sorties MIDI
-@item @file{scm/@/output@/-lib@/.scm}
+@item @file{scm/output-lib.scm}
@tab Réglages affectant l'apparence des frets, couleurs, altérations,
barres de mesure, etc.
-@item @file{scm/@/parser@/-clef@/.scm}
+@item @file{scm/parser-clef.scm}
@tab Définition des clefs prises en charge
-@item @file{scm/@/script@/.scm}
+@item @file{scm/script.scm}
@tab Réglages par défaut des articulations
@end multitable
indiquer la fin de chaque partie dans une structure verset/répons.
Les divisions sont disponibles après inclusion du fichier
-@file{gregorian@/-init@/.ly}. Ce fichier définit les commandes
+@file{gregorian-init.ly}. Ce fichier définit les commandes
@code{\divisioMinima}, @code{\divisioMaior}, @code{\divisioMaxima} et
@code{\finalis}. Certaines éditions utilisent @emph{virgula} ou
@emph{caesura} en lieu et place de @emph{divisio minima}@tie{}; c'est
-pourquoi @file{gregorian@/-init@/.ly} définit aussi @code{\virgula} et
+pourquoi @file{gregorian-init.ly} définit aussi @code{\virgula} et
@code{\caesura}.
@lilypond[quote,ragged-right]
opterons probablement pour le style en suffixe (postfix)
@code{note\[@tie{}@dots{}@tie{}note\]}.
En attendant, vous pouvez inclure le fichier
-@file{gregorian@/-init@/.ly}, qui fournit une fonction Scheme
+@file{gregorian-init.ly}, qui fournit une fonction Scheme
@example
\ligature @var{expr_musicale}
@end example
comme infrastructure. Modifier les choix de mise en page revient à
pénétrer dans les entrailles du programme, et de ce fait requiert
l'emploi du Scheme. Les fragments de Scheme, dans un fichier
-@file{@/.ly}, sont introduits par le caractère @emph{hash}, (@code{#},
+@file{.ly}, sont introduits par le caractère @emph{hash}, (@code{#},
improprement surnommé @qq{dièse}).
@footnote{Le @rextend{Tutoriel Scheme} fournit quelques notions de
base pour saisir des nombres, des listes, des chaînes de caractères ou
@rlearning{Contextes et graveurs}.
Fichiers d'initialisation :
-@file{ly/@/engraver@/-init@/.ly},
-@file{ly/@/performer@/-init@/.ly}.
+@file{ly/engraver-init.ly},
+@file{ly/performer-init.ly}.
Morceaux choisis :
@rlsr{Contexts and engravers}.
@code{Fingering}, ce qui ne nous avance pas à grand chose, on peut aller
explorer son âme même, dans les fichiers source de LilyPond (voir
@rlearning{Autres sources de documentation}), en l'occurence le fichier
-@file{scm/@/define@/-grobs@/.scm}@tie{}:
+@file{scm/define-grobs.scm}@tie{}:
@example
(Fingering
puis comprennent une ou plusieurs majuscules (de style @code{TotoTata}),
contiennent les réglages @qq{par défaut} pour les objets graphiques.
Ces réglages sont sous forme de liste Scheme@tie{}; on peut les
-consulter dans le fichier @file{scm/@/define@/-grobs@/.scm}.
+consulter dans le fichier @file{scm/define-grobs.scm}.
Les descriptions d'éléments doivent être modifiées avec la commande
@code{\override}.
(sequential-music-to-chord-exceptions chExceptionMusic #t)
@end example
Pour qu'elles soient effectives, on ajoute ces exceptions aux exceptions
-par défaut définies dans @file{ly/@/chord@/-modifier@/-init@/.ly}@tie{}:
+par défaut définies dans @file{ly/chord-modifier-init.ly}@tie{}:
@example
(append
(sequential-music-to-chord-exceptions chExceptionMusic #t)
@rlsrnamed{Chords,Accords}.
Fichiers internes :
-@file{scm/@/chords@/-ignatzek@/.scm},
-@file{scm/@/chord@/-entry@/.scm}.
+@file{scm/chords-ignatzek.scm},
+@file{scm/chord-entry.scm}.
@knownissues
@end lilypond
Même si LilyPond place automatiquement ces symboles, selon les règles
-contenues dans le fichier @code{scm/@/script@/.scm}, il est possible de
+contenues dans le fichier @file{scm/script.scm}, il est possible de
l'obliger à les positionner au-dessus ou en-dessous de la note, comme
indiqué au chapitre @ref{Direction et positionnement}.
@ref{Trilles}.
Fichiers installés :
-@code{scm/@/script@/.scm}.
+@file{scm/script.scm}.
Morceaux choisis :
@rlsrnamed{Expressive marks,Signes d'interprétation}.
D'autres accordages prédéfinis sont disponibles@tie{}:
@code{guitar-open-g-tuning}, @code{mandolin-tuning} et
@code{banjo-open-g-tuning}. Les accordages prédéfinis sont répertoriés
-dans le fichier @file{scm/@/output@/-lib@/.scm}.
+dans le fichier @file{scm/output-lib.scm}.
L'accordage est constitué par une liste Scheme des hauteurs de notes
correspondant aux cordes à vide, une note pour chaque corde, classée par
@seealso
Fichiers d'initialisation :
-@file{scm/@/output@/-lib@/.scm}.
+@file{scm/output-lib.scm}.
Morceaux choisis :
@rlsrnamed{Fretted strings,Cordes frettées}.
@end lilypond
Les diagrammes d'accord définis par défaut sont dans le fichier
-@file{predefined@/-guitar@/-fretboards@/.ly}. Les diagrammes d'accord sont
+@file{predefined-guitar-fretboards.ly}. Les diagrammes d'accord sont
stockés en fonction des notes de l'accord ainsi que de l'accordage
(@code{stringTunings}) utilisé.
-@file{predefined@/-guitar@/-fretboards@/.ly} contient les diagrammes d'accord
+@file{predefined-guitar-fretboards.ly} contient les diagrammes d'accord
prédéfinis uniquement pour l'accordage standard (@code{guitar-tuning}).
Des diagrammes d'accords peuvent être définis pour d'autres instruments
ou d'autres accordages en suivant les exemples du fichier
-@file{predefined@/-guitar@/-fretboards@/.ly}.
+@file{predefined-guitar-fretboards.ly}.
Les diagrammes de fret propres au ukulele se trouvent dans le fichier
-@file{predefined@/-ukulele@/-fretboards@/.ly}.
+@file{predefined-ukulele-fretboards.ly}.
@lilypond[verbatim, ragged-right, quote]
\include "predefined-ukulele-fretboards.ly"
@ref{Tablatures prédéfinies}.
Fichiers d'initialisation :
-@file{ly/@/predefined@/-guitar@/-fretboards@/.ly},
-@file{ly/@/predefined@/-guitar@/-ninth@/-fretboards@/.ly}.
+@file{ly/predefined-guitar-fretboards.ly},
+@file{ly/predefined-guitar-ninth-fretboards.ly}.
Morceaux choisis :
@rlsrnamed{Fretted strings,Cordes frettées}.
@rlsrnamed{Fretted strings,Cordes frettées}.
Les accordages prédéfinis du banjo sont contenus dans le fichier
-@file{scm/@/output@/-lib@/.scm}.
+@file{scm/output-lib.scm}.
Ces noms sont inventoriés dans le fichier d'initialisation
-@file{ly/@/drumpitch@/-init@/.ly}.
+@file{ly/drumpitch-init.ly}.
@c TODO: properly document this.
@seealso
-Fichier d'initialisation : @file{ly/@/drumpitch@/-init@/.ly}.
+Fichier d'initialisation : @file{ly/drumpitch-init.ly}.
Référence du programme : @rinternals{DrumStaff}, @rinternals{DrumVoice}.
@code{\time} règlera aussi les valeurs par défaut des propriétés
@code{baseMoment}, @code{beatStructure} et @code{beamExceptions}.
Les valeurs prédéterminées par défaut de ces différentes propriétés sont
-inscrites dans le fichier @file{scm/@/time@/-signature@/-settings@/.scm}. Vous
+inscrites dans le fichier @file{scm/time-signature-settings.scm}. Vous
pouvez les modifier de la manière suivante@tie{}:
@lilypond[quote,verbatim]
@ref{Définition des règles de ligature automatique}.
Fichiers d'initialisation :
-@file{scm/@/auto@/-beam@/.scm}.
+@file{scm/auto-beam.scm}.
Morceaux choisis :
@rlsrnamed{Rhythms,Rythme}.
la métrique telle que définie par la commande @code{\time}. Elle est
par défaut égale à un sur le dénominateur de la métrique. Les
exceptions à cette règle par défaut sont répertoriées dans le fichier
-@file{scm/@/time@/-signature@/-settings@/.scm}. Pour savoir comment
+@file{scm/time-signature-settings.scm}. Pour savoir comment
jouer avec la valeur de @code{baseMoment} selon la métrique, reportez
vous au chapitre @ref{Métrique}.
Les règles de ligature et de subdivision spécifiques sont enregistrées
dans la propriété @code{beamExceptions}. Ses valeurs par défaut,
rangées par métrique et type de règle, sont répertoriées dans le
-fichier @file{scm/@/time@/-signature@/-settings@/.scm}.
+fichier @file{scm/time-signature-settings.scm}.
Les règles spécifiques autres que celles concernant la terminaison des
ligatures sont gérées par la propriété @code{beamExceptions}.
Les règles de ligature automatique par défaut sont répertoriées, par
métrique, dans le fichier
-@file{scm/@/time@/-signature@/-settings@/.scm}. Les manières de déroger
+@file{scm/time-signature-settings.scm}. Les manières de déroger
à ce comportement sosnt abordées au chapitre @ref{Métrique}.
@i{@strong{Principes de la ligature automatique}}
Le type de ligature correspond à la durée la plus courte dans le groupe.
Pour information, les règles de ligature par défaut sont répertoriées
-dans le fichier @file{scm/@/time@/-signature@/-settings@/.scm}.
+dans le fichier @file{scm/time-signature-settings.scm}.
@snippets
@seealso
Fichiers d'initialisation :
-@file{scm/@/beam-@/settings@/.scm}.
+@file{scm/beam-settings.scm}.
Morceaux choisis :
@rlsrnamed{Rhythms,Rythme}.
c1
@end lilypond
-Le fichier @file{scm/@/translation@/-functions@/.scm} comporte les
+Le fichier @file{scm/translation-functions.scm} comporte les
définitions de @code{format-mark-numbers} (comportement par défaut),
@code{format-mark-box-numbers}, @code{format-mark-letters} et
@code{format-mark-box-letters}. Vous pouvez vous en inspirer pour
@ref{Alignement des objets}.
Fichiers d'initialisation :
-@file{scm/@/translation@/-functions@/.scm} contient les définitions de
+@file{scm/translation-functions.scm} contient les définitions de
@code{format-mark-numbers} et @code{format-mark-letters}. Elles seront
source d'inspiration pour d'autres fonctions de formatage.
@rglosnamed{appoggiatura,appogiature}.
Fichiers d'initialisation :
-@file{ly/@/grace@/-init@/.ly}.
+@file{ly/grace-init.ly}.
Morceaux choisis :
@rlsrnamed{Rhythms,Rythme}.
@ref{Articulations et ornements}.
Fichiers d'initialisation :
-@file{ly/@/chord@/-repetition@/-init@/.ly}.
+@file{ly/chord-repetition-init.ly}.
@node Expressions simultanées
Les formats @code{a4}, @code{letter}, @code{legal} et @code{11x17} (ou
tabloïde) sont couramment utilisés pour les éditions musicales. Bien
d'autres formats sont disponibles et sont répertoriés à la rubrique
-@code{paper-alist} du fichier d'initialisation @file{scm/@/paper@/.scm}.
+@code{paper-alist} du fichier d'initialisation @file{scm/paper.scm}.
@c TODO add a new appendix for paper sizes (auto-generated) -pm
@warning{Par défaut, le papier est au format A4 (codé @code{a4}).}
Rien ne vous empèche d'ajouter un format de papier inhabituel à la
-rubrique @code{paper-alist} du fichier @file{scm/@/paper@/.scm}. Sachez
+rubrique @code{paper-alist} du fichier @file{scm/paper.scm}. Sachez
cependant que celui-ci est écrasé à chaque mise à jour de LilyPond.
@cindex orientation
@seealso
Fichiers d'initialisation :
-@file{scm/@/paper@/.scm}.
+@file{scm/paper.scm}.
Morceaux choisis :
@rlsrnamed{Spacing,Espacements}.
papier.
Les valeurs par défaut des marges, inscrites dans le fichier
-d'initialisation @file{ly/@/paper@/-defaults@/-init@/.ly}, s'appliquent
+d'initialisation @file{ly/paper-defaults-init.ly}, s'appliquent
au format par défaut (A4 sauf mention spécifique) et sont étalonnées
pour les autres formats.
@end example
Les valeurs par défaut de ces variables sont répertoriés dans le
-fichier @file{ly/@/paper@/-defaults@/-init@/.ly}.
+fichier @file{ly/paper-defaults-init.ly}.
@subsubheading Variables de dimensionnement fluctuant du bloc @code{\paper}
L'entête et le pied de page sont créés respectivement par les fonctions
@code{make-header} et @code{make-footer}, toutes deux définies dans le
bloc @code{\paper}. Leur implémentation par défaut se trouve dans les
-fichiers d'initialisation @file{ly/@/paper@/-defaults@/-init@/.ly} et
-@file{ly/@/titling@/-init@/.ly}.
+fichiers d'initialisation @file{ly/paper-defaults-init.ly} et
+@file{ly/titling-init.ly}.
La mise en forme de la page est réalisée par les fonctions
@code{page-music-height} et @code{page-make-stencil}, toutes deux
Vous pouvez définir toutes ces valeurs -- en @code{mm}, @code{in},
@code{pt} ou @code{cm} -- en langage Scheme au sein du bloc
@code{\paper}. Celles contenues dans le fichier
-@file{paper@/-defaults@/.ly} sont en millimètres, c'est la raison pour
+@file{paper-defaults.ly} sont en millimètres, c'est la raison pour
laquelle la valeur de @code{2@tie{}cm} de ce qui suit doit être
précédée du signe multiplier.
@seealso
Fichiers d'initialisation :
-@file{ly/@/engraver@/-init@/.ly},
-@file{scm/@/define@/-grobs@/.scm}.
+@file{ly/engraver-init.ly},
+@file{scm/define-grobs.scm}.
Référence des propriétés internes :
@rinternals{Contexts},
@seealso
Fichiers d'initialisation :
-@file{scm/@/define@/-grobs@/.scm}.
+@file{scm/define-grobs.scm}.
Morceaux choisis :
@rlsrnamed{Spacing,Espacements}.
@seealso
Fichiers d'initialisation :
-@file{scm/@/define@/-grobs@/.scm}.
+@file{scm/define-grobs.scm}.
Morceaux choisis :
@rlsrnamed{Spacing,Espacements}.
@seealso
Fichiers d'initialisation :
-@file{ly/@/engraver@/-init@/.ly},
-@file{scm/@/define@/-grobs@/.scm}.
+@file{ly/engraver-init.ly},
+@file{scm/define-grobs.scm}.
Morceaux choisis :
@rlsrnamed{Spacing,Espacements}.
@rlsrnamed{Text,Texte}.
Fichiers d'initialisation :
-@file{scm/@/markup@/.scm}.
+@file{scm/markup.scm}.
@knownissues
@rinternals{TextScript}.
Fichiers d'initialisation :
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@node Alignement du texte
@rinternals{TextScript}.
Fichiers d'initialisation :
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@node Éléments graphiques dans du texte formaté
@rinternals{TextScript}.
Fichiers d'initialisation :
-@file{scm/@/define@/-markup@/-commands@/.scm},
-@file{scm/@/stencil@/.scm}.
+@file{scm/define-markup-commands.scm},
+@file{scm/stencil.scm}.
@node Notation musicale dans du texte formaté
@rinternals{TextScript}.
Fichiers d'initialisation :
-@file{scm/@/define@/-markup@/-commands@/.scm},
-@file{scm/@/fret@/-diagrams@/.scm},
-@file{scm/@/harp@/-pedals@/.scm}.
+@file{scm/define-markup-commands.scm},
+@file{scm/fret-diagrams.scm},
+@file{scm/harp-pedals.scm}.
@node Texte avec sauts de page
@rinternals{TextScript}.
Fichiers d'initialisation :
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@funindex \markuplines
@c A source file gets never installed...
@c Fichiers d'initialisation :
-@c @file{lily/@/font@/-config@/-scheme@/.cc}.
+@c @file{lily/font-config-scheme.cc}.
@node Choix des fontes par défaut
\grace @{ \small G32[ d G e] @}
@end example
-@file{bagpipe@/.ly} prend également en charge les définitions de hauteurs
+@file{bagpipe.ly} prend également en charge les définitions de hauteurs
pour la cornemuse@tie{}; vous n'avez donc pas à vous soucier d'employer
@code{\relative} ou @code{\transpose}.
@end lilypond
De nouveaux diagrammes sont réalisables, en suivant les directives
-contenues dans les fichiers @file{scm/@/define@/-woodwind@/-diagrams@/.scm} et
-@file{scm/@/display@/-woodwind@/-diagrams@/.scm}. Ceci requiert toutefois la
+contenues dans les fichiers @file{scm/define-woodwind-diagrams.scm} et
+@file{scm/display-woodwind-diagrams.scm}. Ceci requiert toutefois la
maîtrise du langage Scheme.
@seealso
Fichiers d'initialisation :
-@file{scm/@/define@/-woodwind@/-diagrams@/.scm},
-@file{scm/@/display@/-woodwind@/-diagrams@/.scm}.
+@file{scm/define-woodwind-diagrams.scm},
+@file{scm/display-woodwind-diagrams.scm}.
Morceaux choisis :
@rlsrnamed{Winds,Vents}.
pratiques de notation, il est possible d'utiliser les notes occidentales
(do, ré, mi@dots{}) auxquelles on ajoutera l'atlération spécifique à la
musique turque. Ces différentes altérations sont définies dans le
-fichier @file{makam@/.ly} -- reportez vous au chapitre
+fichier @file{makam.ly} -- reportez vous au chapitre
@rlearning{Autres sources de documentation} pour le localiser sur votre
système. Vous trouverez, dans le tableau suivant, le nom de ces
altérations, le suffixe à utiliser, ainsi que la fraction de ton entier
utilisé dans la notation arabe. Si le symbole particulier du
demi-bémol arabe doit absolument être utilisé, il est possible
de s'en approcher en faisant précéder la note par la commande
-@code{\dwn} définie dans le fichier @file{arabic@/.ly}.
+@code{\dwn} définie dans le fichier @file{arabic.ly}.
Cette méthode ne peut toutefois pas être utilisée pour modifier
l'aspect du demi-bémol dans l'armure.
@c elles ne doivent donc pas être traduites. -vv
Outre les armures mineures et majeures, les armures suivantes
-sont définies dans la fichier @file{arabic@/.ly}@tie{}: @notation{bayati},
+sont définies dans la fichier @file{arabic.ly}@tie{}: @notation{bayati},
@notation{rast}, @notation{sikah}, @notation{iraq} et @notation{kurd}.
Ces armatures définissent un petit nombre de groupes de maqams plutôt
que le grand nombre de maqams habituellement utilisés.
positions occidentales des notes sur la portée (do, ré, mi@dots{}) avec
des altérations spéciales qui haussent ou baissent les notes par
intervalles de 1/9, 4/9, 5/9 et 8/9 de ton. Ces altérations sont
-définies dans le dossier @file{makam@/.ly} (pour trouver l'emplacement de
+définies dans le dossier @file{makam.ly} (pour trouver l'emplacement de
ce dossier dans votre système, voir
@rlearning{Autres sources de documentation}). Une description plus
détaillée se trouve dans
texidocfr = "
Le « makam » est une forme de mélodie turque qui utilise des altérations
d'un neuvième de ton. Consultez le fichier d'initialisation
-@file{makam@/.ly} pour plus de détails sur les hauteurs et altérations
+@file{makam.ly} pour plus de détails sur les hauteurs et altérations
utilisées (voir le chapitre 4.6.3 - Autres sources d'information du
manuel d'initiation pour le localiser).
%% Translation of GIT committish: 217cd2b9de6e783f2a5c8a42be9c70a82195ad20
texidocfr = "
Les raccourcis sont répertoriés dans le fichier
-@file{ly/@/script@/-init@/.ly}, dans lequel on retrouve les variables
+@file{ly/script-init.ly}, dans lequel on retrouve les variables
@code{dashHat}, @code{dashPlus}, @code{dashDash}, @code{dashBar},
@code{dashLarger}, @code{dashDot}, et @code{dashUnderscore} ainsi que
leur valeur par défaut. Ces valeurs peuvent être modifiées selon vos
@code{stopGraceMusic}, @code{startAcciaccaturaMusic},
@code{stopAcciaccaturaMusic}, @code{startAppoggiaturaMusic}, et
@code{stopAppoggiaturaMusic} afin d'en personnaliser les effets. Pour
-plus de détails, voir le fichier @file{ly/@/grace@/-init@/.ly}.
+plus de détails, voir le fichier @file{ly/grace-init.ly}.
"
doctitlefr = "Redéfinition des réglages de mise en forme par défaut des notes d'ornement"
d'extraire des parties séparées.
Il vous faudra découper ce canevas en plusieurs fichiers séparés ; leur
-nom respectif est indiqué en commentaire : @file{piece@/.ly} comporte tout
-ce qui a trait à la musique, les autres fichiers -- @file{score@/.ly},
-@file{vn1@/.ly}, @file{vn2@/.ly}, @file{vla@/.ly}, et @file{vlc@/.ly} -- vous
+nom respectif est indiqué en commentaire : @file{piece.ly} comporte tout
+ce qui a trait à la musique, les autres fichiers -- @file{score.ly},
+@file{vn1@/.ly}, @file{vn2.ly}, @file{vla.ly}, et @file{vlc.ly} -- vous
permettront d'obtenir les parties selon le pupitre.
texidocfr = "
Le code suivant vous permettra d'obtenir une liste de toutes les
possibilités en matière de doigtés pour bois, tels qu'ils sont définis
-dans le fichier @file{scm/@/define@/-woodwind@/-diagrams@/.scm}. Cette liste
+dans le fichier @file{scm/define-woodwind-diagrams.scm}. Cette liste
sera produite en console et dans le fichier de journalisation, mais pas
sous forme de musique.
"
Afin que cette chaîne de traitement soit pleinement opérationnelle, il
faut configurer votre visionneur de PDF de façon à ce qu'il suive les
-liens grâce au script @file{lilypond@/-invoke@/-editor} fourni avec
+liens grâce au script @file{lilypond-invoke-editor} fourni avec
LilyPond.
Pour Xpdf, sous UNIX, vous devrez insérer la ligne suivante dans
-le fichier @file{xpdfrc} -- soit @file{/@/etc/@/xpdfrc}, soit dans votre
-répertoire personnel @file{@/.xpdfrc}.
+le fichier @file{xpdfrc} -- soit @file{/etc/xpdfrc}, soit dans votre
+répertoire personnel @file{.xpdfrc}.
@example
urlCommand "lilypond-invoke-editor %s"
@end example
-@file{lilypond@/-invoke@/-editor} est un petit programme assistant. Il
+@file{lilypond-invoke-editor} est un petit programme assistant. Il
se charge d'appeler un éditeur pour les identifants de ressource
(@emph{URI}) de type @code{textedit}, et un navigateur pour les autres.
Il teste en outre la variable d'environnement @code{EDITOR} pour les cas
@end example
@noindent
-dans le fichier @file{@/.ly}. Il peut alors être activé de manière
+dans le fichier @file{.ly}. Il peut alors être activé de manière
explicite grâce à
@example
@warning{Lorsqu'un fichier LilyPond est destiné à être redistribué,
pensez à désactiver le pointer-cliquer, de telle sorte que les chemins
d'accès et autres informations propres à votre système ne se retrouvent
-pas inclus dans le fichier @file{@/.pdf}.}
+pas inclus dans le fichier @file{.pdf}.}
@node LilyPond et les éditeurs de texte
@unnumberedsubsec Mode Emacs
@translationof Emacs mode
-Emacs dispose d'un @file{lilypond@/-mode} qui fournit l'autocomplétion
+Emacs dispose d'un @file{lilypond-mode} qui fournit l'autocomplétion
des mots-clés, l'indentation, les appariements spécifiques à LilyPond,
la coloration syntaxique, ainsi que des raccourcis pour compiler et
consulter les manuels de LilyPond en mode info. Si le
-@file{lilypond@/-mode} n'était pas installé sur votre système, procédez
+@file{lilypond-mode} n'était pas installé sur votre système, procédez
comme ci-dessous.
Le répertoire @file{elisp} inclus dans les sources contient aussi un
mode pour saisir la musique et lancer LilyPond. Faites @command{make
install} pour l'installer dans votre @var{elispdir}. Le fichier
-@file{lilypond@/-init@/.el} devrait trouver sa place dans
-@var{load-path}@file{/@/site@/-start@/.d/@/} ou bien ajouté à votre
-@file{@/~/@/@/.emacs} ou @file{@/~/@/@/.emacs@/.el}.
+@file{lilypond-init.el} devrait trouver sa place dans
+@var{load-path}@file{/site-start.d/} ou bien ajouté à votre
+@file{~/.emacs} ou @file{~/.emacs.el}.
En tant que simple utilisateur, vous pouvez toujours ajouter votre
-propre répertoire (par exemple @file{@/~/@/site@/-lisp/@/}) à votre
+propre répertoire (par exemple @file{~/site-lisp/}) à votre
@var{load-path} en ajoutant la ligne suivante -- modifiée en conséquence
--- à votre @file{@/~/@/@/.emacs}@tie{}:
+-- à votre @file{~/.emacs}@tie{}:
@c any reason we do not advise: (push "~/site-lisp" load-path)
@example
En ce qui concerne @uref{http://@/www@/.vim@/.org,Vim}, LilyPond fournit
tout le nécessaire pour gérer la coloration syntaxique et l'indentation.
Le mode spécifique à Vim doît être indiqué dans le fichier
-@file{@/$HOME/@/@/.vimrc}. Localisez ce fichier, ou créez-le, et
+@file{$HOME/.vimrc}. Localisez ce fichier, ou créez-le, et
ajoutez-y les trois lignes suivantes@tie{}:
@example
@noindent
Si LilyPond est installé dans un autre répertoire que
-@file{/@/usr/@/local/}, modifiez ce chemin en conséquence. Pour de plus
+@file{/usr/local/}, modifiez ce chemin en conséquence. Pour de plus
amples détails, consultez @rlearning{Autres sources de documentation}.
les durées spécifiées lorsque nécessaire.
Vous pouvez enregistrer un fichier MIDI grâce à un clavier
-électronique et ensuite le convertir en fichier @file{@/.ly}. Néanmoins
+électronique et ensuite le convertir en fichier @file{.ly}. Néanmoins
le rythme humain n'a pas une précision suffisante pour qu'une
conversion MIDI à ly ne se fasse sans surprise. En le couplant à une
quantisation (options @code{-s} et @code{-d}), @command{midi2ly} tente
@command{musicxml2ly} extrait, à partir d'un fichier MusicXML, les
notes, articulations, structure de la partition, paroles, etc.
-et les écrit dans un fichier @file{@/.ly}. Il se lance en ligne de
+et les écrit dans un fichier @file{.ly}. Il se lance en ligne de
commande.
Pour le lancer en ligne de commande, procédez ainsi :
@item -o,--output=@var{file}
Générer le résultat dans le fichier @var{fichier}. S'il n'est pas
-déterminé, ce sera @var{fichier-xml}@file{@/.ly}@tie{}; @file{-}
+déterminé, ce sera @var{fichier-xml}@file{.ly}@tie{}; @file{-}
produira le résultat sur la sortie standard (@var{stdout}).
@item -r,--relative
\lilypondfile[quote,noindent]{screech-boink.ly}
-(Si besoin, remplacez @file{screech@/-boink@/.ly} par
-n'importe quel fichier @file{@/.ly} qui se trouve dans
+(Si besoin, remplacez @file{screech-boink.ly} par
+n'importe quel fichier @file{.ly} qui se trouve dans
le même répertoire que le présent fichier.)
\end{document}
@subheading Traitement
-Enregistrez ces lignes dans un fichier nommé @file{lilybook@/.lytex} puis,
+Enregistrez ces lignes dans un fichier nommé @file{lilybook.lytex} puis,
dans un terminal, lancez
@c keep space after @version{} so TeX doesn't choke
d'afficher la version de LilyPond utilisée.
Le traitement du fichier source par @command{lilypond-book} génère un
-fichier Texinfo (extension @file{@/.itexi}) qui contiendra les balises
+fichier Texinfo (extension @file{.itexi}) qui contiendra les balises
@code{@@image} pour les formats HTML, Info ou imprimable. Les images
générées par @command{lilypond-book} sont au format EPS et PDF en vue
d'une impression, et au format PNG pour leur utilisation en HTML ou
paragraphes suivants. Les balises sont déterminées de manière à ce que
les éditeurs DocBook prennent en charge du mieux possible leur contenu.
Les fichiers DocBook destinés à un traitement par
-@command{lilypond-book} doivent avoir une extension @file{@/.lyxml}.
+@command{lilypond-book} doivent avoir une extension @file{.lyxml}.
@subheading Inclusion d'un fichier LilyPond
Il s'agit en fait du cas le plus simple. Le fichier à inclure doit
-avoir une extension @file{@/.ly} et sera inséré comme n'importe quel
+avoir une extension @file{.ly} et sera inséré comme n'importe quel
@code{imageobject}, en respectant la structure suivante@tie{}:
@example
@subheading Génération du document DocBook
-@command{lilypond-book} génère, à partir d'un fichier @file{@/.lyxml}, un
-document DocBook tout à fait valide -- extension @file{@/.xml} -- que vous
+@command{lilypond-book} génère, à partir d'un fichier @file{.lyxml}, un
+document DocBook tout à fait valide -- extension @file{.xml} -- que vous
pourrez ensuite traiter avec votre application habituelle. Dans le cas
de @uref{http://@/dblatex@/.sourceforge@/.net@/,dblatex}, vous
obtiendrez alors automatiquement un fichier PDF. Les feuilles de style
@item texidoc
Option disponible uniquement pour Texinfo.@*
-Dès lors qu'un fichier @code{toto@/.ly} contient dans sa section
+Dès lors qu'un fichier @file{toto.ly} contient dans sa section
@code{\header} la variable @code{texidoc}, l'appel de @command{lilypond}
avec l'option @option{--header=@/texidoc} créera le fichier
-@code{toto@/.texidoc}. Par ailleurs, c'est le contenu de ce
-@code{toto@/.texidoc} qui sera ensuite recopié par
+@file{toto.texidoc}. Par ailleurs, c'est le contenu de ce
+@file{toto.texidoc} qui sera ensuite recopié par
@command{lilypond-book} en préambule de l'extrait de partition.
-Prenons par exemple le fichier @file{toto@/.ly} dont le contenu est
+Prenons par exemple le fichier @file{toto.ly} dont le contenu est
@example
\header @{
@end example
@noindent
-et quelque part dans notre document Texinfo @file{test@/.texinfo}
+et quelque part dans notre document Texinfo @file{test.texinfo}
@example
@@lilypondfile[texidoc]@{toto.ly@}
étrangère. En effet, s'il est spécifié dans le document Texinfo une
clause @code{@@documentlanguage@tie{}@var{LANGUE}}, la présence d'une
variable @code{texidoc@var{LANGUE}} dans l'entête du fichier
-@file{foo@/.ly} entraînera la reproduction -- par l'appel
+@file{foo.ly} entraînera la reproduction -- par l'appel
@code{lilypond}@tie{}@option{--header=@/texidoc@var{LANGUE}} -- du
-contenu de @file{toto@/.texidoc@var{LANGUE}} en lieu et place de celui de
-@file{toto@/.texidoc}.
+contenu de @file{toto.texidoc@var{LANGUE}} en lieu et place de celui de
+@file{toto.texidoc}.
@item lilyquote
Option disponible uniquement pour Texinfo.@*
@item doctitle
Option disponible uniquement pour Texinfo.@*
Cette option fonctionne selon le même principe que l'option
-@code{texidoc}@tie{}: lorsqu'un fichier @file{toto@/.ly} contient dans
+@code{texidoc}@tie{}: lorsqu'un fichier @file{toto.ly} contient dans
son @code{\header} une variable @code{doctitle} et que @code{lilypond}
est appelé avec l'option @code{doctitle}, le contenu de cette variable
-- une simple ligne de @var{texte} -- sera recopié dans un fichier
-@file{toto@/.doctitle} puis inséré dans le document Texinfo sous la
+@file{toto.doctitle} puis inséré dans le document Texinfo sous la
forme @code{@@lydoctitle@tie{}@var{texte}}. @code{@@lydoctitle} doit
faire l'objet d'une macro, définie dans le document Texinfo.
@translationof Invoking lilypond-book
@command{lilypond-book} produit un fichier qui aura, selon le format de
-sortie spécifié, l'extension @file{@/.tex}, @file{@/.texi}, @file{@/.html} ou
-@file{@/.xml}. Les fichiers @file{@/.tex}, @file{@/.texi} et @file{@/.xml}
+sortie spécifié, l'extension @file{.tex}, @file{.texi}, @file{.html} ou
+@file{.xml}. Les fichiers @file{.tex}, @file{.texi} et @file{.xml}
nécessitent un traitement complémentaire.
@end example
@noindent
-Le fichier @file{@/.dvi} généré lors de ce traitement ne contient aucune
+Le fichier @file{.dvi} généré lors de ce traitement ne contient aucune
tête de note, ce qui est tout à fait normal@tie{}; elles seront incluses
-lors de la génération du @file{@/.ps} puis dans le @file{@/.pdf}.
+lors de la génération du @file{.ps} puis dans le @file{.pdf}.
La commande @command{dvips} peut déclencher certains messages concernant
des fontes, que vous pouvez ignorer sans scrupule.@*
@end example
Lorsque le fichier est fourni sans extension, LilyPond présume qu'il
-s'agit de @file{@/.ly}. Pour interpréter directement l'entrée standard
+s'agit de @file{.ly}. Pour interpréter directement l'entrée standard
(@emph{stdin}), fournissez un tiret (@code{-}) en lieu et place de
@var{fichier}.
-Le traitement de @file{monfichier@/.ly} produira @file{monfichier@/.ps} et
-@file{monfichier@/.pdf}. Vous pouvez spécifier plusieurs fichiers à la
+Le traitement de @file{monfichier.ly} produira @file{monfichier.ps} et
+@file{monfichier.pdf}. Vous pouvez spécifier plusieurs fichiers à la
fois@tie{}; ils seront traités indépendamment les uns des
autres.@footnote{Le statut de GUILE n'étant pas réinitialisé après
-traitement d'un fichier @file{@/.ly}, veillez à ne pas modifier les
+traitement d'un fichier @file{.ly}, veillez à ne pas modifier les
réglages par défaut du système à partir d'assertions en Scheme.}
-Lorsque @file{monfichier@/.ly} contient plus d'une section @code{\book},
+Lorsque @file{monfichier.ly} contient plus d'une section @code{\book},
les fichiers produits -- à partir du deuxième -- seront numérotés. Par
ailleurs, la valeur affectée à @code{output-suffix} sera insérée entre la
racine et le numéro. Par exemple, un fichier @var{racine} qui
@end example
@noindent
-fournira grâce à LilyPond @file{@var{racine}@/-violon@/.pdf} et
-@file{@var{racine}@/-cello@/-1@/.pdf}.
+fournira grâce à LilyPond @file{@var{racine}-violon.pdf} et
+@file{@var{racine}-cello-1.pdf}.
@unnumberedsubsubsec Commandes standard de l'interpréteur
@item -e,--evaluate=@var{expr}
Évalue l'expression Scheme @var{expr} avant d'analyser tout fichier
-@file{@/.ly}. Lorsque vous spécifiez l'option @code{-e} à plusieurs
+@file{.ly}. Lorsque vous spécifiez l'option @code{-e} à plusieurs
reprises, l'évaluation sera faite en séquence.
Dans la mesure où l'expression est évaluée par le module
@end example
@noindent
-en tête de votre fichier @file{@/.ly}.
+en tête de votre fichier @file{.ly}.
@item -f,--format=@var{format}
@cindex safe, ligne de commande
@item safe
-Ne pas avoir une confiance aveugle dans le code @file{@/.ly}.
+Ne pas avoir une confiance aveugle dans le code @file{.ly}.
Lorsque LilyPond est accessible au travers d'un serveur web, il est
@strong{impératif} d'utiliser les options @code{--safe} ou
L'option @code{-dsafe} forcera l'évaluation, au fil de l'eau et par un
module sécurisé, des expressions Scheme contenues dans le fichier
-source. Ce module sécuritaire, dérivé du module GUILE @file{safe@/-r5rs},
+source. Ce module sécuritaire, dérivé du module GUILE @file{safe-r5rs},
ajoute un certain nombre de fonctions -- listées dans
-@file{scm/@/safe@/-lily@/.scm} -- à l'API de LilyPond.
+@file{scm/safe-lily.scm} -- à l'API de LilyPond.
De plus, le mode @emph{safe} ne permet ni l'utilisation de directives
@code{\include} ni le recours aux obliques inversées (@emph{backslash})
@item -i,--init=@var{fichier}
-Définit @var{fichier} (par défaut @file{init@/.ly}) en tant que fichier
+Définit @var{fichier} (par défaut @file{init.ly}) en tant que fichier
d'initialisation.
Détermine le nom par défaut du fichier résultant à @var{FICHIER}@tie{};
lorsque l'argument @var{RÉP} correspond à un répertoire déjà existant,
c'est là que les fichiers résultants seront déposés. Le suffixe adéquat
-sera ajouté (p.ex. @file{@/.pdf} pour du pdf) dans tous les cas.
+sera ajouté (p.ex. @file{.pdf} pour du pdf) dans tous les cas.
@cindex PostScript output
@translationof Apparent error in ../ly/init.ly
Certains messages d'erreur relatifs à une erreur de syntaxe dans le
-fichier @file{@/.@/./@/ly/@/init@/.ly} peuvent survenir lorsque le fichier est mal
+fichier @file{../ly/init.ly} peuvent survenir lorsque le fichier est mal
formaté. Cela se produit notamment lors d'un défaut de parité de
bornages ou de guillemets.
faut -- les dépendances entre certains fichiers, les instructions
successives à traiter par le système -- pour aboutir au fichier que
vous désirez obtenir. Il pourrait par exemple contenir tout ce qu'il
-faut pour produire @file{ballade@/.pdf} et @file{ballade@/.midi} à partir de
-@file{ballade@/.ly} en lançant LilyPond.
+faut pour produire @file{ballade.pdf} et @file{ballade.midi} à partir de
+@file{ballade.ly} en lançant LilyPond.
La création d'un @code{Makefile} peut se révéler pertinente pour
certains projets, que ce soit par simple goût personnel ou bien par
`-- symphonieDefs.ily
@end example
-Les fichiers @file{@/.ly} des répertoires @code{Partitions} et
-@code{Pupitres} récupèreront la notation des fichiers @file{@/.ily}
+Les fichiers @file{.ly} des répertoires @code{Partitions} et
+@code{Pupitres} récupèreront la notation des fichiers @file{.ily}
contenus dans le répertoire @code{Notes}@tie{}:
@example
@end example
@noindent
-dans le dossier où il se trouve. @file{monfichier@/.ly} sera mis à jour,
-et vous aurez une copie de l'original@tie{}: @file{monfichier@/.ly~}.
+dans le dossier où il se trouve. @file{monfichier.ly} sera mis à jour,
+et vous aurez une copie de l'original@tie{}: @file{monfichier.ly~}.
@warning{@command{convert-ly} effectuera les conversions jusqu'aux
modifications de syntaxe les plus récentes qu'il contient. C'est la
Lorsque la commande @command{convert-ly -e *.ly} échoue parce que
son expansion dépasse la taille maximale d'une ligne, vous pouvez lancer
@command{convert-ly} dans une boucle. L'exemple suivant permet, sous
-Unix, de convertir tous les fichiers @file{@/.ly} d'un même
+Unix, de convertir tous les fichiers @file{.ly} d'un même
répertoire@tie{}:
@example
you have a single definition (such as @code{\dolce}) for all your
input files (see @ref{Style sheets}), then if the syntax changes, you
only need to update your single @code{\dolce} definition,
-instead of making changes throughout every @file{@/.ly} file.
+instead of making changes throughout every @file{.ly} file.
@node Partitúra és szólamkották
both the part and the full score.
It is convenient to define the notes in a special file. For example,
-suppose that the file @file{horn@/-music@/.ly} contains the following part
+suppose that the file @file{horn-music.ly} contains the following part
of a horn/@/bassoon duo
@example
@end example
@noindent
-substitutes the contents of @file{horn@/-music@/.ly} at this position in
+substitutes the contents of @file{horn-music.ly} at this position in
the file, so @code{hornNotes} is defined afterwards. The command
@code{\transpose f@tie{}c'} indicates that the argument, being
@code{\hornNotes}, should be transposed by a fifth upwards. Sounding
The score is made by combining all of the music together. Assuming
that the other voice is in @code{bassoonNotes} in the file
-@file{bassoon@/-music@/.ly}, a score is made with
+@file{bassoon-music.ly}, a score is made with
@example
\include "bassoon-music.ly"
@translationof MacOS X
Ha elindítjuk a @command{LilyPond.app} alkalmazást, egy példaállományt látunk
-megnyitva. Mentsük el (pl. @file{test@/.ly} néven az Asztalra), majd a
+megnyitva. Mentsük el (pl. @file{test.ly} néven az Asztalra), majd a
@w{@qq{Compile > Typeset File}} (@q{Fordítás > Kotta szedése}) menüpont segítségével fordítsuk le.
Ezután az eredményül kapott PDF fájl a képernyőn látható.
Windows alatt az Asztalon levő LilyPond ikonra duplán kattintva indíthatjuk el
a LilyPondot, mely először egy példafájlt nyit meg egy egyszerű
-szövegszerkesztőben. Mentsük el (pl. @file{test@/.ly} néven az Asztalra),
+szövegszerkesztőben. Mentsük el (pl. @file{test.ly} néven az Asztalra),
majd kattintsunk rá duplán a lefordításához (az ikonja egy hangjegyre
-hasonlít). Pár másodperc múlva létrejön egy @file{test@/.pdf} nevű fájl az
+hasonlít). Pár másodperc múlva létrejön egy @file{test.pdf} nevű fájl az
Asztalon. Ha erre duplán kattintunk, megtekinthetjük a nyomtatható kottát.
-A @file{test@/.ly} fordításának másik módja, hogy egérrel ráhúzzuk a LilyPond
+A @file{test.ly} fordításának másik módja, hogy egérrel ráhúzzuk a LilyPond
parancsikonjára.
-Egy létező @file{@/.ly} fájl szerkesztéséhez kattintsunk rá jobb gombbal, és
+Egy létező @file{.ly} fájl szerkesztéséhez kattintsunk rá jobb gombbal, és
válasszuk az @qq{Edit source} (@q{Forrás szerkesztése}) menüpontot. Új kotta
írásához vagy a szerkesztőt futtassuk a fent leírt módon, majd válasszuk ki a
@qq{File > New} (@q{Fájl > Új}) parancsot, vagy jobb gombbal
kattintsunk az Asztalra, válasszuk az @q{Új > Szöveges dokumentum}
menüpontot, nevezzük át a fájlt a kívánt névre, és változtassuk meg a
-kiterjesztését @file{@/.ly}-re. Ezután ugyanúgy szerkeszthetjük és
+kiterjesztését @file{.ly}-re. Ezután ugyanúgy szerkeszthetjük és
feldolgozhatjuk, ahogy eddig is tettük.
Ha duplán kattintunk egy @code{.ly} fájlra, nem csak egy PDF-et kapunk, hanem
@subsection Parancssor
@translationof Command-line
-Hozzunk létre egy fájlt @file{test@/.ly} néven, és írjuk bele a következőket:
+Hozzunk létre egy fájlt @file{test.ly} néven, és írjuk bele a következőket:
@example
@{
@}
@end example
-A @file{test@/.ly} fájl feldolgozásához adjuk ki az alábbi parancsot:
+A @file{test.ly} fájl feldolgozásához adjuk ki az alábbi parancsot:
@example
lilypond test.ly
lilypond [@var{opció}]@dots{} @var{fájlnév}@dots{}
@end example
-Ha nem adunk meg kiterjesztést, az alapértelmezett @file{@/.ly} kiterjesztéssel
+Ha nem adunk meg kiterjesztést, az alapértelmezett @file{.ly} kiterjesztéssel
próbálkozik a LilyPond. A szabványos bemenetről való beolvasáshoz a @code{-}
karakter használandó @var{fájlnév} gyanánt.
-Amikor a @file{fájlnév@/.ly} fájl feldolgozásra kerül, egy @file{fájlnév@/.ps}
-és egy @file{fájlnév@/.pdf} fájlt kapunk kimenetként. Több fájlt is
+Amikor a @file{fájlnév.ly} fájl feldolgozásra kerül, egy @file{fájlnév.ps}
+és egy @file{fájlnév.pdf} fájlt kapunk kimenetként. Több fájlt is
feldolgoztathatunk egyszerre; ezek egymástól függetlenül kerülnek
feldolgozásra. @footnote{A GUILE megelőző állapota nem áll vissza feldolgozás
után, így elővigyázatosnak kell lenni, hogy ne változtassuk meg a rendszer
alapbeállításait Scheme kódból.}
-Ha a @file{fájlnév@/.ly} több @code{\book} blokkot tartalmaz, minden blokkból
-egy-egy, számozott kimeneti fájl keletkezik, @file{fájlnév@/.pdf},
-@file{fájlnév@/-1@/.pdf}, @file{fájlnév@/-2@/.pdf} stb. formában. Az
+Ha a @file{fájlnév.ly} több @code{\book} blokkot tartalmaz, minden blokkból
+egy-egy, számozott kimeneti fájl keletkezik, @file{fájlnév.pdf},
+@file{fájlnév-1.pdf}, @file{fájlnév-2.pdf} stb. formában. Az
@code{output-suffix} változó értéke fog szerepelni a fájlnév és a számozás
között. Például a következő bemeneti fájlból:
@end example
@noindent
-egy @file{@var{fájlnév}@/-violino@/.pdf} és egy @file{@var{fájlnév}@/-cello@/-1@/.pdf}
+egy @file{@var{fájlnév}-violino.pdf} és egy @file{@var{fájlnév}-cello-1.pdf}
nevű fájl keletkezik.
@node A lilypond parancssori paraméterei
@table @code
@item -e,--evaluate=@var{kifejezés}
-A Scheme @var{kifejezés} kiértékelése az @file{@/.ly} fájlok beolvasása előtt.
+A Scheme @var{kifejezés} kiértékelése az @file{.ly} fájlok beolvasása előtt.
Több @code{-e} opció is megadható, ezek a megadott sorrendben lesznek
végrehajtva.
@end quotation
@code{-dsafe} módban a Scheme kifejezések kiértékelése egy speciális
-biztonsági modulban történik. Ez a modul a GUILE @file{safe@/-r5rs} modulján
+biztonsági modulban történik. Ez a modul a GUILE @file{safe-r5rs} modulján
alapul, de a LilyPond API néhány függvényének meghívását lehetővé teszi.
-Ezek a függvények a @file{scm/@/safe@/-lily@/.scm} fájlban találhatóak.
+Ezek a függvények a @file{scm/safe-lily.scm} fájlban találhatóak.
Ezenkívül biztonsági módban tilos az @code{\include} parancsok alkalmazása
és a \ karakter használata @TeX{} karakterláncokban.
@item -i,--init=@var{fájl}
Az inicializáló fájl beállítása a megadott @var{fájl}ra. (Alapértelmezett:
-@file{init@/.ly}.)
+@file{init.ly}.)
@item -o,--output=@var{fájl}
Kimeneti fájl megadása. A megfelelő kiterjesztés automatikusan hozzáfűzésre
@translationof Apparent error in ../ly/init.ly
Különféle rejtélyes hibaüzenetek jelenhetnek meg, melyek a
-@file{@/.@/./@/ly/@/init@/.ly} fájlban található szintaktikai hibára utalnak, ha a
+@file{../ly/init.ly} fájlban található szintaktikai hibára utalnak, ha a
forrásfájl nem jól formált, például nem egyezik a nyitó és csukó kapcsos
zárójelek vagy idézőjelek száma.
@warning{Ha a grafikus felület megfelel, ezeket az utasításokat nyugodtan
figyelmen kívül hagyhatod.}
-Írd be a könyvtáradban található @file{@/.profile} fájlba a következő sort:
+Írd be a könyvtáradban található @file{.profile} fájlba a következő sort:
@example
export PATH=/Applications/LilyPond.app/Contents/Resources/bin:$PATH
@uref{http://download.linuxaudio.org/lilypond/source/}
@end example
-Download the tarball to your @file{@/~/@/src/} directory, or some
+Download the tarball to your @file{~/src/} directory, or some
other appropriate place.
@warning{Be careful where you unpack the tarball! Any
subdirectories of the current folder named @file{lilypond/} or
-@file{lilypond@/-@var{x.y.z}/} (where @var{x.y.z} is the release
+@file{lilypond-@var{x.y.z}/} (where @var{x.y.z} is the release
number) will be overwritten if there is a name clash with the
tarball.}
@end example
This creates a subdirectory within the current directory called
-@file{lilypond@/-@var{x.y.z}/}. Once unpacked, the source files
+@file{lilypond-@var{x.y.z}/}. Once unpacked, the source files
occupy about 40 MB of disk space.
Windows users wanting to look at the source code may have to
@enumerate
@item generate a number of files and directories to aid
-configuration, such as @file{configure}, @file{README@/.txt}, etc.
+configuration, such as @file{configure}, @file{README.txt}, etc.
@item automatically run the @command{./configure} command.
@end enumerate
@quotation
By default, `@command{make@tie{}install}' will install all the
-files in @file{/@/usr/@/local/@/bin}, @file{/@/usr/@/local/@/lib} etc. You
-can specify an installation prefix other than @file{/@/usr/@/local}
+files in @file{/usr/local/bin}, @file{/usr/local/lib} etc. You
+can specify an installation prefix other than @file{/usr/local}
using `@code{--prefix}', for instance `@code{--prefix=$HOME}'.
@end quotation
-A typical installation prefix is @file{$HOME/@/usr}:
+A typical installation prefix is @file{$HOME/usr}:
@example
./configure --prefix=$HOME/usr
directory will be automatically created if necessary.
The location of the @command{lilypond} command installed by this
-process will be @file{@var{prefix}/@/bin/@/lilypond}; you may want to
-add @file{@var{prefix}/@/bin/} to your @code{$PATH} if it is not
+process will be @file{@var{prefix}/bin/lilypond}; you may want to
+add @file{@var{prefix}/bin/} to your @code{$PATH} if it is not
already included.
It is also possible to specify separate installation directories
configuration settings, you can use the
@code{--enable-config=@var{CONF}} option of @command{configure}.
You should use @code{make@tie{}conf=@var{CONF}} to generate the
-output in @file{out@/-@var{CONF}}. For example, suppose you want to
+output in @file{out-@var{CONF}}. For example, suppose you want to
build with and without profiling, then use the following for the
normal build
If a less verbose build output if desired, the variable
@code{QUIET_BUILD} may be set to @code{1} on @command{make}
-command line, or in @file{local@/.make} at top of the build tree.
+command line, or in @file{local.make} at top of the build tree.
@node Post-compilation options
@end example
If instead, your installation directory is not one that you can
-normally write to (such as the default @file{/@/usr/@/local/}, which
+normally write to (such as the default @file{/usr/local/}, which
typically is only writeable by the superuser), you will need to
temporarily become the superuser when running
@command{make@tie{}install}:
documentation is already built.
If @command{make@tie{}doc} succeeds, the HTML documentation tree
-is available in @file{out@/-www/@/offline@/-root/}, and can be browsed
+is available in @file{out-www/offline-root/}, and can be browsed
locally. Various portions of the documentation can be found by
-looking in @file{out/} and @file{out@/-www} subdirectories in other
+looking in @file{out/} and @file{out-www} subdirectories in other
places in the source tree, but these are only @emph{portions} of
the docs. Please do not complain about anything which is broken
in those places; the only complete set of documentation is in
-@file{out@/-www/@/offline@/-root/} from the top of the source tree.
+@file{out-www/offline-root/} from the top of the source tree.
Compilation of documentation in Info format with images can be
done separately by issuing:
several simultaneously running @command{lilypond-book} instances,
so the @option{-j} @command{make} option does not significantly
speed up the build process. To help speed it up, the makefile
-variable @option{CPU_COUNT} may be set in @file{local@/.make} or on
+variable @option{CPU_COUNT} may be set in @file{local.make} or on
the command line to the number of @code{.ly} files that LilyPond
should process simultaneously, e.g. on a bi-processor or dual core
machine:
@noindent
Note that to get the images in Info documentation, @code{install-doc}
target creates symbolic links to HTML and PDF installed documentation
-tree in @file{@var{prefix}/@/share/@/info}, in order to save disk space,
+tree in @file{@var{prefix}/share/info}, in order to save disk space,
whereas @code{install-info} copies images in
-@file{@var{prefix}/@/share/@/info} subdirectories.
+@file{@var{prefix}/share/info} subdirectories.
It is possible to build a documentation tree in
-@file{out@/-www/@/online@/-root/}, with special processing, so it can be
+@file{out-www/online-root/}, with special processing, so it can be
used on a website with content negotiation for automatic language
selection; this can be achieved by issuing
feature is added with a test file in input/regression, even the latest
development release of LilyPond will fail to build the docs.
-You may build the manual without building all the @file{input/@/@/*} stuff
+You may build the manual without building all the @file{input/*} stuff
(i.e. mostly regression tests): change directory, for example to
@file{Documentation/}, issue @code{make doc}, which will build
-documentation in a subdirectory @file{out@/-www} from the source files in
+documentation in a subdirectory @file{out-www} from the source files in
current directory. In this case, if you also want to browse the
documentation in its post-processed form, change back to top directory
and issue
export DYLD_FALLBACK_LIBRARY_PATH=/opt/local/lib:$DYLD_FALLBACK_LIBRARY_PATH
@end example
-Now you must edit the generated @file{config@/.make} file. Change
+Now you must edit the generated @file{config.make} file. Change
@example
FLEXLEXER_FILE = /usr/include/FlexLexer.h
Solaris7, ./configure
-@file{@/./@/configure} needs a POSIX compliant shell. On Solaris7,
-@file{/@/bin/@/sh} is not yet POSIX compliant, but @file{/@/bin/@/ksh} or bash
+@file{./configure} needs a POSIX compliant shell. On Solaris7,
+@file{/bin/sh} is not yet POSIX compliant, but @file{/bin/ksh} or bash
is. Run configure like
@example
@unnumberedsubsubsec FreeBSD
To use system fonts, dejaview must be installed. With the default
-port, the fonts are installed in @file{usr/@/X11R6/@/lib/@/X11/@/fonts/@/dejavu}.
+port, the fonts are installed in @file{usr/X11R6/lib/X11/fonts/dejavu}.
-Open the file @file{$LILYPONDBASE/@/usr/@/etc/@/fonts/@/local@/.conf} and add the
+Open the file @file{$LILYPONDBASE/usr/etc/fonts/local.conf} and add the
following line just after the @code{<fontconfig>} line. (Adjust as necessary
for your hierarchy.)
If you want to use lilypond's python libraries (either running
certain build scripts manually, or using them in other programs),
-set @code{PYTHONPATH} to @file{python/@/out} in your build
-directory, or @file{@/.@/.@/./@/usr/@/lib/@/lilypond/@/current/@/python} in the
+set @code{PYTHONPATH} to @file{python/out} in your build
+directory, or @file{.../usr/lib/lilypond/current/python} in the
installation directory structure.
@item
used extensively in the @code{WEBSITE_ONLY_BUILD} version of the
-website (made with @file{website@/.make}, used on lilypond.org)
+website (made with @file{website.make}, used on lilypond.org)
@item
not (?) used in the main docs?
@sourceimage{Learning_Macos_Save_menu,,,}
-Choose a name for your file, for example @file{test@/.ly}.
+Choose a name for your file, for example @file{test.ly}.
@sourceimage{Learning_Macos_Save_file_with_name,,,}
@sourceimage{Learning_Win7_Save_Menu,,,}
-Choose a name for your file, for example @file{test@/.ly}.
+Choose a name for your file, for example @file{test.ly}.
@sourceimage{Learning_Win7_Save_File_With_Name,,,}
@subsubheading Step 2b. Compile (with double-clicking)
-Or simply double-click the @file{test@/.ly}.
+Or simply double-click the @file{test.ly}.
@subsubheading Step 3. View output
-During the compilation of the @file{test@/.ly} file, a command window
+During the compilation of the @file{test.ly} file, a command window
will, very briefly open and then close. Three additional files will
have been created during this process.
@sourceimage{Learning_Win7_All_Files_Created,,,}
-The PDF file contains the engraved @file{test@/.ly} file.
+The PDF file contains the engraved @file{test.ly} file.
@sourceimage{Learning_Win7_Pdf_Output,,,}
@subsubheading Step 1. Create your @file{.ly} file
-Create a text file called @file{test@/.ly} and enter:
+Create a text file called @file{test.ly} and enter:
@c double \\ required because this is inside a macro!
@example
@subsubheading Step 2. Compile (with command-line)
-To process @file{test@/.ly}, type the following at the command prompt:
+To process @file{test.ly}, type the following at the command prompt:
@example
lilypond test.ly
@subsubheading Step 3. View output
-You may view or print the resulting @file{test@/.pdf}.
+You may view or print the resulting @file{test.pdf}.
@end macro
trattato come una partitura separata, ma saranno tutti combinati in
un unico file di output. Non è necessario il comando @code{\book}
-- ne verrà creato uno automaticamente. Tuttavia, se si desiderano
-file di output separati da un file @file{@/.ly}, allora si deve usare
+file di output separati da un file @file{.ly}, allora si deve usare
il comando @code{\book} per separare le diverse sezioni: ogni blocco
@code{\book} produrrà un file di output separato.
una definizione singola (come @code{\dolce}) per tutti i tuoi file
di input (vedi @ref{Style sheets}), poi se la sintassi cambia devi
soltanto aggiornare la tua singola definizione @code{\dolce},
-invece di dover modificare tutti i file @file{@/.ly}.
+invece di dover modificare tutti i file @file{.ly}.
@node Partiture e parti
sia la parte che l'intera partitura.
Conviene definire le note in un file speciale. Ad esempio,
-supponiamo che il file @file{horn@/-music@/.ly} contenga la seguente parte
+supponiamo che il file @file{horn-music.ly} contenga la seguente parte
di un duetto per corno e fagotto
@example
@end example
@noindent
-sostituisce i contenuti di @file{horn@/-music@/.ly} in quella posizione del
+sostituisce i contenuti di @file{horn-music.ly} in quella posizione del
file, quindi @code{hornNotes} è definito dopo. Il comando
@code{\transpose f@tie{}c'} indica che l'argomento, ovvero
@code{\hornNotes}, deve essere trasposto di una quinta ascendente. La tonalità
Lo spartito si forma combinando tutta la musica insieme. Assumendo che
l'altra voce si trovi in @code{bassoonNotes} nel file
-@file{bassoon@/-music@/.ly}, lo spartito sarà
+@file{bassoon-music.ly}, lo spartito sarà
@example
\include "bassoon-music.ly"
programmi nel caso tu abbia qualche problema a compilare un file.}
Cliccando due volte su @command{LilyPond.app}, il programma si aprirà con
-un file di esempio. Salvalo, ad esempio, come @file{test@/.ly} sulla tua
+un file di esempio. Salvalo, ad esempio, come @file{test.ly} sulla tua
Scrivania, e poi elaboralo col comando di menu
@w{@code{Compila > Crea File}}. Il file PDF risultante comparirà sullo schermo.
In Windows, se fai un doppio clic sull'icona di LilyPond presente sulla
Scrivania, si aprirà un editor di testo con un semplice file di esempio.
-Salvalo, ad esempio, come @file{test@/.ly} sulla tua Scrivania e poi clicca
+Salvalo, ad esempio, come @file{test.ly} sulla tua Scrivania e poi clicca
due volte sul file per elaborarlo (l'icona del file ha l'aspetto di una
-nota). Dopo alcuni secondi, comparirà un file @file{test@/.pdf} sulla
+nota). Dopo alcuni secondi, comparirà un file @file{test.pdf} sulla
tua scrivania. Clicca due volte su questo file PDF per vedere lo
-spartito prodotto. Un metodo alternativo per elaborare il file @file{test@/.ly}
+spartito prodotto. Un metodo alternativo per elaborare il file @file{test.ly}
è trascinarlo sull'icona di LilyPond col cursore del mouse.
-Per modificare un file @file{@/.ly} esistente, clicca col tasto destro del
+Per modificare un file @file{.ly} esistente, clicca col tasto destro del
mouse su di esso e seleziona @qq{Modifica il sorgente}. Per avere un file
nuovo da cui iniziare, lancia l'editor come descritto sopra e clicca su
@qq{Nuovo} nel menu @qq{File}, oppure clicca col tasto destro del mouse sulla
scrivania e seleziona @qq{Nuovo..Documento di testo}, cambia il nome in un nome
-di tua scelta e modifica l'estensione del file in @file{@/.ly}. Clicca due volte
+di tua scelta e modifica l'estensione del file in @file{.ly}. Clicca due volte
sull'icona per inserirci il tuo codice LilyPond, come in precedenza.
Il doppio clic del file non produce soltanto un file PDF, ma anche
-un file @file{@/.log} che contiene alcune informazioni sulle operazioni che
+un file @file{.log} che contiene alcune informazioni sulle operazioni che
LilyPond ha svolto sul file. Se ci dovesse essere un errore, controlla
questo file.
questi programmi in caso tu abbia problemi a compilare un file.}
-Crea un file di testo chiamato @file{test@/.ly} e scrivi:
+Crea un file di testo chiamato @file{test.ly} e scrivi:
@example
@{
@}
@end example
-Per elaborare @file{test@/.ly}, eseguire questo comando:
+Per elaborare @file{test.ly}, eseguire questo comando:
@example
lilypond test.ly
Converting to `test.pdf'...
@end example
-Puoi vedere o stampare il risultante @file{text@/.pdf}.
+Puoi vedere o stampare il risultante @file{text.pdf}.
@node Come scrivere i file di input
@item texidoc
(Only for Texinfo output.) If @command{lilypond} is called with the
@option{--header=@/texidoc} option, and the file to be processed is
-called @file{foo@/.ly}, it creates a file @file{foo@/.texidoc} if there
+called @file{foo.ly}, it creates a file @file{foo.texidoc} if there
is a @code{texidoc} field in the @code{\header}. The @code{texidoc}
option makes @command{lilypond-book} include such files, adding its
contents as a documentation block right before the music snippet.
-Assuming the file @file{foo@/.ly} contains
+Assuming the file @file{foo.ly} contains
@example
\header @{
distribution) are small @file{.ly} files which look exactly like this.
For localization purpose, if the Texinfo document contains
-@code{@@documentlanguage @var{LANG}} and @file{foo@/.ly} header
+@code{@@documentlanguage @var{LANG}} and @file{foo.ly} header
contains a @code{texidoc@var{LANG}} field, and if @command{lilypond}
is called with @option{--header=@/texidoc@var{LANG}}, then
-@file{foo@/.texidoc@var{LANG}} will be included instead of
-@file{foo@/.texidoc}.
+@file{foo.texidoc@var{LANG}} will be included instead of
+@file{foo.texidoc}.
@item lilyquote
(Only for Texinfo output.) This option is similar to quote, but only
(Only for Texinfo output.) This option works similarly to
@code{texidoc} option: if @command{lilypond} is called with the
@option{--header=@/doctitle} option, and the file to be processed is
-called @file{foo@/.ly} and contains a @code{doctitle} field in the
-@code{\header}, it creates a file @file{foo@/.doctitle}. When
-@code{doctitle} option is used, the contents of @file{foo@/.doctitle},
+called @file{foo.ly} and contains a @code{doctitle} field in the
+@code{\header}, it creates a file @file{foo.doctitle}. When
+@code{doctitle} option is used, the contents of @file{foo.doctitle},
which should be a single line of @var{text}, is inserted in the
Texinfo document as @code{@@lydoctitle @var{text}}.
@code{@@lydoctitle} should be a macro defined in the Texinfo document.
特別なセーフ モジュールの中で評価します。@c
このセーフ モジュールは GUILE @file{safe-r5rs} モジュールから派生したものですが、@c
LilyPond API 関数をいくつか追加しています。@c
-これらの関数は @file{scm/@/safe@/-lily@/.scm} でリスト アップされています。
+これらの関数は @file{scm/safe-lily.scm} でリスト アップされています。
さらに、セーフ モードは @code{\include} 指示を却下し、@c
@TeX{} 文字列の中にあるバックスラッシュを無効にします。
treated as a separate score, but they will be all combined into
a single output file. A @code{\book} command is not necessary
-- one will be implicitly created. However, if you would like
-separate output files from one @file{@/.ly} file then the
+separate output files from one @file{.ly} file then the
@code{\book} command should be used to separate the different
sections: each @code{\book} block will produce a
separate output file.
In this case, we want to modify the @code{stretchability}
sub-property only. Again, for the curious, you can find the
default values for the staff-staff-spacing property
-in file @file{scm/@/define@/-grobs@/.scm} by looking up the definition
+in file @file{scm/define-grobs.scm} by looking up the definition
of the @code{VerticalAxisGroup} grob. The value for
@code{stretchability} is taken from the definition of the
-@code{PianoStaff} context (in file @file{ly/@/engraver@/-init@/.ly})
+@code{PianoStaff} context (in file @file{ly/engraver-init.ly})
so that the values are identical.
@example
you have a single definition (such as @code{\dolce}) for all your
input files (see @ref{Style sheets}), then if the syntax changes, you
only need to update your single @code{\dolce} definition,
-instead of making changes throughout every @file{@/.ly} file.
+instead of making changes throughout every @file{.ly} file.
@node Scores and parts
both the part and the full score.
It is convenient to define the notes in a special file. For example,
-suppose that the file @file{horn@/-music@/.ly} contains the following part
+suppose that the file @file{horn-music.ly} contains the following part
of a horn/@/bassoon duo
@example
@end example
@noindent
-substitutes the contents of @file{horn@/-music@/.ly} at this position in
+substitutes the contents of @file{horn-music.ly} at this position in
the file, so @code{hornNotes} is defined afterwards. The command
@code{\transpose f@tie{}c'} indicates that the argument, being
@code{\hornNotes}, should be transposed by a fifth upwards. Sounding
The score is made by combining all of the music together. Assuming
that the other voice is in @code{bassoonNotes} in the file
-@file{bassoon@/-music@/.ly}, a score is made with
+@file{bassoon-music.ly}, a score is made with
@example
\include "bassoon-music.ly"
@end example
We will refer to this file using the @code{\include} command near
-the top of the music file. (The extension @file{@/.ily} is used to
+the top of the music file. (The extension @file{.ily} is used to
distinguish this included file, which is not meant to be compiled
on its own, from the main file.)
-Now let's modify our music (let's save this file as @file{music@/.ly}).
+Now let's modify our music (let's save this file as @file{music.ly}).
@c We have to do this awkward example/lilypond-non-verbatim
@c because we can't do the \include stuff in the manual.
note. And finally, my composition professor hates @q{C} time signatures,
so we'd better make that @q{4/4} instead.
-Don't change @file{music@/.ly}, though. Replace our @file{definitions@/.ily}
+Don't change @file{music.ly}, though. Replace our @file{definitions.ily}
with this:
@example
That looks nicer! But now suppose that I want to publish this
piece. My composition professor doesn't like @q{C} time
signatures, but I'm somewhat fond of them. Let's copy the
-current @file{definitions@/.ily} to @file{web@/-publish@/.ily} and
+current @file{definitions.ily} to @file{web-publish.ily} and
modify that. Since this music is aimed at producing a pdf which
will be displayed on the screen, we'll also increase the
overall size of the output.
Now in our music, I simply replace
@code{\include "definitions.ily"} with
@code{\include "web-publish.ily"}. Of course, we could make this
-even more convenient. We could make a @file{definitions@/.ily} file which
+even more convenient. We could make a @file{definitions.ily} file which
contains only the definitions of @code{mpdolce} and @code{inst}, a
-@file{web@/-publish@/.ily} file which contains only the @code{\layout}
-section listed above, and a @file{university@/.ily} file which
+@file{web-publish.ily} file which contains only the @code{\layout}
+section listed above, and a @file{university.ily} file which
contains only the tweaks to produce the output that my professor
-prefers. The top of @file{music@/.ly} would then look like this:
+prefers. The top of @file{music.ly} would then look like this:
@example
\include "definitions.ily"
Within this directory the two interesting subdirectories are
@itemize
-@item @file{ly/@/} - contains files in LilyPond format
-@item @file{scm/@/} - contains files in Scheme format
+@item @file{ly/} - contains files in LilyPond format
+@item @file{scm/} - contains files in Scheme format
@end itemize
-Let's begin by looking at some files in @file{ly/@/}.
-Open @file{ly/@/property@/-init@/.ly} in a text editor. The one
+Let's begin by looking at some files in @file{ly/}.
+Open @file{ly/property-init.ly} in a text editor. The one
you normally use for @code{.ly} files will be fine. This file
contains the definitions of all the standard LilyPond predefined
commands, such as @code{\stemUp} and @code{\slurDotted}. You will
head of your input file.
The following are the most useful files to be found in
-@file{ly/@/}:
+@file{ly/}:
@multitable @columnfractions .4 .6
@headitem Filename
@tab Contents
-@item @file{ly/@/engraver@/-init@/.ly}
+@item @file{ly/engraver-init.ly}
@tab Definitions of engraver Contexts
-@item @file{ly/@/paper@/-defaults@/-init@/.ly}
+@item @file{ly/paper-defaults-init.ly}
@tab Specifications of paper-related defaults
-@item @file{ly/@/performer@/-init@/.ly}
+@item @file{ly/performer-init.ly}
@tab Definitions of performer Contexts
-@item @file{ly/@/property@/-init@/.ly}
+@item @file{ly/property-init.ly}
@tab Definitions of all common predefined commands
-@item @file{ly/@/spanner@/-init@/.ly}
+@item @file{ly/spanner-init.ly}
@tab Definitions of spanner-related predefined commands
@end multitable
Other settings (such as the definitions of markup commands) are
-stored as @file{@/.scm} (Scheme) files. The Scheme programming
+stored as @file{.scm} (Scheme) files. The Scheme programming
language is used to provide a programmable interface into
LilyPond internal operation. Further explanation of these files
is currently outside the scope of this manual, as a knowledge of
@multitable @columnfractions .4 .6
@headitem Filename
@tab Contents
-@item @file{scm/@/auto@/-beam@/.scm}
+@item @file{scm/auto-beam.scm}
@tab Sub-beaming defaults
-@item @file{scm/@/define@/-grobs@/.scm}
+@item @file{scm/define-grobs.scm}
@tab Default settings for grob properties
-@item @file{scm/@/define@/-markup@/-commands@/.scm}
+@item @file{scm/define-markup-commands.scm}
@tab Specify all markup commands
-@item @file{scm/@/midi@/.scm}
+@item @file{scm/midi.scm}
@tab Default settings for MIDI output
-@item @file{scm/@/output@/-lib@/.scm}
+@item @file{scm/output-lib.scm}
@tab Settings that affect appearance of frets, colors,
accidentals, bar lines, etc
-@item @file{scm/@/parser@/-clef@/.scm}
+@item @file{scm/parser-clef.scm}
@tab Definitions of supported clefs
-@item @file{scm/@/script@/.scm}
+@item @file{scm/script.scm}
@tab Default settings for articulations
@end multitable
@sourceimage{Learning_Macos_Save_menu,,,}
-Kies een naam voor je bestand, bijvoorbeeld @file{test@/.ly}.
+Kies een naam voor je bestand, bijvoorbeeld @file{test.ly}.
@sourceimage{Learning_Macos_Save_file_with_name,,,}
@sourceimage{Learning_Win7_Save_Menu,,,}
-Kies een naam voor je bestand, bijvoorbeeld @file{test@/.ly}.
+Kies een naam voor je bestand, bijvoorbeeld @file{test.ly}.
@sourceimage{Learning_Win7_Save_File_With_Name,,,}
@c FIXME: why present/advise the best/simplest for last?
@subsubheading Stap 2b. Compileer (door te dubbelklikken)
-Of dubbelklik het @file{test@/.ly} bestand.
+Of dubbelklik het @file{test.ly} bestand.
@subsubheading Stap 3. Bekijk de uitvoer
-Tijdens het compileren van het @file{test@/.ly} bestand, wordt
+Tijdens het compileren van het @file{test.ly} bestand, wordt
een commandovenster geopend dat zich na korte tijd weer
sluit. Tijdens dit proces worden drie extra bestanden
aangemaakt.
@sourceimage{Learning_Win7_All_Files_Created,,,}
-Het PDF-bestand bevat het gegraveerde @file{test@/.ly} bestand.
+Het PDF-bestand bevat het gegraveerde @file{test.ly} bestand.
@sourceimage{Learning_Win7_Pdf_Output,,,}
@subsubheading Stap 1. Maak je @file{.ly}-bestand
-Maak een tekstbestand met de naam @file{test@/.ly} en vul het met:
+Maak een tekstbestand met de naam @file{test.ly} en vul het met:
@c double \\ required because this is inside a macro!
@example
@subsubheading Stap 2. Compileren (op de commandoregel)
-Om het @file{test@/.ly}-bestand te compileren, typ op de
+Om het @file{test.ly}-bestand te compileren, typ op de
commandoregel:
@example
@subsubheading Stap 3. Bekijk de uitvoer
-Je kunt het resulterende @file{test@/.pdf}-bestand bekijken of
+Je kunt het resulterende @file{test.pdf}-bestand bekijken of
printen.
@end macro
allemaal samengevoegd in een enkel uitvoerbestand. Een
@code{\book}-commando is niet nodig -- die wordt impliciet
aangemaakt. Echter, als je afzonderlijke uitvoerbestanden
-vanuit een @file{@/.ly}-bestand wil maken, dan moet het
+vanuit een @file{.ly}-bestand wil maken, dan moet het
@code{\book}-commando worden gebruikt om de verschillende
secties aan te geven: elk @code{\book}-blok produceert
een apart uitvoerbestand.
you have a single definition (such as @code{\dolce}) for all your
input files (see @ref{Style sheets}), then if the syntax changes, you
only need to update your single @code{\dolce} definition,
-instead of making changes throughout every @file{@/.ly} file.
+instead of making changes throughout every @file{.ly} file.
@node Scores and parts
both the part and the full score.
It is convenient to define the notes in a special file. For example,
-suppose that the file @file{horn@/-music@/.ly} contains the following part
+suppose that the file @file{horn-music.ly} contains the following part
of a horn/@/bassoon duo
@example
@end example
@noindent
-substitutes the contents of @file{horn@/-music@/.ly} at this position in
+substitutes the contents of @file{horn-music.ly} at this position in
the file, so @code{hornNotes} is defined afterwards. The command
@code{\transpose f@tie{}c'} indicates that the argument, being
@code{\hornNotes}, should be transposed by a fifth upwards. Sounding
The score is made by combining all of the music together. Assuming
that the other voice is in @code{bassoonNotes} in the file
-@file{bassoon@/-music@/.ly}, a score is made with
+@file{bassoon-music.ly}, a score is made with
@example
\include "bassoon-music.ly"
postfix style @code{note\[ ... note\]}.
@c Alternatively, the file
-@c @file{gregorian@/-init@/.ly} can be included; it provides a scheme
+@c @file{gregorian-init.ly} can be included; it provides a scheme
@c function
@c @example
@c \ligature @var{music expr}
only marks the end of a chant, but is also frequently used within a
single antiphonal/responsorial chant to mark the end of each section.
-To use divisiones, include the file @file{gregorian@/.ly}. It
+To use divisiones, include the file @file{gregorian.ly}. It
contains definitions that you can apply by just inserting
@code{\divisioMinima}, @code{\divisioMaior}, @code{\divisioMaxima},
and @code{\finalis} at proper places in the input. Some editions use
@emph{virgula} or @emph{caesura} instead of divisio minima.
-Therefore, @file{gregorian@/.ly} also defines @code{\virgula} and
+Therefore, @file{gregorian.ly} also defines @code{\virgula} and
@code{\caesura}
@lilypond[quote,ragged-right]
ligatures, lyrics alignment, and proper handling of accidentals.
The support for Gregorian neumes is enabled by @code{\include}ing
-@file{gregorian@/.ly} at the beginning of the file. This makes available
+@file{gregorian.ly} at the beginning of the file. This makes available
a number of extra commands to produce the neume symbols used in
plainchant notation.
perfectly possible, although incorrect, to make a single-note
quilisma.
-In addition to the note signs, @file{gregorian@/.ly} also defines the
+In addition to the note signs, @file{gregorian.ly} also defines the
commands @code{\versus}, @code{\responsum}, @code{\ij},
@code{\iij}, @code{\IJ}, and @code{\IIJ}, that will produce the
corresponding characters, e.g., for use in lyrics, as section
Internally, LilyPond uses Scheme (a LISP dialect) to provide
infrastructure. Overriding layout decisions in effect accesses the
program internals, which requires Scheme input. Scheme elements are
-introduced in a @file{@/.ly} file with the hash mark
+introduced in a @file{.ly} file with the hash mark
@code{#}.@footnote{@rextend{Scheme tutorial}, contains a short tutorial
on entering numbers, lists, strings, and symbols in Scheme.}
@rlearning{Contexts and engravers}.
Installed files:
-@file{ly/@/engraver@/-init@/.ly},
-@file{ly/@/performer@/-init@/.ly}.
+@file{ly/engraver-init.ly},
+@file{ly/performer-init.ly}.
Snippets:
@rlsr{Contexts and engravers}.
We have been talking of @emph{the} @code{Fingering} object, but actually it
does not amount to much. The initialization file (see
@rlearning{Other sources of information})
-@file{scm/@/define@/-grobs@/.scm} shows the soul of the @q{object},
+@file{scm/define-grobs.scm} shows the soul of the @q{object},
@example
(Fingering
description. Grob descriptions are named in @code{StudlyCaps}
(starting with capital letters). They contain the
@q{default settings} for a particular kind of grob as an
-association list. See @file{scm/@/define@/-grobs@/.scm}
+association list. See @file{scm/define-grobs.scm}
to see the settings for each grob description. Grob descriptions
are modified with @code{\override}.
initialization file and loaded each time an input file is
compiled. In the above example, the initialized default values
for @code{padding} and @code{minimum-distance} (defined in
-@file{scm/@/define@/-grobs@/.scm}) are reset to their default-when-unset
+@file{scm/define-grobs.scm}) are reset to their default-when-unset
values (zero for both keys). Defining a property or variable as
an alist (of any size) will always reset all unset key-values to
their default-when-unset values. Unless this is the intended
where there is no line break, or after a line break.
Alternatively, these eight combinations may be specified
-by pre-defined functions, defined in @file{scm/@/output@/-lib@/.scm},
+by pre-defined functions, defined in @file{scm/output-lib.scm},
where the last three columns indicate whether the layout objects
will be visible in the positions shown at the head of the columns:
@ref{Modifying properties}.
Installed Files:
-@file{scm/@/define@/-grobs@/.scm}.
+@file{scm/define-grobs.scm}.
Snippets:
@rlsr{Tweaks and overrides}.
@rextend{Music functions}.
Installed Files:
-@file{lily/@/music@/-scheme@/.cc},
-@file{scm/@/c++@/.scm},
-@file{scm/@/lily@/.scm}.
+@file{lily/music-scheme.cc},
+@file{scm/c++.scm},
+@file{scm/lily.scm}.
@node Substitution function examples
@ref{Common chord modifiers}.
Installed Files:
-@file{scm/@/chords@/-ignatzek@/.scm},
-@file{scm/@/chord@/-entry@/.scm},
-@file{ly/@/chord@/-modifier@/-init@/.ly}.
+@file{scm/chords-ignatzek.scm},
+@file{scm/chord-entry.scm},
+@file{ly/chord-modifier-init.ly}.
Snippets:
@rlsr{Chords}.
@end lilypond
The rules for the default placement of articulations are defined
-in @file{scm/@/script@/.scm}. Articulations and ornamentations
+in @file{scm/script.scm}. Articulations and ornamentations
may be manually placed above or below the staff; see
@ref{Direction and placement}.
@ref{Trills}.
Installed Files:
-@file{scm/@/script@/.scm}.
+@file{scm/script.scm}.
Snippets:
@rlsr{Expressive marks}.
is the standard EADGBE tuning. Some other predefined tunings are
@code{guitar-open-g-tuning}, @code{mandolin-tuning} and
@code{banjo-open-g-tuning}. The predefined string tunings
-are found in @file{scm/@/tablature@/.scm}.
+are found in @file{scm/tablature.scm}.
A string tuning is a Scheme list of string pitches,
one for each string, ordered by string number from 1 to N,
@seealso
Installed Files:
-@file{scm/@/tablature@/.scm}.
+@file{scm/tablature.scm}.
Snippets:
@rlsr{Fretted strings}.
@end lilypond
The default predefined fret diagrams are contained in the file
-@file{predefined@/-guitar@/-fretboards@/.ly}. Fret diagrams are
+@file{predefined-guitar-fretboards.ly}. Fret diagrams are
stored based on the pitches of a chord and the value of
@code{stringTunings} that is currently in use.
-@file{predefined@/-guitar@/-fretboards@/.ly} contains predefined
+@file{predefined-guitar-fretboards.ly} contains predefined
fret diagrams only for @code{guitar-tuning}. Predefined fret
diagrams can be added for other instruments or other tunings
by following the examples found in
-@file{predefined@/-guitar@/-fretboards@/.ly}.
+@file{predefined-guitar-fretboards.ly}.
Fret diagrams for the ukulele are contained in the file
-@file{predefined@/-ukulele@/-fretboards@/.ly}.
+@file{predefined-ukulele-fretboards.ly}.
@lilypond[verbatim, ragged-right, quote]
\include "predefined-ukulele-fretboards.ly"
@ref{Predefined fretboard diagrams}.
Installed Files:
-@file{ly/@/predefined@/-guitar@/-fretboards@/.ly},
-@file{ly/@/predefined@/-guitar@/-ninth@/-fretboards@/.ly},
-@file{ly/@/predefined@/-ukulele@/-fretboards@/.ly}.
+@file{ly/predefined-guitar-fretboards.ly},
+@file{ly/predefined-guitar-ninth-fretboards.ly},
+@file{ly/predefined-ukulele-fretboards.ly}.
Snippets:
@rlsr{Fretted strings}.
@rlsr{Fretted strings}.
Installed Files:
-@file{scm/@/output@/-lib@/.scm} contains predefined banjo tunings.
+@file{scm/output-lib.scm} contains predefined banjo tunings.
@section Input structure
The main format of input for LilyPond are text files. By convention,
-these files end with @file{@/.ly}.
+these files end with @file{.ly}.
@menu
* Structure of a score::
is implicitly enclosed in a \book block. A \book block in a source
file produces at least one output file, and by default the name of the
output file produced is derived from the name of the input file, so
-@file{fandangoforelephants@/.ly} will produce
-@file{fandangoforelephants@/.pdf}.
+@file{fandangoforelephants.ly} will produce
+@file{fandangoforelephants.pdf}.
(For more details about @code{\book} blocks, see
@ref{Multiple scores in a book},
@funindex \book
-All the movements and texts which appear in the same @file{@/.ly} file
+All the movements and texts which appear in the same @file{.ly} file
will normally be typeset in the form of a single output file.
@example
@node Multiple output files from one input file
@subsection Multiple output files from one input file
-If you want multiple output files from the same @file{@/.ly} file,
+If you want multiple output files from the same @file{.ly} file,
then you can add multiple @code{\book} blocks, where each
such \book block will result in a separate output file.
If you do not specify any @code{\book} block in the
@}
@end example
-in source file @file{eightminiatures@/.ly}
+in source file @file{eightminiatures.ly}
will produce
@itemize
@item
-@file{eightminiatures@/.pdf},
+@file{eightminiatures.pdf},
@item
-@file{eightminiatures@/-1@/.pdf} and
+@file{eightminiatures-1.pdf} and
@item
-@file{eightminiatures@/-2@/.pdf}.
+@file{eightminiatures-2.pdf}.
@end itemize
@node Output file names
producing several ouputs from a single source file. You also have the
ability to specify your own suffixes for each @code{\book} block, so
for example you can produce files called
-@file{eightminiatures@/-Romanze@/.pdf}, @file{eightminiatures@/-Menuetto@/.pdf}
-and @file{eightminiatures@/-Nocturne@/.pdf} by adding a
+@file{eightminiatures-Romanze.pdf}, @file{eightminiatures-Menuetto.pdf}
+and @file{eightminiatures-Nocturne.pdf} by adding a
@code{\bookOutputSuffix} declaration inside each @code{\book} block.
@example
@itemize
@item
-@file{Romanze@/.pdf},
+@file{Romanze.pdf},
@item
-@file{Menuetto@/.pdf} and
+@file{Menuetto.pdf} and
@item
-@file{Nocturne@/.pdf}.
+@file{Nocturne.pdf}.
@end itemize
@funindex \book
@funindex \bookpart
-A @file{@/.ly} file may contain any number of toplevel expressions, where a
+A @file{.ly} file may contain any number of toplevel expressions, where a
toplevel expression is one of the following:
@itemize
toplevel scores, and combined as a single @code{\book}.
This behavior can be changed by setting the variable
@code{toplevel-score-handler} at toplevel. The default handler is
-defined in the init file @file{@/.@/./@/scm/@/lily@/.scm}.
+defined in the init file @file{../scm/lily.scm}.
@item
A @code{\book} block logically combines multiple movements
are a number of @code{\score}s, one output file will be created
for each @code{\book} block, in which all corresponding movements
are concatenated. The only reason to explicitly specify
-@code{\book} blocks in a @file{@/.ly} file is if you wish to create
+@code{\book} blocks in a @file{.ly} file is if you wish to create
multiple output files from a single input file. One exception is
within lilypond-book documents, where you explicitly have to add
a @code{\book} block if you want more than a single @code{\score}
or @code{\markup} in the same example. This behavior can be
changed by setting the variable @code{toplevel-book-handler} at
toplevel. The default handler is defined in the init file
-@file{@/.@/./@/scm/@/lily@/.scm}.
+@file{../scm/lily.scm}.
@item
A @code{\bookpart} block. A book may be divided into several parts,
This behavior can be changed by setting the variable
@code{toplevel-music-handler} at toplevel. The default handler is
-defined in the init file @file{@/.@/./@/scm/@/lily@/.scm}.
+defined in the init file @file{../scm/lily.scm}.
@item
A markup text, a verse for example
A more advanced option is to change the definitions of the following
variables in the @code{\paper} block. The init file
-@file{@/.@/./@/ly/@/titling@/-init@/.ly} lists the default layout.
+@file{../ly/titling-init.ly} lists the default layout.
@table @code
@funindex bookTitleMarkup
The header and footer are created by the functions
@code{make-header} and @code{make-footer}, defined in
@code{\paper}. The default implementations are in
-@file{ly/@/paper@/-defaults@/-init@/.ly} and
-@file{ly/@/titling@/-init@/.ly}.
+@file{ly/paper-defaults-init.ly} and
+@file{ly/titling-init.ly}.
This example centers page numbers at the bottom of every page.
@seealso
-Init files: @file{@/.@/./@/ly/@/toc@/-init@/.ly}.
+Init files: @file{../ly/toc-init.ly}.
@predefined
@end example
The line @code{\include "otherfile.ly"} is equivalent to pasting the
-contents of @file{otherfile@/.ly} into the current file at the place
+contents of @file{otherfile.ly} into the current file at the place
where the @code{\include} appears. For example, in a large
project you might write separate files for each instrument part
and create a @qq{full score} file which brings together the
Files in other locations may be included by giving either a full
path reference or a relative path reference (but use the UNIX
forward slash, /, rather than the DOS/Windows back slash, \, as the
-directory separator.) For example, if @file{stuff@/.ly} is located
+directory separator.) For example, if @file{stuff.ly} is located
one directory higher than the current working directory, use
@example
Files can also be included from a directory in a search path
specified as an option when invoking LilyPond from the command
line. The included files are then specified using just their
-file name. For example, to compile @file{main@/.ly} which includes
+file name. For example, to compile @file{main.ly} which includes
files located in a subdirectory called @file{parts} by this method,
-cd to the directory containing @file{main@/.ly} and enter
+cd to the directory containing @file{main.ly} and enter
@example
lilypond --include=parts main.ly
@end example
Files which are to be included in many scores may be placed in
-the LilyPond directory @file{@/.@/./ly}. (The location of this
+the LilyPond directory @file{../ly}. (The location of this
directory is installation-dependent - see
@rlearning{Other sources of information}). These files can then
be included simply by naming them on an @code{\include} statement.
-This is how the language-dependent files like @file{english@/.ly} are
+This is how the language-dependent files like @file{english.ly} are
included.
LilyPond includes a number of files by default when you start
Context definitions follow precisely the same syntax as those
within a @code{\layout} block. Translation modules for sound are
called performers. The contexts for MIDI output are defined in
-@file{@/.@/./@/ly/@/performer@/-init@/.ly},
+@file{../ly/performer-init.ly},
see @rlearning{Other sources of information}.
For example, to remove the effect of dynamics
from the MIDI output, insert the following lines in the
MIDI volume range. The default fractions range from 0.25 for
@notation{ppppp} to 0.95 for @notation{fffff}. The set of dynamic
marks and the associated fractions can be seen in
-@file{@/.@/./@/scm/@/midi@/.scm}, see @rlearning{Other sources of information}.
+@file{../scm/midi.scm}, see @rlearning{Other sources of information}.
This set of fractions may be changed or extended by providing a
function which takes a dynamic mark as its argument and returns the
required fraction, and setting
Alternatively, if the whole table of fractions needs to be
redefined, it would be better to use the
@notation{default-dynamic-absolute-volume} procedure in
-@file{@/.@/./@/scm/@/midi@/.scm} and the associated table as a model.
+@file{../scm/midi.scm} and the associated table as a model.
The final example in this section shows how this might be done.
@unnumberedsubsubsec Overall MIDI volume
LilyPond will, by default, apply a small degree of equalization
to a few instruments. The instruments and the equalization
applied are shown in the table @notation{instrument-equalizer-alist}
-in @file{@/.@/./@/scm/@/midi@/.scm}.
+in @file{../scm/midi.scm}.
This basic default equalizer can be replaced by setting
@code{instrumentEqualizer} in the @code{Score} context to a new
is done in the same way as shown for resetting the
@code{dynamicAbsoluteVolumeFunction} at the start of this section.
The default equalizer, @notation{default-instrument-equalizer}, in
-@file{@/.@/./@/scm/@/midi@/.scm} shows how such a procedure might be written.
+@file{../scm/midi.scm} shows how such a procedure might be written.
The following example sets the relative flute and clarinet volumes
to the same values as the previous example.
An association list or @strong{alist} for short is a Scheme pair
which associates a value with a key: @w{@code{(key . value)}}. For
-example, in @file{scm/@/lily@/.scm}, the alist
+example, in @file{scm/lily.scm}, the alist
@w{@qq{type-p-name-alist}} associates certain type predicates
(e.g.@tie{}@code{ly:music?}) with names (e.g.@tie{}@qq{music}) so
that type-check failures can be reported with a console message that
A @strong{lexer} is a program which converts a sequence of
characters into a sequence of tokens, a process called lexical
analysis. The LilyPond lexer converts the stream obtained from an
-input @file{@/.ly} file into a tokenized stream more suited to the
+input @file{.ly} file into a tokenized stream more suited to the
next stage of processing - parsing, for which see @ref{parser}.
The LilyPond lexer is built with Flex from the lexer file
-@file{lily/@/lexer@/.ll} which contains the lexical rules. This file
+@file{lily/lexer.ll} which contains the lexical rules. This file
is part of the source code and is not included in the LilyPond
binary installation.
cannot be achieved the file is invalid and an appropriate error
message is produced. The syntactic groupings and the rules for
constructing the groupings from their parts for the LilyPond syntax
-are defined in @file{lily/@/parser@/.yy} and shown in Backus Normal Form
+are defined in @file{lily/parser.yy} and shown in Backus Normal Form
(BNF) in @ref{LilyPond grammar}. This file is used to build the
parser during the program build by the parser generator, Bison. It
is part of the source code and is not included in the LilyPond
use by users is strongly discouraged, because their scoping
semantics can be confusing.
-When the value of such a variable is changed in a @file{@/.ly} file,
+When the value of such a variable is changed in a @file{.ly} file,
the change is global, and unless explicitly reverted, the new value
will persist to the end of the file, affecting subsequent
@code{\score} blocks as well as external files added with the
types of smob objects: simple smobs, intended for simple immutable
objects like numbers, and complex smobs, used for objects with
identities. If you have access to the LilyPond sources, more
-information can be found in @file{lily/@/includes/@/smob@/.hh}.
+information can be found in @file{lily/includes/smob.hh}.
@node stencil
@unnumberedsubsec stencil
@ref{Percussion notes}.
File:
-@file{ly/@/drumpitch@/-init@/.ly}
+@file{ly/drumpitch-init.ly}
Snippets:
@rlsr{Percussion}.
command also sets time-signature-based default values for the properties
@code{baseMoment}, @code{beatStructure}, and @code{beamExceptions}. The
predefined default values for these properties can be found in
-@file{scm/@/time@/-signature@/-settings@/.scm}. The existing default values can
+@file{scm/time-signature-settings.scm}. The existing default values can
be changed, or new default values can be added:
@lilypond[quote,verbatim]
@ref{Setting automatic beam behavior}.
Installed Files:
-@file{scm/@/auto@/-beam@/.scm}.
+@file{scm/auto-beam.scm}.
Snippets:
@rlsr{Rhythms}.
By default @code{baseMoment} is set to one over the denominator of
the time signature. Any exceptions to this default can be found in
-@file{scm/@/time@/-signature@/-settings@/.scm}.
+@file{scm/time-signature-settings.scm}.
Special autobeaming rules (other than ending a beam on a beat)
are defined in the @code{beamExceptions} property.
@end lilypond
These default automatic beaming settings for a time signature
-are determined in @file{scm/@/time@/-signature@/-settings@/.scm}.
+are determined in @file{scm/time-signature-settings.scm}.
The automatic beaming settings for a time signature can be changed
as described in @ref{Time signature}.
shortest note in the beamed group.
For reference, the default beaming rules are found in
-@file{scm/@/time@/-signature@/-settings@/.scm}.
+@file{scm/time-signature-settings.scm}.
@snippets
@seealso
Installed files:
-@file{scm/@/beam@/-settings@/.scm}.
+@file{scm/beam-settings.scm}.
Snippets:
@rlsr{Rhythms}.
c1
@end lilypond
-The file @file{scm/@/translation@/-functions@/.scm} contains the
+The file @file{scm/translation-functions.scm} contains the
definitions of @code{format-mark-numbers} (the default format),
@code{format-mark-box-numbers}, @code{format-mark-letters} and
@code{format-mark-box-letters}. These can be used as inspiration
@ref{Aligning objects}.
Installed Files:
-@file{scm/@/translation@/-functions@/.scm} contains
+@file{scm/translation-functions.scm} contains
the definitions of @code{format-mark-numbers} and
@code{format-mark-letters}. They can be used as inspiration for
other formatting functions.
@ref{Manual beams}.
Installed Files:
-@file{ly/@/grace@/-init@/.ly}.
+@file{ly/grace-init.ly}.
Snippets:
@rlsr{Rhythms}.
@ref{Articulations and ornamentations}.
Installed Files:
-@file{ly/@/chord@/-repetition@/-init@/.ly}.
+@file{ly/chord-repetition-init.ly}.
@node Simultaneous expressions
Common paper sizes are available, including @code{a4},
@code{letter}, @code{legal}, and @code{11x17} (also known as
tabloid). Many more paper sizes are supported by default. For
-details, see @file{scm/@/paper@/.scm}, and search for the
+details, see @file{scm/paper.scm}, and search for the
definition of @code{paper-alist}.
@c TODO add a new appendix for paper sizes (auto-generated) -pm
Extra sizes may be added by editing the definition of
@code{paper-alist} in the initialization file
-@file{scm/@/paper@/.scm}, however they will be overridden on a
+@file{scm/paper.scm}, however they will be overridden on a
subsequent install.
@cindex orientation
@seealso
Installed Files:
-@file{scm/@/paper@/.scm}.
+@file{scm/paper.scm}.
@node Automatic scaling to paper size
@code{binding-offset}, @code{indent}, and @code{short-indent}.
The default values for these dimensions are set in
-@file{ly/@/paper@/-defaults@/-init@/.ly}, using internal variables named
+@file{ly/paper-defaults-init.ly}, using internal variables named
@code{top-margin-default}, @code{bottom-margin-default}, etc.
These are the values that result at the default paper size
@code{a4}. For reference, with @code{a4} paper the
@seealso
Installed Files:
-@file{ly/@/paper@/-defaults@/-init@/.ly},
-@file{scm/@/paper@/.scm}.
+@file{ly/paper-defaults-init.ly},
+@file{scm/paper.scm}.
@node Fixed vertical spacing \paper variables
See @ref{Automatic scaling to paper size}.}
Default values (before scaling) are defined in
-@file{ly/@/paper@/-defaults@/-init@/.ly}.
+@file{ly/paper-defaults-init.ly}.
@table @code
@item paper-height
@seealso
Installed Files:
-@file{ly/@/paper@/-defaults@/-init@/.ly}.
+@file{ly/paper-defaults-init.ly}.
Snippets:
@rlsr{Spacing}.
@ref{File structure}). All distances are measured in
staff-spaces.
-Default settings are defined in @file{ly/@/paper@/-defaults@/-init@/.ly}.
+Default settings are defined in @file{ly/paper-defaults-init.ly}.
@c TODO: Where do headers/footers fit in? -mp
@ref{Flexible vertical spacing within systems}.
Installed Files:
-@file{ly/@/paper@/-defaults@/-init@/.ly}.
+@file{ly/paper-defaults-init.ly}.
Snippets:
@rlsr{Spacing}.
@unnumberedsubsubsec @code{\paper} variables for widths and margins
Default values (before scaling) that are not listed here are
-defined in @file{ly/@/paper@/-defaults@/-init@/.ly}.
+defined in @file{ly/paper-defaults-init.ly}.
@table @code
@seealso
Installed Files:
-@file{ly/@/paper@/-defaults@/-init@/.ly}.
+@file{ly/paper-defaults-init.ly}.
@node \paper variables for two-sided mode
@unnumberedsubsubsec @code{\paper} variables for two-sided mode
Default values (before scaling) are defined in
-@file{ly/@/paper@/-defaults@/-init@/.ly}.
+@file{ly/paper-defaults-init.ly}.
@table @code
@seealso
Installed Files:
-@file{ly/@/paper@/-defaults@/-init@/.ly}.
+@file{ly/paper-defaults-init.ly}.
@node \paper variables for shifts and indents
@unnumberedsubsubsec @code{\paper} variables for shifts and indents
Default values (before scaling) that are not listed here are
-defined in @file{ly/@/paper@/-defaults@/-init@/.ly}.
+defined in @file{ly/paper-defaults-init.ly}.
@table @code
@seealso
Installed Files:
-@file{ly/@/paper@/-defaults@/-init@/.ly}.
+@file{ly/paper-defaults-init.ly}.
Snippets:
@rlsr{Spacing}.
@unnumberedsubsubsec @code{\paper} variables for page breaking
Default values not listed here are defined in
-@file{ly/@/paper@/-defaults@/-init@/.ly}
+@file{ly/paper-defaults-init.ly}
@table @code
@ref{Minimal page breaking}.
Installed files:
-@file{ly/@/paper@/-defaults@/-init@/.ly}.
+@file{ly/paper-defaults-init.ly}.
@node \paper variables for page numbering
@unnumberedsubsubsec @code{\paper} variables for page numbering
Default values not listed here are defined in
-@file{ly/@/paper@/-defaults@/-init@/.ly}
+@file{ly/paper-defaults-init.ly}
@table @code
@seealso
Installed Files:
-@file{ly/@/paper@/-defaults@/-init@/.ly}.
+@file{ly/paper-defaults-init.ly}.
@node Miscellaneous \paper variables
A markup object that is inserted between systems, often used for
orchestral scores. Default: unset. The @code{\slashSeparator}
-markup, defined in @file{ly/@/titling@/-init@/.ly}, is provided as a
+markup, defined in @file{ly/titling-init.ly}, is provided as a
sensible default, for example:
@lilypond[quote,verbatim,noragged-right,line-width=30\mm]
@seealso
Installed files:
-@file{ly/@/titling@/-init@/.ly}.
+@file{ly/titling-init.ly}.
Snippets:
@rlsr{Spacing}.
@end example
@c TODO Check this
-A linebreaking configuration can be saved as a @file{@/.ly} file
+A linebreaking configuration can be saved as a @file{.ly} file
automatically. This allows vertical alignments to be stretched to
fit pages in a second formatting run. This is fairly new and
complicated. More details are available in
@seealso
Installed files:
-@file{ly/@/engraver@/-init@/.ly},
-@file{scm/@/define@/-grobs@/.scm}.
+@file{ly/engraver-init.ly},
+@file{scm/define-grobs.scm}.
Internals Reference:
@rinternals{Contexts},
@seealso
Installed Files:
-@file{scm/@/define@/-grobs@/.scm}.
+@file{scm/define-grobs.scm}.
Snippets:
@rlsr{Spacing}.
@seealso
Installed Files:
-@file{scm/@/define@/-grobs@/.scm}.
+@file{scm/define-grobs.scm}.
Snippets:
@rlsr{Spacing}.
@seealso
Installed Files:
-@file{ly/@/engraver@/-init@/.ly},
-@file{scm/@/define@/-grobs@/.scm}.
+@file{ly/engraver-init.ly},
+@file{scm/define-grobs.scm}.
Snippets:
@rlsr{Spacing}.
@rlsr{Text}.
Installed files:
-@file{scm/@/markup@/.scm}.
+@file{scm/markup.scm}.
@knownissues
@rinternals{TextScript}.
Installed files:
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@node Text alignment
@rinternals{TextScript}.
Installed files:
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@node Graphic notation inside markup
@rinternals{TextScript}.
Installed files:
-@file{scm/@/define@/-markup@/-commands@/.scm},
-@file{scm/@/stencil@/.scm}.
+@file{scm/define-markup-commands.scm},
+@file{scm/stencil.scm}.
@node Music notation inside markup
@rinternals{TextScript}.
Installed files:
-@file{scm/@/define@/-markup@/-commands@/.scm},
-@file{scm/@/fret@/-diagrams@/.scm},
-@file{scm/@/harp@/-pedals@/.scm}.
+@file{scm/define-markup-commands.scm},
+@file{scm/fret-diagrams.scm},
+@file{scm/harp-pedals.scm}.
@node Multi-page markup
@rinternals{TextScript}.
Installed files:
-@file{scm/@/define@/-markup@/-commands@/.scm}.
+@file{scm/define-markup-commands.scm}.
@funindex \markuplines
@c A source file gets never installed...
@c Installed files:
-@c @file{lily/@/font@/-config@/-scheme@/.cc}.
+@c @file{lily/font-config-scheme.cc}.
@node Entire document fonts
\grace @{ \small G32[ d G e] @}
@end example
-@file{bagpipe@/.ly} also contains pitch definitions for the bagpipe
+@file{bagpipe.ly} also contains pitch definitions for the bagpipe
notes in the appropriate octaves, so you do not need to worry about
@code{\relative} or @code{\transpose}.
@end lilypond
New diagrams can be created by following the patterns in
-@file{scm/@/define@/-woodwind@/-diagrams@/.scm} and
-@file{scm/@/display@/-woodwind@/-diagrams@/.scm}. However, this will
+@file{scm/define-woodwind-diagrams.scm} and
+@file{scm/display-woodwind-diagrams.scm}. However, this will
require Scheme ability and may not be accessible to all users.
@predefined
@seealso
Installed Files:
-@file{scm/@/define@/-woodwind@/-diagrams@/.scm},
-@file{scm/@/display@/-woodwind@/-diagrams@/.scm}.
+@file{scm/define-woodwind-diagrams.scm},
+@file{scm/display-woodwind-diagrams.scm}.
Snippets: @rlsr{Winds}.
semitone and quarter-tone accidentals, with the precise
pitch alterations being determined by context. Italian
note names are typically used, while the init file
-@file{arabic@/.ly} provides a suitable set of macros
+@file{arabic.ly} provides a suitable set of macros
and definitions extending the standard
notation. For more details, see
@ref{Arabic music}.
whose intervals are based on 1/9 divisions of the whole tone.
Standard Western staff notes are still used, but with special
accidentals unique to Turkish music, that are defined in the file
-@file{makam@/.ly}. For further information on Turkish classical
+@file{makam.ly}. For further information on Turkish classical
music and makamlar, see
@ref{Turkish classical music}.
-To locate init files such as @file{arabic@/.ly} or
-@file{makam@/.ly} on your system, see
+To locate init files such as @file{arabic.ly} or
+@file{makam.ly} on your system, see
@rlearning{Other sources of information}.
@snippets
The symbol for semi-flat does not match the symbol which is used
in Arabic notation. The @code{\dwn} symbol defined in
-@file{arabic@/.ly} may be used preceding a flat symbol as a work
+@file{arabic.ly} may be used preceding a flat symbol as a work
around if it is important to use the specific Arabic semi-flat
symbol. The appearance of the semi-flat symbol in the key
signature cannot be altered by using this method.
@cindex Arabic key signatures
In addition to the minor and major key signatures, the following
-key signatures are defined in @file{arabic.@/ly}: @notation{bayati},
+key signatures are defined in @file{arabic.ly}: @notation{bayati},
@notation{rast}, @notation{sikah}, @notation{iraq}, and
@notation{kurd}. These key signatures define a small number of
maqam groups rather than the large number of maqams that are in
use the standard Western staff notes (c, d, e, ...) with
special accidentals that raise or lower notes by intervals
of 1/9, 4/9, 5/9 and 8/9 of a tone. These accidentals are
-defined in the file @file{makam@/.ly}.
+defined in the file @file{makam.ly}.
The following table lists:
@itemize
text-editor with the cursor in the right place.
To make this chain work, you should configure your PDF viewer to
-follow hyperlinks using the @file{lilypond@/-invoke@/-editor} script
+follow hyperlinks using the @file{lilypond-invoke-editor} script
supplied with LilyPond.
For Xpdf on UNIX, the following should be present in
@file{xpdfrc}@footnote{On UNIX, this file is found either in
-@file{/@/etc/@/xpdfrc} or as @file{@/.xpdfrc} in your home directory.}
+@file{/etc/xpdfrc} or as @file{.xpdfrc} in your home directory.}
@example
urlCommand "lilypond-invoke-editor %s"
@end example
-The program @file{lilypond@/-invoke@/-editor} is a small helper
+The program @file{lilypond-invoke-editor} is a small helper
program. It will invoke an editor for the special @code{textedit}
URIs, and run a web browser for others. It tests the environment
variable @code{EDITOR} for the following patterns,
@end example
@noindent
-in a @file{@/.ly} file. Point and click may be explicitly enabled with
+in a @file{.ly} file. Point and click may be explicitly enabled with
@example
\pointAndClickOn
@node Emacs mode
@unnumberedsubsec Emacs mode
-Emacs has a @file{lilypond@/-mode}, which provides keyword
+Emacs has a @file{lilypond-mode}, which provides keyword
autocompletion, indentation, LilyPond specific parenthesis matching
and syntax coloring, handy compile short-cuts and reading LilyPond
-manuals using Info. If @file{lilypond@/-mode} is not installed on your
+manuals using Info. If @file{lilypond-mode} is not installed on your
platform, see below.
An Emacs mode for entering music and running LilyPond is contained in
the source archive in the @file{elisp} directory. Do @command{make
-install} to install it to @var{elispdir}. The file @file{lilypond@/-init@/.el}
-should be placed to @var{load-path}@file{/@/site@/-start@/.d/@/} or appended
-to your @file{@/~/@/@/.emacs} or @file{@/~/@/@/.emacs@/.el}.
+install} to install it to @var{elispdir}. The file @file{lilypond-init.el}
+should be placed to @var{load-path}@file{/site-start.d/} or appended
+to your @file{~/.emacs} or @file{~/.emacs.el}.
-As a user, you may want add your source path (e.g. @file{@/~/@/site@/-lisp/@/}) to
+As a user, you may want add your source path (e.g. @file{~/site-lisp/}) to
your @var{load-path} by appending the following line (as modified) to your
-@file{@/~/@/@/.emacs}
+@file{~/.emacs}
@c any reason we do not advise: (push "~/site-lisp" load-path)
@example
For @uref{http://@/www@/.vim@/.org,Vim}, a filetype plugin, indent
mode, and syntax-highlighting mode are available to use with
LilyPond. To enable all of these features, create (or modify)
-your @file{@/$HOME/@/@/.vimrc} to contain these three lines, in order:
+your @file{$HOME/.vimrc} to contain these three lines, in order:
@example
filetype off
@end example
@noindent
-If LilyPond is not installed in the @file{/@/usr/@/local/@/} directory,
+If LilyPond is not installed in the @file{/usr/local/} directory,
change the path appropriately. This topic is discussed in
@rlearning{Other sources of information}.
for pitches, durations are only written when necessary.
It is possible to record a MIDI file using a digital keyboard, and
-then convert it to @file{@/.ly}. However, human players are not
+then convert it to @file{.ly}. However, human players are not
rhythmically exact enough to make a MIDI to LY conversion trivial.
When invoked with quantizing (@code{-s} and @code{-d} options)
@command{midi2ly} tries to compensate for these timing errors, but is not
for representing music notation.
@command{musicxml2ly} extracts the notes, articulations, score structure,
-lyrics, etc. from part-wise MusicXML files, and writes them to a @file{@/.ly}
+lyrics, etc. from part-wise MusicXML files, and writes them to a @file{.ly}
file. It is invoked from the command-line.
beaming instead.
@item -o,--output=@var{file}
-set output filename to @var{file}. If @var{file} is @file{@/-}, the output
-will be printed on stdout. If not given, @var{xml-file}@file{@/.ly} will
+set output filename to @var{file}. If @var{file} is @file{-}, the output
+will be printed on stdout. If not given, @var{xml-file}@file{.ly} will
be used.
@item -r,--relative
\lilypondfile[quote,noindent]{screech-boink.ly}
-(If needed, replace @file{screech@/-boink@/.ly} by any @file{@/.ly} file
+(If needed, replace @file{screech-boink.ly} by any @file{.ly} file
you put in the same directory as this file.)
\end{document}
@subheading Processing
-Save the code above to a file called @file{lilybook@/.lytex}, then in a
+Save the code above to a file called @file{lilybook.lytex}, then in a
terminal run
@c keep space after @version{} so TeX doesn't choke
of lilypond.
When @command{lilypond-book} is run on it, this results in a Texinfo
-file (with extension @file{@/.texi}) containing @code{@@image} tags for
+file (with extension @file{.texi}) containing @code{@@image} tags for
HTML, Info and printed output. @command{lilypond-book} generates images
of the music in EPS and PDF formats for use in the printed output, and
in PNG format for use in HTML and Info output.
provided in the @code{role} property of the innermost element (see in
next sections). Tags are chosen to allow DocBook editors format the
content gracefully. The DocBook files to be processed with
-@command{lilypond-book} should have the extension @file{@/.lyxml}.
+@command{lilypond-book} should have the extension @file{.lyxml}.
@subheading Including a LilyPond file
-This is the most simple case. We must use the @file{@/.ly} extension for
+This is the most simple case. We must use the @file{.ly} extension for
the included file, and insert it as a standard @code{imageobject}, with
the following structure:
@subheading Processing the DocBook document
-Running @command{lilypond-book} on our @file{@/.lyxml} file will create a
-valid DocBook document to be further processed with @file{@/.xml}
+Running @command{lilypond-book} on our @file{.lyxml} file will create a
+valid DocBook document to be further processed with @file{.xml}
extension. If you use
@uref{http://@/dblatex@/.sourceforge@/.net@/,dblatex}, it will create a
PDF file from this document automatically. For HTML (HTML Help,
If you would like to translate comments and variable names in verbatim
output but not in the sources, you may set the environment variable
@code{LYDOC_LOCALEDIR} to a directory path; the directory should
-contain a tree of @file{@/.mo} message catalogs with @code{lilypond-doc}
+contain a tree of @file{.mo} message catalogs with @code{lilypond-doc}
as a domain.
@item addversion
@item texidoc
(Only for Texinfo output.) If @command{lilypond} is called with the
@option{--header=@/texidoc} option, and the file to be processed is
-called @file{foo@/.ly}, it creates a file @file{foo@/.texidoc} if there
+called @file{foo.ly}, it creates a file @file{foo.texidoc} if there
is a @code{texidoc} field in the @code{\header}. The @code{texidoc}
option makes @command{lilypond-book} include such files, adding its
contents as a documentation block right before the music snippet.
-Assuming the file @file{foo@/.ly} contains
+Assuming the file @file{foo.ly} contains
@example
\header @{
@end example
@noindent
-and we have this in our Texinfo document @file{test@/.texinfo}
+and we have this in our Texinfo document @file{test.texinfo}
@example
@@lilypondfile[texidoc]@{foo.ly@}
@end example
Most LilyPond test documents (in the @file{input} directory of the
-distribution) are small @file{@/.ly} files which look exactly like this.
+distribution) are small @file{.ly} files which look exactly like this.
For localization purpose, if the Texinfo document contains
-@code{@@documentlanguage @var{LANG}} and @file{foo@/.ly} header
+@code{@@documentlanguage @var{LANG}} and @file{foo.ly} header
contains a @code{texidoc@var{LANG}} field, and if @command{lilypond}
is called with @option{--header=@/texidoc@var{LANG}}, then
-@file{foo@/.texidoc@var{LANG}} will be included instead of
-@file{foo@/.texidoc}.
+@file{foo.texidoc@var{LANG}} will be included instead of
+@file{foo.texidoc}.
@item lilyquote
(Only for Texinfo output.) This option is similar to quote, but only
(Only for Texinfo output.) This option works similarly to
@code{texidoc} option: if @command{lilypond} is called with the
@option{--header=@/doctitle} option, and the file to be processed is
-called @file{foo@/.ly} and contains a @code{doctitle} field in the
-@code{\header}, it creates a file @file{foo@/.doctitle}. When
-@code{doctitle} option is used, the contents of @file{foo@/.doctitle},
+called @file{foo.ly} and contains a @code{doctitle} field in the
+@code{\header}, it creates a file @file{foo.doctitle}. When
+@code{doctitle} option is used, the contents of @file{foo.doctitle},
which should be a single line of @var{text}, is inserted in the
Texinfo document as @code{@@lydoctitle @var{text}}.
@code{@@lydoctitle} should be a macro defined in the Texinfo document.
@section Invoking @command{lilypond-book}
@command{lilypond-book} produces a file with one of the following
-extensions: @file{@/.tex}, @file{@/.texi}, @file{@/.html} or @file{@/.xml},
-depending on the output format. All of @file{@/.tex}, @file{@/.texi} and
-@file{@/.xml} files need further processing.
+extensions: @file{.tex}, @file{.texi}, @file{.html} or @file{.xml},
+depending on the output format. All of @file{.tex}, @file{.texi} and
+@file{.xml} files need further processing.
@subheading Format-specific instructions
@end example
@noindent
-The @file{@/.dvi} file created by this process will not contain
+The @file{.dvi} file created by this process will not contain
note heads. This is normal; if you follow the instructions, they
-will be included in the @file{@/.ps} and @file{@/.pdf} files.
+will be included in the @file{.ps} and @file{.pdf} files.
Running @command{dvips} may produce some warnings about fonts; these
are harmless and may be ignored. If you are running @command{latex} in
@end example
-When invoked with a filename that has no extension, the @file{@/.ly}
+When invoked with a filename that has no extension, the @file{.ly}
extension is tried first. To read input from stdin, use a
dash (@code{-}) for @var{file}.
-When @file{filename@/.ly} is processed it will produce @file{filename@/.ps}
-and @file{filename@/.pdf} as output. Several files can be specified;
+When @file{filename.ly} is processed it will produce @file{filename.ps}
+and @file{filename.pdf} as output. Several files can be specified;
they will each be processed independently. @footnote{The status of
GUILE is not reset after processing a @code{.ly} file, so be careful
not to change any system defaults from within Scheme.}
-If @file{filename@/.ly} contains more than one @code{\book}
+If @file{filename.ly} contains more than one @code{\book}
block, then the rest of the scores will be output in numbered files,
-starting with @file{filename@/-1@/.pdf}. In addition, the value of
+starting with @file{filename-1.pdf}. In addition, the value of
@code{output-suffix} will be inserted between the basename and the
number. An input file containing
@end example
@noindent
-will output @var{base}@file{@/-violin@/.pdf} and
-@var{base}@file{@/-cello@/-1@/.pdf}.
+will output @var{base}@file{-violin.pdf} and
+@var{base}@file{-cello-1.pdf}.
@unnumberedsubsubsec Standard shell commands
@table @code
@item -e,--evaluate=@var{expr}
-Evaluate the Scheme @var{expr} before parsing any @file{@/.ly} files.
+Evaluate the Scheme @var{expr} before parsing any @file{.ly} files.
Multiple @code{-e} options may be given, they will be evaluated
sequentially.
The @code{-dsafe} option works by evaluating in-line Scheme
expressions in a special safe module. This safe module is derived from
-GUILE @file{safe@/-r5rs} module, but adds a number of functions of the
-LilyPond API. These functions are listed in @file{scm/@/safe@/-lily@/.scm}.
+GUILE @file{safe-r5rs} module, but adds a number of functions of the
+LilyPond API. These functions are listed in @file{scm/safe-lily.scm}.
In addition, safe mode disallows @code{\include} directives and
disables the use of backslashes in @TeX{} strings.
Schoolbook fonts, included with your LilyPond installation, for
optimal rendering. Under UNIX, simply copy these fonts from the
LilyPond directory (typically
- @file{/@/usr/@/share/@/lilypond/@/VERSION/@/fonts/@/otf/@/}) to
- @file{@/~/@/@/.fonts/@/}. The SVG output should be compatible with any
+ @file{/usr/share/lilypond/VERSION/fonts/otf/}) to
+ @file{~/.fonts/}. The SVG output should be compatible with any
SVG editor or user agent.
@item scm
found the search will continue in subsequent directories.
@item -i,--init=@var{file}
-Set init file to @var{file} (default: @file{init@/.ly}).
+Set init file to @var{file} (default: @file{init.ly}).
@cindex folder, directing output to
@cindex output filename, setting
LilyPond needs to read a number of files while running. All these files
are to be copied into the jail, under the same path they appear in the
real root filesystem. The entire content of the LilyPond installation
-(e.g., @file{/@/usr/@/share/@/lilypond})
+(e.g., @file{/usr/share/lilypond})
should be copied.
If problems arise, the simplest way to trace them down is to run
@item LILYPOND_DATADIR
This specifies a directory where locale messages and
data files will be looked up by default. The directory should contain
-subdirectories called @file{ly/@/}, @file{ps/@/}, @file{tex/@/}, etc.
+subdirectories called @file{ly/}, @file{ps/}, @file{tex/}, etc.
@item LANG
This selects the language for the warning messages.
@unnumberedsubsec Apparent error in @code{../ly/init.ly}
Various obscure error messages may appear about syntax errors in
-@file{@/.@/./@/ly/@/init@/.ly} if the input file is not correctly formed,
+@file{../ly/init.ly} if the input file is not correctly formed,
for example, if it does not contain correctly
matched braces or quote signs.
@code{Makefile} that defines what files depend on what others and what
commands you need to give the operating system to produce one file from
another. For example the makefile would spell out how to produce
-@file{ballad@/.pdf} and @file{ballad@/.midi} from @file{ballad@/.ly} by
+@file{ballad.pdf} and @file{ballad.midi} from @file{ballad.ly} by
running Lilypond.
There are times when it is a good idea to create a @code{Makefile}
`-- symphonyDefs.ily
@end example
-The @file{@/.ly} files in the @file{Scores} and
-@file{Parts} directories get their notes from @file{@/.ily}
+The @file{.ly} files in the @file{Scores} and
+@file{Parts} directories get their notes from @file{.ily}
files in the @file{Notes} directory:
@example
@noindent
in the directory containing the file. This will upgrade
-@file{myfile@/.ly} in-place and preserve the original file in
-@file{myfile@/.ly@/~}.
+@file{myfile.ly} in-place and preserve the original file in
+@file{myfile.ly~}.
@warning{@command{convert-ly} always converts up to the last
syntax change handled by it. This means that the @code{\version}
If the simple @command{convert-ly -e *.ly} command fails because the
expanded command line becomes too long, the @command{convert-ly}
command may be placed in a loop instead. This example for UNIX
-will upgrade all @file{@/.ly} files in the current directory
+will upgrade all @file{.ly} files in the current directory
@example
for f in *.ly; do convert-ly -e $f; done;