From 9fba11ef87c03ef29127c48cea540889b244e7c9 Mon Sep 17 00:00:00 2001 From: Akira Kakuto Date: Sun, 25 Mar 2018 22:51:55 +0000 Subject: gregorio-5.1.1 git-svn-id: svn://tug.org/texlive/trunk@47119 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/texk/README | 4 +- Build/source/texk/gregorio/ChangeLog | 5 + Build/source/texk/gregorio/TLpatches/ChangeLog | 4 + Build/source/texk/gregorio/TLpatches/TL-Changes | 4 +- Build/source/texk/gregorio/configure | 22 +-- .../source/texk/gregorio/gregorio-src/CHANGELOG.md | 18 +- .../texk/gregorio/gregorio-src/CONTRIBUTORS.md | 2 +- Build/source/texk/gregorio/gregorio-src/COPYING.md | 6 +- .../source/texk/gregorio/gregorio-src/Makefile.am | 4 +- Build/source/texk/gregorio/gregorio-src/README.md | 6 +- Build/source/texk/gregorio/gregorio-src/UPGRADE.md | 14 +- .../texk/gregorio/gregorio-src/VersionManager.py | 211 ++++++++++++++++++--- .../source/texk/gregorio/gregorio-src/configure.ac | 6 +- .../gregorio/gregorio-src/contrib/900_gregorio.xml | 2 +- .../texk/gregorio/gregorio-src/contrib/Makefile.am | 4 +- .../texk/gregorio/gregorio-src/contrib/README.md | 92 --------- .../gregorio-src/contrib/TeXShop/Makefile.am | 2 +- .../gregorio-src/contrib/checkSyllabation.py | 2 +- .../gregorio-src/contrib/contrib_README.md | 92 +++++++++ .../texk/gregorio/gregorio-src/contrib/gabc.lang | 2 +- .../texk/gregorio/gregorio-src/contrib/gprocess | 2 +- .../texk/gregorio/gregorio-src/install-gtex.sh | 6 +- Build/source/texk/gregorio/gregorio-src/install.sh | 2 +- .../texk/gregorio/gregorio-src/src/Makefile.am | 2 +- Build/source/texk/gregorio/gregorio-src/src/bool.h | 2 +- .../texk/gregorio/gregorio-src/src/characters.c | 2 +- .../texk/gregorio/gregorio-src/src/characters.h | 2 +- .../source/texk/gregorio/gregorio-src/src/config.h | 2 +- .../texk/gregorio/gregorio-src/src/dump/dump.c | 2 +- .../gregorio/gregorio-src/src/encode_utf8strings.c | 2 +- .../gregorio/gregorio-src/src/enum_generator.h | 2 +- .../src/gabc/gabc-elements-determination.c | 2 +- .../src/gabc/gabc-glyphs-determination.c | 2 +- .../src/gabc/gabc-notes-determination-l.c | 2 +- .../src/gabc/gabc-notes-determination.l | 2 +- .../src/gabc/gabc-score-determination-l.c | 2 +- .../src/gabc/gabc-score-determination-y.c | 2 +- .../src/gabc/gabc-score-determination.c | 2 +- .../src/gabc/gabc-score-determination.h | 2 +- .../src/gabc/gabc-score-determination.l | 2 +- .../src/gabc/gabc-score-determination.y | 2 +- .../gregorio/gregorio-src/src/gabc/gabc-write.c | 2 +- .../texk/gregorio/gregorio-src/src/gabc/gabc.h | 2 +- .../gregorio/gregorio-src/src/gregorio-utils.c | 4 +- .../src/gregoriotex/gregoriotex-position.c | 2 +- .../src/gregoriotex/gregoriotex-write.c | 2 +- .../gregorio-src/src/gregoriotex/gregoriotex.h | 2 +- .../texk/gregorio/gregorio-src/src/messages.c | 2 +- .../texk/gregorio/gregorio-src/src/messages.h | 2 +- .../texk/gregorio/gregorio-src/src/plugins.h | 2 +- Build/source/texk/gregorio/gregorio-src/src/sha1.c | 2 +- Build/source/texk/gregorio/gregorio-src/src/sha1.h | 2 +- .../source/texk/gregorio/gregorio-src/src/struct.c | 2 +- .../source/texk/gregorio/gregorio-src/src/struct.h | 2 +- .../texk/gregorio/gregorio-src/src/struct_iter.h | 2 +- .../texk/gregorio/gregorio-src/src/support.c | 2 +- .../texk/gregorio/gregorio-src/src/support.h | 2 +- .../texk/gregorio/gregorio-src/src/unicode.c | 2 +- .../texk/gregorio/gregorio-src/src/unicode.h | 2 +- .../texk/gregorio/gregorio-src/src/utf8strings.h | 2 +- .../gregorio/gregorio-src/src/utf8strings.h.in | 2 +- .../gregorio-src/src/vowel/vowel-rules-l.c | 2 +- .../gregorio-src/src/vowel/vowel-rules-y.c | 2 +- .../gregorio/gregorio-src/src/vowel/vowel-rules.h | 2 +- .../gregorio/gregorio-src/src/vowel/vowel-rules.l | 2 +- .../gregorio/gregorio-src/src/vowel/vowel-rules.y | 2 +- .../texk/gregorio/gregorio-src/src/vowel/vowel.c | 2 +- .../texk/gregorio/gregorio-src/src/vowel/vowel.h | 2 +- .../gregorio-src/windows/gregorio-resources.rc | 8 +- Build/source/texk/gregorio/version.ac | 2 +- 70 files changed, 397 insertions(+), 217 deletions(-) delete mode 100644 Build/source/texk/gregorio/gregorio-src/contrib/README.md create mode 100644 Build/source/texk/gregorio/gregorio-src/contrib/contrib_README.md diff --git a/Build/source/texk/README b/Build/source/texk/README index 2777238e4e7..b4f5ef0a896 100644 --- a/Build/source/texk/README +++ b/Build/source/texk/README @@ -62,8 +62,8 @@ dvipsk - maintained here, by us dvisvgm 2.3.5 - checked 24mar18 http://dvisvgm.bplaced.net/Downloads -gregorio 5.1.0 - checked 12mar18 - CTAN/support/gregoriotex/gregorio-5.1.0.zip +gregorio 5.1.1 - checked 25mar18 + CTAN/support/gregoriotex/gregorio-5.1.1.zip gsftopk - from Paul Vojta's xdvi? diff --git a/Build/source/texk/gregorio/ChangeLog b/Build/source/texk/gregorio/ChangeLog index 4d1d2a0b0c6..4e3aeac497e 100644 --- a/Build/source/texk/gregorio/ChangeLog +++ b/Build/source/texk/gregorio/ChangeLog @@ -1,3 +1,8 @@ +2018-03-25 Akira Kakuto + + * Import gregorio-5.1.1. + * version.ac: Adapted. + 2018-03-12 Akira Kakuto * Import gregorio-5.1.0. diff --git a/Build/source/texk/gregorio/TLpatches/ChangeLog b/Build/source/texk/gregorio/TLpatches/ChangeLog index ba415f0f67d..619db571014 100644 --- a/Build/source/texk/gregorio/TLpatches/ChangeLog +++ b/Build/source/texk/gregorio/TLpatches/ChangeLog @@ -1,3 +1,7 @@ +2018-03-25 Akira Kakuto + + Import gregorio-5.1.1. + 2018-03-12 Akira Kakuto Import gregorio-5.1.0. diff --git a/Build/source/texk/gregorio/TLpatches/TL-Changes b/Build/source/texk/gregorio/TLpatches/TL-Changes index 09c98ac1f46..fdc2a780c05 100644 --- a/Build/source/texk/gregorio/TLpatches/TL-Changes +++ b/Build/source/texk/gregorio/TLpatches/TL-Changes @@ -1,5 +1,5 @@ -Changes applied to the gregorio-5.1.0 tree as obtained from: - CTAN/support/gregoriotex/gregorio-5.1.0.zip +Changes applied to the gregorio-5.1.1 tree as obtained from: + CTAN/support/gregoriotex/gregorio-5.1.1.zip Remove: Makefile.in diff --git a/Build/source/texk/gregorio/configure b/Build/source/texk/gregorio/configure index fcc63e5a027..2e9671acd59 100755 --- a/Build/source/texk/gregorio/configure +++ b/Build/source/texk/gregorio/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for Gregorio (TeX Live) 5.1.0. +# Generated by GNU Autoconf 2.69 for Gregorio (TeX Live) 5.1.1. # # Report bugs to . # @@ -590,8 +590,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='Gregorio (TeX Live)' PACKAGE_TARNAME='gregorio--tex-live-' -PACKAGE_VERSION='5.1.0' -PACKAGE_STRING='Gregorio (TeX Live) 5.1.0' +PACKAGE_VERSION='5.1.1' +PACKAGE_STRING='Gregorio (TeX Live) 5.1.1' PACKAGE_BUGREPORT='tex-k@tug.org' PACKAGE_URL='http://gregorio-project.github.io/' @@ -1330,7 +1330,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures Gregorio (TeX Live) 5.1.0 to adapt to many kinds of systems. +\`configure' configures Gregorio (TeX Live) 5.1.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1401,7 +1401,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of Gregorio (TeX Live) 5.1.0:";; + short | recursive ) echo "Configuration of Gregorio (TeX Live) 5.1.1:";; esac cat <<\_ACEOF @@ -1521,7 +1521,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -Gregorio (TeX Live) configure 5.1.0 +Gregorio (TeX Live) configure 5.1.1 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2360,7 +2360,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by Gregorio (TeX Live) $as_me 5.1.0, which was +It was created by Gregorio (TeX Live) $as_me 5.1.1, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -8046,7 +8046,7 @@ fi # Define the identity of the package. PACKAGE='gregorio--tex-live-' - VERSION='5.1.0' + VERSION='5.1.1' cat >>confdefs.h <<_ACEOF @@ -14466,7 +14466,7 @@ Usage: $0 [OPTIONS] Report bugs to ." lt_cl_version="\ -Gregorio (TeX Live) config.lt 5.1.0 +Gregorio (TeX Live) config.lt 5.1.1 configured by $0, generated by GNU Autoconf 2.69. Copyright (C) 2011 Free Software Foundation, Inc. @@ -16053,7 +16053,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by Gregorio (TeX Live) $as_me 5.1.0, which was +This file was extended by Gregorio (TeX Live) $as_me 5.1.1, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -16120,7 +16120,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -Gregorio (TeX Live) config.status 5.1.0 +Gregorio (TeX Live) config.status 5.1.1 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/Build/source/texk/gregorio/gregorio-src/CHANGELOG.md b/Build/source/texk/gregorio/gregorio-src/CHANGELOG.md index 9d14be3ac10..a19e75cec41 100644 --- a/Build/source/texk/gregorio/gregorio-src/CHANGELOG.md +++ b/Build/source/texk/gregorio/gregorio-src/CHANGELOG.md @@ -2,6 +2,10 @@ All notable changes to this project will be documented in this file. As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/). It follows [some conventions](http://keepachangelog.com/). +## [5.1.1] - 2018-03-25 +### Fixed +- Various issues with the documentation. + ## [5.1.0] - 2018-03-11 ### Added - Added support for virgula (gabc: `` `0``) and divisio minima (gabc: `,0`) on the ledger line above the staff (see [#1370](https://github.com/gregorio-project/gregorio/issues/1370)). @@ -21,7 +25,7 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/). ## [5.0.1] - 2017-04-16 ### Fixed -- Fixed a bug in the TeXLive compatibility code for Windows users. Thanks to Akira Kakuto for the catch. +- Fixed a bug in the TeX Live compatibility code for Windows users. Thanks to Akira Kakuto for the catch. ## [5.0.0] - 2017-04-15 ### Fixed @@ -79,7 +83,7 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/). ## [4.2.1][Unreleased] ### Fixed -- Debian build scripts now use directories compatible with the TeXLive 2016 packaging of Gregorio (see [#1241](https://github.com/gregorio-project/gregorio/issues/1241)). +- Debian build scripts now use directories compatible with the TeX Live 2016 packaging of Gregorio (see [#1241](https://github.com/gregorio-project/gregorio/issues/1241)). ## [4.2.0] - 2016-09-23 @@ -173,7 +177,7 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/). ## [4.1.2] - 2016-05-08 ### Changed - The parmesan font is now called granapadano. If you were using `\gresetgregoriofont{parmesan}`, you should now use `\gresetgregoriofont{granapadano}`. See [#1075](https://github.com/gregorio-project/gregorio/issues/1075). -- GregorioTeX is now compatible with TeXLive 2016 +- GregorioTeX is now compatible with TeX Live 2016 ## [4.1.1] - 2016-03-10 @@ -214,7 +218,7 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/). - Command line output (help message, version message, error handling) has been improved, see [#891](https://github.com/gregorio-project/gregorio/issues/891) - Windows installer no longer copies the executable into the TeX bin directory. Instead it has the option to add its own bin directory to PATH. - `system-setup.sh` has become `system-setup.command` so that it is double click executable on Mac. -- Post install options for Windows installer have been simplified. There are no longer separate options for MiKTeX and TeXLive. Instead the installer will determine which you have itself and act accordingly. +- Post install options for Windows installer have been simplified. There are no longer separate options for MiKTeX and TeX Live. Instead the installer will determine which you have itself and act accordingly. - Windows installer will check more locations for old installations to remove. - Height of the porrectus have been altered (first note moved up, second also moved up when second ambitus is more than one) so that they are more coherent with the punctum height. The porrectus stroke drawings have also been slightly altered to be slightly thinner and sharper around the bottom note (see [#858](https://github.com/gregorio-project/gregorio/issues/858)). - When a syllable is preceeded by a punctum mora, gregorio now ignores the punctum mora in the spacing of the syllables by default, and also adds a custom space (defaulting to 0). You can change this behavior with `\gresetshiftaftermora{}`, see GregorioRef for its arguments. To balance the output, space before a punctum mora has been made slightly thinner, more in line with old Solesmes books. (For the change requests, see [#795](https://github.com/gregorio-project/gregorio/issues/795) and [#871](https://github.com/gregorio-project/gregorio/issues/871)). @@ -258,7 +262,7 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/). - New headers for typesetting text after `mode` above the initial: `mode` will be typeset first, using the `modeline` style, then `mode-modifier`, using the `modemodifier` style, then `mode-differentia`, using the `modedifferentia` style. See GregorioRef for details (for the change request, see [#756](https://github.com/gregorio-project/gregorio/issues/756)). - Automatic line breaks before a `` block may be made ragged by using `\gresetbreakbeforeeuouae{ragged}`. See GregorioRef for details (for the change request, see [#764](https://github.com/gregorio-project/gregorio/issues/764)). - The ability to typeset simple slurs. See GregorioRef for details (for the change request, see [#776](https://github.com/gregorio-project/gregorio/issues/776)). -- More control over the alignment of the annotation. You can now set either the first line or the last line of the annotation as the controling line with `\gresetannotationby{firstline}` and `\gresetannotationby{lastline}` respectively. Additionaly, within the line you can specify the top, baseline, or bottom of the line as the alignment point with `\gresetannotationvalign{top}`, `\gresetannotation{baseline}`, and `\gresetannotationvalgin{bottom}` respectively. Default behavior is baseline of the top line (as it was before). These alignment controls are applied before `annotationraise` is taken into account. See [#768](https://github.com/gregorio-project/gregorio/issues/768) for details. +- More control over the alignment of the annotation. You can now set either the first line or the last line of the annotation as the controling line with `\gresetannotationby{firstline}` and `\gresetannotationby{lastline}` respectively. Additionaly, within the line you can specify the top, baseline, or bottom of the line as the alignment point with `\gresetannotationvalign{top}`, `\gresetannotationvalign{baseline}`, and `\gresetannotationvalign{bottom}` respectively. Default behavior is baseline of the top line (as it was before). These alignment controls are applied before `annotationraise` is taken into account. See [#768](https://github.com/gregorio-project/gregorio/issues/768) for details. - More control over the placement of the commentary. You can now set the amount of space between the lines of a multi-line commentary with `commentaryseparation` and the distance from the top line of the staff to the baseline of the bottom line of the commentary with `commentaryraise`. See [#662](https://github.com/gregorio-project/gregorio/issues/662) for original request. - Styles for the annotation and the commentary. `annotation` has no default styling. `commentary` defaults to footnote sized italics. - `\grecommentary` now takes an optional argument which will add extra space between the commentary and the score for just the next score. @@ -361,7 +365,7 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/). - The spacing of manual in-line custos (`(f+)` in gabc) is now consistent with the spacing of automatic in-line custos (`(z0)` in gabc). See [#642](https://github.com/gregorio-project/gregorio/issues/642). - Signs on the climacus praepunctis deminutus `(ghgf~)` neume are now positioned correctly. See [#650](https://github.com/gregorio-project/gregorio/issues/650) - Mac installer has been made SIP compliant (i.e. it now works on El Capitan). -- Mac installer can now detect installations of TeXLive done with MacPorts or the command-line tool provided by TUG. +- Mac installer can now detect installations of TeX Live done with MacPorts or the command-line tool provided by TUG. - Windows executable has file version information attached correctly so that the installer can properly recognize and replace the binary during an upgrade process. - Spacing was too large when alteration begins a syllable, see [#663](https://github.com/gregorio-project/gregorio/issues/663). @@ -422,7 +426,7 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/). - `\gredefsymbol` for (re-)defining an arbitrary non-score glyph that scales with the text - `\gredefsizedsymbol` for (re-)defining an arbitary non-score glyph that requires a point-size to be specified. See GregorioRef.pdf for full details. -- Added `--with-kpathsea` option to configure script, to check input and output file against `openout_any` and `openin_any` settings of texmf.cnf (TeXLive only). Necessary to be included in `shell_escape_commands` in TeXLive. +- Added `--with-kpathsea` option to configure script, to check input and output file against `openout_any` and `openin_any` settings of texmf.cnf (TeX Live only). Necessary to be included in `shell_escape_commands` in TeX Live. - Support for `lualatex -recorder`. Autocompiled gabc and gtex files will now be properly recorded so that programs like `latexmk -recorder` can detect the need to rebuild the PDF when a gabc file changes. - A vertical episema may now be forced to appear above or below a note. In gabc, use `'0` for the vertical episema to appear below and `'1` for the vertical episema to appear above (see [#385](https://github.com/gregorio-project/gregorio/issues/385)). - The first word, first syllable, and first letter of the first syllable that is *not* interpreted as the initial of the score can now be styled from TeX. Use `\grechangestyle` to modify the `firstsyllableinitial`, `firstsyllable`, and `firstword` as desired. diff --git a/Build/source/texk/gregorio/gregorio-src/CONTRIBUTORS.md b/Build/source/texk/gregorio/gregorio-src/CONTRIBUTORS.md index 1fab2743961..3fc29b0cbc1 100644 --- a/Build/source/texk/gregorio/gregorio-src/CONTRIBUTORS.md +++ b/Build/source/texk/gregorio/gregorio-src/CONTRIBUTORS.md @@ -6,7 +6,7 @@ Gregorio is developed by: * [Olivier Berten](mailto:olivier.berten@gmail.com) * [Henry So Jr](mailto:henryso@panix.com) * [Br. Samuel Springuel](mailto:rpspringuel@gmail.com) - * [Br. Elijah Schwab](mailto:elijahschwab@gmail.com) + * [Rev. Elijah Schwab](mailto:elijahschwab@gmail.com) * [Jakub JelĂ­nek](mailto:jakub@redhat.com) * [Br. Gabriel-Marie](mailto:brgabriel@sspx.com) diff --git a/Build/source/texk/gregorio/gregorio-src/COPYING.md b/Build/source/texk/gregorio/gregorio-src/COPYING.md index 431860c6877..5acf99da657 100644 --- a/Build/source/texk/gregorio/gregorio-src/COPYING.md +++ b/Build/source/texk/gregorio/gregorio-src/COPYING.md @@ -1,8 +1,8 @@ #License of Gregorio -The program Gregorio is (C) 2007-2016 The Gregorio project, see -[CONTRIBUTORS.md](CONTRIBUTORS.md) for authors. It is distributed under -the GPLv3 license, printed below. +The program Gregorio is Copyright (C) 2007-2018 The Gregorio Project, +see [CONTRIBUTORS.md](CONTRIBUTORS.md) for authors. It is distributed +under the GPLv3 license, printed below. The GPLv3 license applies to all files in the Gregorio sources and repository, except: diff --git a/Build/source/texk/gregorio/gregorio-src/Makefile.am b/Build/source/texk/gregorio/gregorio-src/Makefile.am index 37dd5032934..694de13cb53 100644 --- a/Build/source/texk/gregorio/gregorio-src/Makefile.am +++ b/Build/source/texk/gregorio/gregorio-src/Makefile.am @@ -1,4 +1,4 @@ -# Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md) +# Copyright (C) 2006-2018 The Gregorio Project (see CONTRIBUTORS.md) # # This file is part of Gregorio. # @@ -23,6 +23,8 @@ EXTRA_DIST = README.md CHANGELOG.md CONTRIBUTING.md CONTRIBUTORS.md \ UPGRADE.md COPYING.md .gregorio-version VersionManager.py \ build.sh install.sh install-gtex.sh +MAINTAINERCLEANFILES = gregoriotex.ctan.zip + export TOP_LEVEL_MAKE = true gregorio: diff --git a/Build/source/texk/gregorio/gregorio-src/README.md b/Build/source/texk/gregorio/gregorio-src/README.md index 782a4e3c4f2..215993bdeec 100644 --- a/Build/source/texk/gregorio/gregorio-src/README.md +++ b/Build/source/texk/gregorio/gregorio-src/README.md @@ -14,11 +14,11 @@ You can also try it online [here](http://dev.illuminarepublications.com/gregorio ## Installation -You need a recent and working [TeXLive](https://www.tug.org/texlive/), on top of which you just need to install latest [Gregorio release](https://github.com/gregorio-project/gregorio/releases). See [the website](http://gregorio-project.github.io/installation.html) for more details. +You need a recent and working [TeX Live](https://www.tug.org/texlive/), on top of which you just need to install latest [Gregorio release](https://github.com/gregorio-project/gregorio/releases). See [the website](http://gregorio-project.github.io/installation.html) for more details. -## Building for inclusion in TeXLive +## Building for inclusion in TeX Live -When building gregorio for inclusion in TeXLive, the gregorio executable must not have the version number suffix that is used for other builds. To make this happen, run `configure` with the `--disable-version-in-exe` option, and the generated Makefile will create a gregorio executable without the version number suffix (i.e., the executable will simply be named `gregorio`). +When building gregorio for inclusion in TeX Live, the gregorio executable must not have the version number suffix that is used for other builds. To make this happen, run `configure` with the `--disable-version-in-exe` option, and the generated Makefile will create a gregorio executable without the version number suffix (i.e., the executable will simply be named `gregorio`). ## Documentation diff --git a/Build/source/texk/gregorio/gregorio-src/UPGRADE.md b/Build/source/texk/gregorio/gregorio-src/UPGRADE.md index 033a977470b..4c33aaf864c 100644 --- a/Build/source/texk/gregorio/gregorio-src/UPGRADE.md +++ b/Build/source/texk/gregorio/gregorio-src/UPGRADE.md @@ -1,6 +1,10 @@ # Upgrade Manual -This file contains instructions to upgrade to a new release of Gregorio. +This file contains instructions to upgrade to a new release of Gregorio. These instructions are cumulative; meaning that you should apply the instructions from all versions between the one you are upgrading from and the current version. + +## 5.1 + +No additional steps are needed to upgrade from 5.0 to 5.1. ## 5.0 @@ -18,7 +22,7 @@ To install the new versions of Gregorio (the font) and Grana Padano, unzip `supp * `system`: the appropriate font folder in `$TEXMFLOCAL` * `user`: the appropriate font folder in `$TEXMFHOME` * ``: the name of an alternate texmf root directory you want to use - + Additionally, if you are building the fonts yourself from a git clone, `install-gtex.sh` and `install_supp_fonts.lua` will install all the fonts you have built, not just the ones they are normally distributed with. **Note:** All the above methods assume you only need to access the fonts from within a TeX document (and thus are designed to put them into the correct folder in a texmf tree). If you want to use the fonts in other programs, then you will need to consult the documentation appropriate to your platform and/or the program and manually move, copy, or link the fonts to the necessary location. @@ -27,7 +31,7 @@ Additionally, if you are building the fonts yourself from a git clone, `install- As of version 5.0, ledger lines are extended through notes on either side of a ledger line that crosses a stem, as long as the notes are within the same element. -The algorithm for this is simple so it can be predictable, and it cannot take into account spacing adjustments made it TeX. This means it may not produce the exactly desired results. In order to get the results you want, you can override the automatic behavior in gabc: +The algorithm for this is simple so it can be predictable, and it cannot take into account spacing adjustments made in TeX. This means it may not produce the exactly desired results. In order to get the results you want, you can override the automatic behavior in gabc: - `[oll:1]` will force an over-the-staff ledger line on a note. - `[oll:0]` will suppress an over-the-staff ledger line on a note. @@ -113,7 +117,7 @@ Prior to version 4.2, Gregorio inconsistenly indicated style errors. Now, error ### Changes to texmf tree -To better comply with the TeXLive directory structure, the location of `gregoriotex.sty` and `gregoriosyms.sty` have changed. +To better comply with the TeX Live directory structure, the location of `gregoriotex.sty` and `gregoriosyms.sty` have changed. *Linux and other users installing from source:* `install-gtex.sh` should remove the old versions before installing the new one. @@ -136,7 +140,7 @@ High notes are now taken into account in vertical spacings. If you would like to ### Last line of score behavior -`\grelooseness` is now `-1` by default. This should prevent orphaned syllable at end of score. If you prefer the old behavior, use `\def\grelooseness{\looseness}` befor including your scores. +`\grelooseness` is now `-1` by default. This should prevent orphaned syllable at end of score. If you prefer the old behavior, use `\def\grelooseness{\looseness}` before including your scores. ## 4.1 diff --git a/Build/source/texk/gregorio/gregorio-src/VersionManager.py b/Build/source/texk/gregorio/gregorio-src/VersionManager.py index f1676fceaf8..7a7c19edb5d 100644 --- a/Build/source/texk/gregorio/gregorio-src/VersionManager.py +++ b/Build/source/texk/gregorio/gregorio-src/VersionManager.py @@ -5,7 +5,7 @@ See VersionUpdate.py -h for help - Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md) + Copyright (C) 2015-2018 The Gregorio Project (see CONTRIBUTORS.md) This file is part of Gregorio. @@ -32,6 +32,7 @@ import subprocess import time import os import locale +import linecache from datetime import date from distutils.util import strtobool @@ -41,7 +42,9 @@ locale.setlocale(locale.LC_TIME, 'C') os.chdir(sys.path[0]) VERSION_FILE = '.gregorio-version' +CURRENTYEAR = str(date.today().year) GREGORIO_FILES = ["configure.ac", + "ctan-o-mat.config", "windows/gregorio-resources.rc", "macosx/Gregorio.pkgproj", "macosx/douninstall.sh", @@ -64,6 +67,106 @@ GREGORIO_FILES = ["configure.ac", "tex/gregoriotex-common.tex", "fonts/squarize.py", ] +COPYRIGHT_FILES = ["install-gtex.sh", + "build-ctan.sh", + "ctan_upload.sh", + "tex/gregoriotex-signs.tex", + "tex/gregorio-vowels.dat", + "tex/gsp-default.tex", + "tex/gregoriotex-nabc.lua", + "tex/gregoriotex-symbols.lua", + "tex/gregoriotex-chars.tex", + "tex/gregoriotex-main.tex", + "tex/gregoriotex-spaces.tex", + "tex/Makefile.am", + "tex/gregoriotex-common.tex", + "tex/gregoriotex-syllable.tex", + "tex/gregoriotex.lua", + "tex/gregoriotex.sty", + "tex/gregoriosyms.sty", + "tex/gregoriotex-nabc.tex", + "tex/gregoriotex.tex", + "tex/gregoriotex-signs.lua", + "tex/gregoriotex-symbols.tex", + "contrib/TeXShop/Makefile.am", + "contrib/900_gregorio.xml", + "contrib/Makefile.am", + "contrib/gabc.lang", + "contrib/gprocess", + "contrib/checkSyllabation.py", + "configure.ac", + "examples/Makefile.am", + "Makefile.am", + "install.sh", + "debian/copyright", + "debian/manpage.xml", + "doc/Command_Index_User.tex", + "doc/Makefile.am", + "doc/GregorioRef.tex", + "doc/Command_Index_gregorio.tex", + "doc/Command_Index_internal.tex", + "doc/GregorioNabcRef.tex", + "doc/Gabc.tex", + "doc/GregorioRef.lua", + "doc/Appendix_Font_Tables.tex", + "VersionManager.py", + "coverage.sh", + "COPYING.md", + "src/characters.h", + "src/plugins.h", + "src/gregoriotex/gregoriotex-write.c", + "src/gregoriotex/gregoriotex.h", + "src/gregoriotex/gregoriotex-position.c", + "src/unicode.c", + "src/unicode.h", + "src/messages.h", + "src/support.c", + "src/sha1.h", + "src/messages.c", + "src/support.h", + "src/sha1.c", + "src/struct.h", + "src/bool.h", + "src/struct_iter.h", + "src/Makefile.am", + "src/dump/dump.c", + "src/encode_utf8strings.c", + "src/enum_generator.h", + "src/gabc/gabc-score-determination.c", + "src/gabc/gabc-elements-determination.c", + "src/gabc/gabc-write.c", + "src/gabc/gabc-notes-determination.l", + "src/gabc/gabc.h", + "src/gabc/gabc-score-determination.l", + "src/gabc/gabc-score-determination.y", + "src/gabc/gabc-score-determination.h", + "src/gabc/gabc-glyphs-determination.c", + "src/utf8strings.h.in", + "src/config.h", + "src/characters.c", + "src/vowel/vowel-rules.y", + "src/vowel/vowel.h", + "src/vowel/vowel-rules.h", + "src/vowel/vowel-rules.l", + "src/vowel/vowel.c", + "src/gregorio-utils.c", + "src/struct.c", + "fonts/gregorio-base.sfd", + "fonts/granapadano-base.sfd", + "fonts/squarize.py", + "fonts/convertsfdtottf.py", + "fonts/Makefile.am", + "fonts/simplify.py", + "fonts/stemsschemas.py", + "fonts/greciliae-base.sfd", + "fonts/gregall.sfd", + "fonts/grelaon.sfd", + "fonts/gresgmodern.sfd", + "fonts/install_supp_fonts.lua", + "windows/gregorio.iss", + "windows/install.lua", + "windows/uninstall.lua", + ] def get_parser(): "Return command line parser" @@ -118,7 +221,7 @@ class Version(object): def __init__(self, versionfile): self.versionfile = versionfile - self.version = self.read_version() + self.version = linecache.getline(self.versionfile, 1).strip('\n') self.filename_version = self.filename_version_from_version(self.version) self.short_tag = None self.date = None @@ -130,19 +233,13 @@ class Version(object): def binary_version_from_version(self, version): "Return binary version number for Windows FILEVERSION" - bin = version.replace('.',',') - if '-' in bin: - bin = bin.replace('-beta',',1') - bin = bin.replace('-rc',',2') + binary = version.replace('.', ',') + if '-' in binary: + binary = binary.replace('-beta', ',1') + binary = binary.replace('-rc', ',2') else: - bin += ',30' - return bin - - def read_version(self): - "Return version for instance variable" - with open(self.versionfile, 'r') as verfile: - self.grever = verfile.readline() - return self.grever.strip('\n') + binary += ',30' + return binary def fetch_version(self): "Prints version" @@ -172,7 +269,7 @@ class Version(object): print('Updating {0} with the new version: {1}\n'.format( self.versionfile, self.version)) with open(self.versionfile, 'w') as verfile: - verfile.write(self.version) + verfile.write('{0}\n{1}'.format(self.version, CURRENTYEAR)) verfile.write('\n\n*** Do not modify this file. ***\n') verfile.write('Use VersionManager.py to change the version.\n') @@ -222,20 +319,48 @@ def replace_version(version_obj): result.append(line) with open(myfile, 'w') as outfile: outfile.write(''.join(result)) + sys.exit(0) + +def update_changelog(newver,upgradetype): + today = date.today() with open('CHANGELOG.md', 'r') as infile: result = [] + develop = False for line in infile: - if '[Unreleased][unreleased]' in line: - result.append(line) - result.append('\n') - result.append('\n') - newline = '## [' + newver + '] - ' + today.strftime("%Y-%m-%d") + '\n' - result.append(newline) + if upgradetype == "patch": + if '[Unreleased][develop]' in line: + print("Found an unreleased develop section.") + print("Patch releases should be based on ctan branch.") + sys.exit(1) + if '[Unreleased][CTAN]' in line: + result.append(line) + result.append('\n') + result.append('\n') + newline = '## [' + newver + '] - ' + today.strftime("%Y-%m-%d") + '\n' + result.append(newline) + else: + result.append(line) else: - result.append(line) - with open('CHANGELOG.md','w') as outfile: + if '[Unreleased][develop]' in line: + develop = True + result.append(line) + result.append('\n') + result.append('\n') + result.append('## [Unreleased][CTAN]\n') + result.append('\n') + result.append('\n') + newline = '## [' + newver + '] - ' + today.strftime("%Y-%m-%d") + '\n' + result.append(newline) + elif '[Unreleased][CTAN]' in line and develop: + continue + else: + result.append(line) + if not develop and upgradetype != "patch": + print("I didn't find a unreleased develop section.") + print("Non-patch releases should be based on develop branch.") + sys.exit(1) + with open('CHANGELOG.md', 'w') as outfile: outfile.write(''.join(result)) - sys.exit(0) def confirm_replace(oldver, newver): "Query the user to confirm action" @@ -262,6 +387,7 @@ def release_candidate(version_obj, not_interactive): newversion = re.sub(r'-.*', '-rc1', oldversion) if (not not_interactive): confirm_replace(oldversion, newversion) + update_changelog(newversion,"releasecandidate") version_obj.update_version(newversion) replace_version(version_obj) @@ -277,6 +403,7 @@ def beta(version_obj, not_interactive): sys.exit(1) if (not not_interactive): confirm_replace(oldversion, newversion) + update_changelog(newversion,"beta") version_obj.update_version(newversion) replace_version(version_obj) @@ -287,6 +414,7 @@ def bump_major(version_obj, not_interactive): newversion = str(int(nums.group(1)) +1) + '.0.0-beta1' if (not not_interactive): confirm_replace(oldversion, newversion) + update_changelog(newversion,"major") version_obj.update_version(newversion) replace_version(version_obj) @@ -297,6 +425,7 @@ def bump_minor(version_obj, not_interactive): newversion = nums.group(1) + str(int(nums.group(2)) +1) + '.0-beta1' if (not not_interactive): confirm_replace(oldversion, newversion) + update_changelog(newversion,"minor") version_obj.update_version(newversion) replace_version(version_obj) @@ -307,6 +436,7 @@ def bump_patch(version_obj, not_interactive): newversion = nums.group(1) + str(int(nums.group(2)) +1) if (not not_interactive): confirm_replace(oldversion, newversion) + update_changelog(newversion,"patch") version_obj.update_version(newversion) replace_version(version_obj) @@ -319,6 +449,7 @@ def set_manual_version(version_obj, user_version, not_interactive): newversion = user_version if (not not_interactive): confirm_replace(oldversion, newversion) + update_changelog(newversion,"manual") version_obj.update_version(newversion) replace_version(version_obj) @@ -328,9 +459,38 @@ def do_release(version_obj, not_interactive): newversion = re.sub(r'([\d.]+)-?.*', r'\1', oldversion) if (not not_interactive): confirm_replace(oldversion, newversion) + update_changelog(newversion,"release") version_obj.update_version(newversion) replace_version(version_obj) +def copyright_year(): + "Check and update copyright year as needed" + fileyear = linecache.getline(VERSION_FILE, 2).strip() + def year_range(matchobj): + "Check and add a year range to the copyright" + if matchobj.group(1) is not None: + return re.sub(fileyear, CURRENTYEAR, matchobj.group(0)) + return re.sub(fileyear, fileyear+'-'+CURRENTYEAR, matchobj.group(0)) + + if int(fileyear) != int(CURRENTYEAR): + print('Updating copyright year.') + for myfile in COPYRIGHT_FILES: + result = [] + with open(myfile, 'r') as infile: + for line in infile: + if re.search(r'[C|c]opyright.*Gregorio Project', line): + result.append(re.sub(r'(\d{4}-)?(\d{4})', year_range, line)) + elif re.search(r'[C|c]opyright.*Elie Roux', line): + result.append(re.sub(r'(\d{4}-)?(\d{4})', year_range, line)) + elif re.search(r'[C|c]opyright.*Richard Chonak', line): + result.append(re.sub(r'(\d{4}-)?(\d{4})', year_range, line)) + elif re.search(r'[C|c]opyright.*Jakub Jelinek', line): + result.append(re.sub(r'(\d{4}-)?(\d{4})', year_range, line)) + else: + result.append(line) + with open(myfile, 'w') as outfile: + outfile.write(''.join(result)) + def main(): "Main function" parser = get_parser() @@ -348,7 +508,8 @@ def main(): gregorio_version.fetch_version_debian_stable() elif args.get_debian_git: gregorio_version.fetch_version_debian_git() - elif args.beta: + copyright_year() + if args.beta: beta(gregorio_version, not_interactive) elif args.major: bump_major(gregorio_version, not_interactive) diff --git a/Build/source/texk/gregorio/gregorio-src/configure.ac b/Build/source/texk/gregorio/gregorio-src/configure.ac index 19767019d8e..4368ff1fd92 100644 --- a/Build/source/texk/gregorio/gregorio-src/configure.ac +++ b/Build/source/texk/gregorio/gregorio-src/configure.ac @@ -1,5 +1,5 @@ dnl Gregorio -dnl Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md) +dnl Copyright (C) 2006-2018 The Gregorio Project (see CONTRIBUTORS.md) dnl dnl This file is part of Gregorio. dnl @@ -16,8 +16,8 @@ dnl dnl You should have received a copy of the GNU General Public License dnl along with Gregorio. If not, see . -AC_INIT([gregorio],[5.1.0],[https://github.com/gregorio-project/gregorio/issues],[gregorio],[http://gregorio-project.github.io/]) -FILENAME_VERSION="5_1_0" +AC_INIT([gregorio],[5.1.1],[https://github.com/gregorio-project/gregorio/issues],[gregorio],[http://gregorio-project.github.io/]) +FILENAME_VERSION="5_1_1" AC_SUBST(FILENAME_VERSION) AC_DEFINE_UNQUOTED(FILENAME_VERSION, "$FILENAME_VERSION", [version suitable for file names]) MK="" diff --git a/Build/source/texk/gregorio/gregorio-src/contrib/900_gregorio.xml b/Build/source/texk/gregorio/gregorio-src/contrib/900_gregorio.xml index b3886206472..ca392d0c794 100644 --- a/Build/source/texk/gregorio/gregorio-src/contrib/900_gregorio.xml +++ b/Build/source/texk/gregorio/gregorio-src/contrib/900_gregorio.xml @@ -3,7 +3,7 @@ XML file for using gregorio inside scribus. Copyright (C) 2009 Pierre Couderc . Copyright (C) 2010 Elie Roux - Copyright (C) 2015-2017 The Gregorio Project (see CONTRIBUTORS.md) + Copyright (C) 2015-2018 The Gregorio Project (see CONTRIBUTORS.md) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by diff --git a/Build/source/texk/gregorio/gregorio-src/contrib/Makefile.am b/Build/source/texk/gregorio/gregorio-src/contrib/Makefile.am index c4c226cee14..0b5dec22ed7 100644 --- a/Build/source/texk/gregorio/gregorio-src/contrib/Makefile.am +++ b/Build/source/texk/gregorio/gregorio-src/contrib/Makefile.am @@ -1,4 +1,4 @@ -# Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md) +# Copyright (C) 2006-2018 The Gregorio Project (see CONTRIBUTORS.md) # # This file is part of Gregorio. # @@ -17,4 +17,4 @@ SUBDIRS = TeXShop -EXTRA_DIST = gprocess gabc.xml gabc.lang gabc.vim 900_gregorio.xml gregorio.png gabc-syntax.plist README.md system-setup.command system-setup.bat config-texworks.command checkSyllabation.py +EXTRA_DIST = gprocess gabc.xml gabc.lang gabc.vim 900_gregorio.xml gregorio.png gabc-syntax.plist contrib_README.md system-setup.command system-setup.bat config-texworks.command checkSyllabation.py diff --git a/Build/source/texk/gregorio/gregorio-src/contrib/README.md b/Build/source/texk/gregorio/gregorio-src/contrib/README.md deleted file mode 100644 index 57b1ee3ba84..00000000000 --- a/Build/source/texk/gregorio/gregorio-src/contrib/README.md +++ /dev/null @@ -1,92 +0,0 @@ -# Third party scripts - -This repository contains various small scripts or modules for third-party softwares to use Gregorio. - -## Scribus - -Gregorio can be used in [Scribus](http://wiki.scribus.net/canvas/Scribus) using three files: - - * `gregorio-scribus.lua` - * `gregorio.png` - * `900_gregorio.xml` - -To install Gregorio support in Scribus: - - * copy the three files in the editorconfig folder of scribus (`/usr/share/scribus/editorconfig` under Linux, `C:\Program Files\Scribus\share\editorconfig` -under Windows). - * read the comments in `900_gregorio.xml` and change some variables accordingly - * in Scribus: - * go in `File->Preferences->External Tools` - * click `Add` in the `Render Frames` - * select the file `900_gregorio.xml` - -After that you can insert a render frame using Gregorio, and simply -typing gabc (`right-click->edit sources`). - -For more details see [the website](http://gregorio-project.github.io/introduction-scribus.html). - -## Syllabation checker - -The scripts in this folder allow to check the syllabation of a gabc score against syllabation rules that you must provide. - -#### Dependencies - -The main script, `checkSyllabation.py` is in Python3, so you obviously need it. It uses the [pyphen](http://pyphen.org/) package. You will also need the hyphenation of the text language in the `libhyphen` format in order to run it. - -If you want liturgical Latin hyphenation rules, you can pick those from the [hyphen-la](https://github.com/gregorio-project/hyphen-la) project. They are available in `libhyphen` format on the [webpage](http://gregorio-project.github.io/hyphen-la/). - -#### Running the scripts - -Once you have the hyphenation rules in the `libhyphen` format, you can check one score by running - -``` -checkSyllabation.py -p path/to/file.dic my_file.gabc -``` - -where `path/to/file.dic` is the path to the hyphenation rules file (default is `hyph_la_liturgical.dic` in the current directory). You can also analyze all gabc scores of a directory (with subdirectories) by replacing `my_file.gabc` by the name of the directory. By default, the script analyzes the current directory. The script outputs the report to `stdout` on Unix systems, and to `check-syllabation.log` on Windows systems. - -You can see more options by running - -``` -checkSyllabation.py --help -``` - -#### Hyphenation problems - -If you encounter problems of hyphenation, meaning you disagree with the proposed hyphenation, please contact the author of the hyphenation rules you are using ([here](https://github.com/gregorio-project/hyphen-la/issues) for `hyphen-la` for example). - -If you encounter problems because the script got confused by a gabc construct you are using or has bugs not directly related to hyphenation, please report it on the [gregorio tracker](https://github.com/gregorio-project/gregorio/issues). - -## Kde editors (Kate, Kedit) - -You can use `gabc.xml` for syntax highlighting in kate (and Kedit, etc.). To -install it, copy the file in `/usr/share/apps/katepart/syntax`. This path -may vary according to your distribution. - -## Gnome editors (Gedit) - -You can use `gabc.lang` for syntax highlighting in GtkSourceView (Gedit, etc.). To -install it, copy the file in `/usr/share/gtksourceview-3.0/language-specs`. This path -may vary according to your distribution. - -## Emacs - -To use gregorio in [Emacs](https://www.gnu.org/software/emacs/), see [this script](https://github.com/cajetanus/gregorio-mode.el). - -## Vim - -To get gabc syntax highlighting in [Vim](http://www.vim.org/): - - * copy `gabc.vim` in `/usr/share/vim/vimcurrent/syntax` - * add the line `au BufNewFile,BufRead *.gabc setf gabc` -somewhere near lines of the same type (near line 100 for example) in -`/usr/share/vim/vimcurrent/filetype.vim`. This will autodetect the filetypes. - -## BBedit and TextWrangler (OSX only) - -To get gabc syntax highlight in [BBedit](http://www.barebones.com/products/bbedit/) or [TextWrangler](http://www.barebones.com/products/textwrangler/), copy `gabc-syntax.plist` into `~/Library/Application Support/TextWrangler/Language Modules/` and restart BBEdit or TextWrangler. - -## Script to process gabc score - -`gprocess` is a perl script to instantly compile and show the result of a gabc -file. You can modify some variables directly into the script. diff --git a/Build/source/texk/gregorio/gregorio-src/contrib/TeXShop/Makefile.am b/Build/source/texk/gregorio/gregorio-src/contrib/TeXShop/Makefile.am index 60a7212ad88..ce57b1329db 100644 --- a/Build/source/texk/gregorio/gregorio-src/contrib/TeXShop/Makefile.am +++ b/Build/source/texk/gregorio/gregorio-src/contrib/TeXShop/Makefile.am @@ -1,4 +1,4 @@ -# Copyright (C) 2006-2017 The Gregorio Project (see CONTRIBUTORS.md) +# Copyright (C) 2006-2018 The Gregorio Project (see CONTRIBUTORS.md) # # This file is part of Gregorio. # diff --git a/Build/source/texk/gregorio/gregorio-src/contrib/checkSyllabation.py b/Build/source/texk/gregorio/gregorio-src/contrib/checkSyllabation.py index 338ebf534a5..269fb8774e8 100644 --- a/Build/source/texk/gregorio/gregorio-src/contrib/checkSyllabation.py +++ b/Build/source/texk/gregorio/gregorio-src/contrib/checkSyllabation.py @@ -5,7 +5,7 @@ See checkSyllabation.py -h for help - Copyright (C) 2016-2017 Elie Roux + Copyright (C) 2016-2018 Elie Roux Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in diff --git a/Build/source/texk/gregorio/gregorio-src/contrib/contrib_README.md b/Build/source/texk/gregorio/gregorio-src/contrib/contrib_README.md new file mode 100644 index 00000000000..f0089e58e47 --- /dev/null +++ b/Build/source/texk/gregorio/gregorio-src/contrib/contrib_README.md @@ -0,0 +1,92 @@ +# Third party scripts + +This folder contains various small scripts or modules for third-party softwares to use Gregorio. + +## Scribus + +Gregorio can be used in [Scribus](http://wiki.scribus.net/canvas/Scribus) using three files: + + * `gregorio-scribus.lua` + * `gregorio.png` + * `900_gregorio.xml` + +To install Gregorio support in Scribus: + + * copy the three files in the editorconfig folder of scribus (`/usr/share/scribus/editorconfig` under Linux, `C:\Program Files\Scribus\share\editorconfig` +under Windows). + * read the comments in `900_gregorio.xml` and change some variables accordingly + * in Scribus: + * go in `File->Preferences->External Tools` + * click `Add` in the `Render Frames` + * select the file `900_gregorio.xml` + +After that you can insert a render frame using Gregorio, and simply +typing gabc (`right-click->edit sources`). + +For more details see [the website](http://gregorio-project.github.io/introduction-scribus.html). + +## Syllabation checker + +The scripts in this folder allow to check the syllabation of a gabc score against syllabation rules that you must provide. + +#### Dependencies + +The main script, `checkSyllabation.py` is in Python3, so you obviously need it. It uses the [pyphen](http://pyphen.org/) package. You will also need the hyphenation of the text language in the `libhyphen` format in order to run it. + +If you want liturgical Latin hyphenation rules, you can pick those from the [hyphen-la](https://github.com/gregorio-project/hyphen-la) project. They are available in `libhyphen` format on the [webpage](http://gregorio-project.github.io/hyphen-la/). + +#### Running the scripts + +Once you have the hyphenation rules in the `libhyphen` format, you can check one score by running + +``` +checkSyllabation.py -p path/to/file.dic my_file.gabc +``` + +where `path/to/file.dic` is the path to the hyphenation rules file (default is `hyph_la_liturgical.dic` in the current directory). You can also analyze all gabc scores of a directory (with subdirectories) by replacing `my_file.gabc` by the name of the directory. By default, the script analyzes the current directory. The script outputs the report to `stdout` on Unix systems, and to `check-syllabation.log` on Windows systems. + +You can see more options by running + +``` +checkSyllabation.py --help +``` + +#### Hyphenation problems + +If you encounter problems of hyphenation, meaning you disagree with the proposed hyphenation, please contact the author of the hyphenation rules you are using ([here](https://github.com/gregorio-project/hyphen-la/issues) for `hyphen-la` for example). + +If you encounter problems because the script got confused by a gabc construct you are using or has bugs not directly related to hyphenation, please report it on the [gregorio tracker](https://github.com/gregorio-project/gregorio/issues). + +## Kde editors (Kate, Kedit) + +You can use `gabc.xml` for syntax highlighting in kate (and Kedit, etc.). To +install it, copy the file in `/usr/share/apps/katepart/syntax`. This path +may vary according to your distribution. + +## Gnome editors (Gedit) + +You can use `gabc.lang` for syntax highlighting in GtkSourceView (Gedit, etc.). To +install it, copy the file in `/usr/share/gtksourceview-3.0/language-specs`. This path +may vary according to your distribution. + +## Emacs + +To use gregorio in [Emacs](https://www.gnu.org/software/emacs/), see [this script](https://github.com/cajetanus/gregorio-mode.el). + +## Vim + +To get gabc syntax highlighting in [Vim](http://www.vim.org/): + + * copy `gabc.vim` in `/usr/share/vim/vimcurrent/syntax` + * add the line `au BufNewFile,BufRead *.gabc setf gabc` +somewhere near lines of the same type (near line 100 for example) in +`/usr/share/vim/vimcurrent/filetype.vim`. This will autodetect the filetypes. + +## BBedit and TextWrangler (OSX only) + +To get gabc syntax highlight in [BBedit](http://www.barebones.com/products/bbedit/) or [TextWrangler](http://www.barebones.com/products/textwrangler/), copy `gabc-syntax.plist` into `~/Library/Application Support/TextWrangler/Language Modules/` and restart BBEdit or TextWrangler. + +## Script to process gabc score + +`gprocess` is a perl script to instantly compile and show the result of a gabc +file. You can modify some variables directly into the script. diff --git a/Build/source/texk/gregorio/gregorio-src/contrib/gabc.lang b/Build/source/texk/gregorio/gregorio-src/contrib/gabc.lang index dd2c0cf216f..7d6c3791ce6 100644 --- a/Build/source/texk/gregorio/gregorio-src/contrib/gabc.lang +++ b/Build/source/texk/gregorio/gregorio-src/contrib/gabc.lang @@ -2,7 +2,7 @@