X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2FTRANSLATION;h=82798c5d45106c3436d46e8ef32b3522d0995dfa;hb=2820653d0e8f00674fd986ad92a6e3ca4342ee37;hp=5ffe6f1b905cf8ac36b33a0112cc7586bd3a45bf;hpb=b486cb8f17cf0281a20e0a7e5fa1afd5226f19a8;p=lilypond.git diff --git a/Documentation/TRANSLATION b/Documentation/TRANSLATION index 5ffe6f1b90..82798c5d45 100644 --- a/Documentation/TRANSLATION +++ b/Documentation/TRANSLATION @@ -47,6 +47,10 @@ The reader is supposed to be familiar with Git, for example by having experience from lilypond.org translation; see http://git.sv.gnu.org/gitweb/?p=lilypond.git;a=blob_plain;f=README;hb=web/master +If you do not have this experience, you may want to read the first two +chapters of Git User's Manual at +http://www.kernel.org/pub/software/scm/git/docs/user-manual.html + REQUIREMENTS @@ -89,7 +93,7 @@ Cd into Documentation and run: where is the ISO 639 language code. Add a language definition for your language in -buildscripts/langdefs.py. +python/langdefs.py. See next section about what files to translate and the following detailed instructions after the next section. @@ -111,68 +115,69 @@ Files marked with priority 3, 4 or 5 may be submitted individually. Word counts (excluding lilypond snippets) are given for each file. -1- Documentation index and Tutorial -412 user/lilypond-learning.tely -5685 user/tutorial.itely +429 user/lilypond-learning.tely +6365 user/tutorial.itely 23 user/dedication.itely -378 user/macros.itexi -228 index.html.in -3438 po/lilypond-doc.pot (translate to po/.po) -10164 total +423 user/macros.itexi +171 index.html.in +6346 po/lilypond-doc.pot (translate to po/.po) +--- ../lilypond-texi2html.init (section TRANSLATIONS) +13757 total -2- Introduction and beginning of Application Usage 411 user/preface.itely -3678 user/introduction.itely -390 user/lilypond-program.tely -1681 user/install.itely (partial translation) -1012 user/setup.itely -2879 user/running.itely -10051 total +3855 user/introduction.itely +407 user/lilypond-program.tely +1928 user/install.itely (partial translation) +1149 user/setup.itely +2827 user/running.itely +10577 total -3- Learning manual -9800 user/fundamental.itely -- Fundamental concepts -12334 user/tweaks.itely -- Tweaking output -3005 user/working.itely -- Working on LilyPond files +10318 user/fundamental.itely -- Fundamental concepts +14775 user/tweaks.itely -- Tweaking output +3007 user/working.itely -- Working on LilyPond files 483 user/templates.itely -- Templates -25622 total +28583 total -4- Notation reference -547 user/lilypond.tely +695 user/lilypond.tely 91 user/notation.itely -- Musical notation -2948 user/pitches.itely -6785 user/rhythms.itely -1119 user/expressive.itely -556 user/repeats.itely -1000 user/simultaneous.itely -1800 user/staff.itely -908 user/editorial.itely -2082 user/text.itely -73 user/specialist.itely -- Specialist notation -2799 user/vocal.itely -1352 user/chords.itely +3123 user/pitches.itely +5236 user/rhythms.itely +1146 user/expressive.itely +555 user/repeats.itely +1455 user/simultaneous.itely +1701 user/staff.itely +895 user/editorial.itely +2286 user/text.itely +76 user/specialist.itely -- Specialist notation +2670 user/vocal.itely +1464 user/chords.itely 702 user/piano.itely -747 user/percussion.itely +810 user/percussion.itely 826 user/guitar.itely 66 user/strings.itely 242 user/bagpipes.itely -3474 user/ancient.itely -5431 user/input.itely -- Input syntax +4487 user/ancient.itely +5873 user/input.itely -- Input syntax 2164 user/non-music.itely -- Non-musical notation -7896 user/spacing.itely -- Spacing issues -8377 user/changing-defaults.itely -- Changing defaults -5218 user/programming-interface.itely -- Interfaces for programmers -1146 user/notation-appendices.itely -- Notation manual tables +8451 user/spacing.itely -- Spacing issues +11391 user/changing-defaults.itely -- Changing defaults +5202 user/programming-interface.itely -- Interfaces for programmers +1190 user/notation-appendices.itely -- Notation manual tables 250 user/cheatsheet.itely -- Cheat sheet -58599 total +63047 total -5- Application usage -3175 user/lilypond-book.itely -- LilyPond-book -995 user/converters.itely -- Converting from other formats -4170 total +3248 user/lilypond-book.itely -- LilyPond-book +1171 user/converters.itely -- Converting from other formats +4419 total -6- Appendices whose translation is optional -299 user/literature.itely +310 user/literature.itely 960 user/scheme-tutorial.itely (needs to be revised first) -1259 total +1270 total TRANSLATION DETAILED INSTRUCTIONS @@ -299,6 +304,11 @@ Small tip: to see only which files need to be updated, do make ISOLANG= check-translation | grep 'diff --git' +To avoid printing terminal colors control characters, which is often +desirable when you redirect output to a file, run + + make ISOLANG= NO_COLOR=1 check-translation + Global state of the translation is recorded in Documentation/translations.html.in, which is used to generate @@ -356,7 +366,11 @@ This script overwrites music snippets in /user/every.itely with music snippets from user/every.itely. It ignores skeleton files, and keeps intact music snippets preceded with a line starting with '@c KEEP LY'; it reports an error for each .itely that has not the same -music snippet count in both languages. +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 "git diff" before committing; if you don't do so, +some @lilypond snippets might be broken or make no sense in their +context. Finally, a command runs the three update processes above for all enabled languages (from Documentation): @@ -397,13 +411,17 @@ between files, without updating contents itself. In other words, the game is catching where has gone each section. In Learning manual, and in Notation Reference sections which have been revised in GDP, there may be completely new sections: in this case, copy @node and -@section-command from English docs, and put the usual tricky line -'UNTRANSLATED NODE: IGNORE ME'. Note that it is not possible to -exactly match subsections or subsubsections of documentation in -English, when contents has been deeply revised; in this case, kee -obsolete (sub)subsections in the translation. +@section-command from English docs, and add the marker for +untranslated status '@untranslated' on a single line. Note that it is +not possible to exactly match subsections or subsubsections of +documentation in English, when contents has been deeply revised; in +this case, keep obsolete (sub)subsections in the translation, marking +them with a line '@c obsolete' just before the node. + +4) update sections finished in GDP; check sections status at GDP website. + -* Hints for Emacs users (without Emacs AucTeX installed) +* Hints for Emacs users Emacs with Texinfo mode makes this step easier: @@ -652,25 +670,38 @@ which works regardless of the branch checked out. TECHNICAL BACKGROUND A number of Python scripts handle a part of the documentation -translation process. All are located in buildscripts/, except -langdefs.py which is in python/ +translation process. +All scripts used to maintain the translations +are located in scripts/auxiliar/: -* buildlib.py -- module containing common functions (read piped output -of a shell command, use Git) -* langdefs.py -- language definitions module * check_translation.py -- show diff to update a translation * texi-langutils.py -- quickly and dirtily parse Texinfo files to make message catalogs and Texinfo skeleton files * texi-skeleton-update.py -- update Texinfo skeleton files +* update-snippets.py -- synchronize ly snippets with those from +English docs +* translations-status.py -- update translations status pages and word +counts in the file you are reading. +* tely-gettext.py -- gettext node names, section titles and references +in the sources; WARNING only use this script when support for +"makeinfo --html" has been dropped. + +Other scripts are used in the build process, in scripts/build/: * html-gettext.py -- translate node names, section titles and cross references in HTML files generated by makeinfo -* add_html_footer.py (module imported by www_post.py) -- add footer and -tweak links in HTML pages * texi-gettext.py -- gettext node names, section titles and references before calling texi2pdf * mass-link.py -- link or symlink files between English documentation and documentation in other languages -* update-snippets.py -- synchronize ly snippets with those from -English docs -* translations-status.py -- update translations status pages and word -counts in the file you are reading. + +Python modules used by scripts in scripts/auxiliar/ or scripts/build/ (but +not by installed Python scripts) are located in python/auxiliar/: +* manuals_definitions.py -- define manual names and name of +cross-reference Texinfo macros +* buildlib.py -- common functions (read piped output +of a shell command, use Git) +* postprocess_html.py (module imported by www_post.py) -- add footer and +tweak links in HTML pages + +And finally +* python/langdefs.py -- language definitions module