From abea79d290f61bab210e516b5762976c8093804a Mon Sep 17 00:00:00 2001 From: "Henry So, Jr." Date: Sun, 21 Jun 2015 00:03:00 -0400 Subject: [PATCH 1/2] Added case to handle horizontal episema over salicus. Fixes #511 for Gregorio 3.0. --- CHANGELOG.md | 5 +++- plugins/gregoriotex/gregoriotex-write.c | 36 +++++++++++++++++++++++++ tex/gregoriotex-chars.tex | 2 ++ tex/gregoriotex-signs.tex | 17 ++++++++++++ 4 files changed, 59 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index da4e7e855..7416bbc1c 100644 --- a/CHANGELOG.md +++ b/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/). +## [Unreleased][unreleased] +### Fixed +- Horizontal episemae on salicus figures now render correctly (See [#511](https://github.com/gregorio-project/gregorio/issues/511)). + ## [3.0.2] - 2015-06-01 ### Fixed - Prevented the default small font of the above lines text from leaking into the lyrics. @@ -10,7 +14,6 @@ As of v3.0.0 this project adheres to [Semantic Versioning](http://semver.org/). ### Fixed - Windows Installer is now compatible with MiKTeX. See [#355](https://github.com/gregorio-project/gregorio/issues/355). - ## [3.0.0] - 2015-05-14 ### Changed - [New website](http://gregorio-project.github.io) containing instructions only for new versions of Gregorio starting with this release, in English only. diff --git a/plugins/gregoriotex/gregoriotex-write.c b/plugins/gregoriotex/gregoriotex-write.c index 075ae547f..32025fce0 100644 --- a/plugins/gregoriotex/gregoriotex-write.c +++ b/plugins/gregoriotex/gregoriotex-write.c @@ -3371,6 +3371,42 @@ gregoriotex_find_sign_number (gregorio_glyph *current_glyph, break; } break; + case T_SALICUS: + case T_SALICUS_LONGQUEUE: + switch (i) + { + case 1: + if (current_note->next && current_note->next->next + && current_note->h_episemus_top_note < current_note->next->next->pitch) + { + current_note->h_episemus_top_note = current_note->next->next->pitch; + } + *number = 6; + normal_height_bottom (); + break; + case 2: + if (current_note->next + && current_note->h_episemus_top_note < current_note->next->pitch) + { + current_note->h_episemus_top_note = current_note->next->pitch; + } + if (current_note->next + && current_note->next->pitch - current_note->pitch == 1) + { + *number = 29; + } + else + { + *number = 28; + } + normal_height (); + break; + default: + *number = 0; + normal_height (); + break; + } + break; case T_ANCUS: case T_ANCUS_LONGQUEUE: switch (i) diff --git a/tex/gregoriotex-chars.tex b/tex/gregoriotex-chars.tex index 46453152d..0718dce9c 100644 --- a/tex/gregoriotex-chars.tex +++ b/tex/gregoriotex-chars.tex @@ -39,6 +39,8 @@ \xdef\gre@char@flexusdeminutus{\gregoriocharoffset{5250}}% \xdef\gre@char@flexusaltone{\gregoriocharoffset{5633}}% \xdef\gre@char@flexusalt{\gregoriocharoffset{5634}}% +\xdef\gre@char@oriscusflexus{\gregoriocharoffset{6659}}% +\xdef\gre@char@oriscusflexusone{\gregoriocharoffset{6657}}% \xdef\gre@char@torculus{\gregoriocharoffset{15371}}% \xdef\gre@char@torculusdeminutus{\gregoriocharoffset{15884}}% \xdef\gre@char@porrectus@one{\gregoriocharoffset{11270}}% diff --git a/tex/gregoriotex-signs.tex b/tex/gregoriotex-signs.tex index 7bebd09f6..0c744e527 100644 --- a/tex/gregoriotex-signs.tex +++ b/tex/gregoriotex-signs.tex @@ -747,6 +747,8 @@ %% 25: the last note, if it is a bar %% 26: the last note, if it is a virgula %% 27: the last note, if it is a divisio finalis +%% 28: the middle note of a salicus with second ambitus of at least two +%% 29: idem with second ambitus of one % a function to typeset a vertical episemus or a rare accent (like accentus, circulus, etc.). The firts argument is the letter of the height of the episemus (not the height of the note it corresponds to. This function must be called after a call to \greglyph. The second argument is the type of glyph it was, more precisely the kind of space there is between the end (or in special cases the beginning) of the glyph and the place where we will typeset the episemus. The values are described in the commentary just above. % the third argument is the glyph number in the font @@ -868,6 +870,12 @@ \or% %case 27 \grevepisemusorrareaux{0}{\gredivisiofinalissymbol}{1}{0}{#3}{#4}{#5}% + \or% + %case 28 + \grevepisemusorrareaux{\char \gre@char@oriscusflexus}{\char \gre@char@oriscus}{2}{0}{#3}{#4}{#5}% + \or% + %case 29 + \grevepisemusorrareaux{\char \gre@char@oriscusflexusone}{\char \gre@char@oriscus}{2}{0}{#3}{#4}{#5}% \fi% \relax% }% @@ -1189,6 +1197,15 @@ \or% %case 24 \grehepisorlineaux{\char \gre@char@pesinitauctusone}{\gre@char@he@punctum}{1}{#4}%the episemus is not quite long enough so I assumed a different width for now... + \or% case 25 + \or% case 26 + \or% case 27 + \or% + %case 28 + \grehepisorlineaux{\char \gre@char@oriscusflexus}{\gre@char@he@oriscus}{2}{#4}% + \or% + %case 29 + \grehepisorlineaux{\char \gre@char@oriscusflexusone}{\gre@char@he@oriscus}{2}{#4}% \fi% \relax% }% From 23d136bd1521a11c27ba46c4cd1e1bc34c25143c Mon Sep 17 00:00:00 2001 From: "Henry So, Jr" Date: Wed, 1 Jul 2015 16:35:51 -0400 Subject: [PATCH 2/2] Updated version and change log for 3.0.3 release. --- .gregorio-version | 2 +- CHANGELOG.md | 2 +- configure.ac | 4 ++-- doc/GregorioRef.tex | 2 +- macosx/Gregorio.pkgproj | 2 +- plugins/gregoriotex/gregoriotex.h | 2 +- tex/gregoriotex-chars.tex | 2 +- tex/gregoriotex-signs.tex | 2 +- tex/gregoriotex-spaces.tex | 2 +- tex/gregoriotex-syllable.tex | 2 +- tex/gregoriotex-symbols.tex | 2 +- tex/gregoriotex.lua | 6 +++--- tex/gregoriotex.sty | 2 +- tex/gregoriotex.tex | 2 +- windows/gregorio-resources.rc | 4 ++-- windows/gregorio.iss | 4 ++-- 16 files changed, 21 insertions(+), 21 deletions(-) diff --git a/.gregorio-version b/.gregorio-version index cede49349..198ccec21 100644 --- a/.gregorio-version +++ b/.gregorio-version @@ -1,4 +1,4 @@ -3.0.2 +3.0.3 *** Do not modify this file. *** Use VersionManager.py to change the version. diff --git a/CHANGELOG.md b/CHANGELOG.md index 7416bbc1c..5db9ff889 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ 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/). -## [Unreleased][unreleased] +## [3.0.3] - 2015-07-01 ### Fixed - Horizontal episemae on salicus figures now render correctly (See [#511](https://github.com/gregorio-project/gregorio/issues/511)). diff --git a/configure.ac b/configure.ac index 828e111c4..9c9b4b39c 100644 --- a/configure.ac +++ b/configure.ac @@ -15,8 +15,8 @@ dnl You should have received a copy of the GNU General Public License dnl along with this program; if not, write to the Free Software dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -AC_INIT([gregorio],[3.0.2],[gregorio-devel@gna.org]) -FILENAME_VERSION="3_0_2" +AC_INIT([gregorio],[3.0.3],[gregorio-devel@gna.org]) +FILENAME_VERSION="3_0_3" AC_SUBST(FILENAME_VERSION) AC_PREREQ(2.59) AC_CONFIG_SRCDIR([src/gregorio-utils.c]) diff --git a/doc/GregorioRef.tex b/doc/GregorioRef.tex index d6dd0fca3..c552bf7dd 100644 --- a/doc/GregorioRef.tex +++ b/doc/GregorioRef.tex @@ -72,7 +72,7 @@ \vspace{1cm} - \large Version \textbf{3.0.2}, 01/06/15 %% PARSE_VERSION_DATE + \large Version \textbf{3.0.3}, 01/07/15 %% PARSE_VERSION_DATE \vspace{1cm} diff --git a/macosx/Gregorio.pkgproj b/macosx/Gregorio.pkgproj index 0c129297b..cd6005ea2 100755 --- a/macosx/Gregorio.pkgproj +++ b/macosx/Gregorio.pkgproj @@ -547,7 +547,7 @@ OVERWRITE_PERMISSIONS VERSION - 3.0.2 + 3.0.3 UUID 74692645-8112-42EB-8FFC-2CBE2CEDE9FB diff --git a/plugins/gregoriotex/gregoriotex.h b/plugins/gregoriotex/gregoriotex.h index 62e53c09d..8a1241ab8 100644 --- a/plugins/gregoriotex/gregoriotex.h +++ b/plugins/gregoriotex/gregoriotex.h @@ -19,7 +19,7 @@ #ifndef GREGORIOTEX_H #define GREGORIOTEX_H -#define GREGORIO_VERSION "3.0.2" +#define GREGORIO_VERSION "3.0.3" #define NO_FUSION 0 #define FUSION 1 diff --git a/tex/gregoriotex-chars.tex b/tex/gregoriotex-chars.tex index 0718dce9c..234e37516 100644 --- a/tex/gregoriotex-chars.tex +++ b/tex/gregoriotex-chars.tex @@ -1,4 +1,4 @@ -\gre@declarefileversion{gregoriotex-chars.tex}{3.0.2}% GREGORIO_VERSION +\gre@declarefileversion{gregoriotex-chars.tex}{3.0.3}% GREGORIO_VERSION \def\gregoriocharoffset#1{\the\numexpr 161 + #1 \relax} \def\gregoriostylecharoffset#1{\the\numexpr 66 + #1 \relax} diff --git a/tex/gregoriotex-signs.tex b/tex/gregoriotex-signs.tex index 0c744e527..751f384a3 100644 --- a/tex/gregoriotex-signs.tex +++ b/tex/gregoriotex-signs.tex @@ -17,7 +17,7 @@ % this file contains definitions of signs (bar, episemus, punctum, alterations) -\gre@declarefileversion{gregoriotex-signs.tex}{3.0.2}% GREGORIO_VERSION +\gre@declarefileversion{gregoriotex-signs.tex}{3.0.3}% GREGORIO_VERSION \def\greusestylecommon{% \ifnum\greusestylefont=0\relax % diff --git a/tex/gregoriotex-spaces.tex b/tex/gregoriotex-spaces.tex index 448e9bbfb..d28b582b8 100644 --- a/tex/gregoriotex-spaces.tex +++ b/tex/gregoriotex-spaces.tex @@ -16,7 +16,7 @@ % this file contains definitions of spaces -\gre@declarefileversion{gregoriotex-spaces.tex}{3.0.2}% GREGORIO_VERSION +\gre@declarefileversion{gregoriotex-spaces.tex}{3.0.3}% GREGORIO_VERSION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% macros for tuning penalties diff --git a/tex/gregoriotex-syllable.tex b/tex/gregoriotex-syllable.tex index 9ff8cd56a..f2dad0838 100644 --- a/tex/gregoriotex-syllable.tex +++ b/tex/gregoriotex-syllable.tex @@ -16,7 +16,7 @@ % this file contains definitions of the glyphs and the syllables -\gre@declarefileversion{gregoriotex-syllable.tex}{3.0.2}% GREGORIO_VERSION +\gre@declarefileversion{gregoriotex-syllable.tex}{3.0.3}% GREGORIO_VERSION %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% macros for the typesetting of the different glyphs diff --git a/tex/gregoriotex-symbols.tex b/tex/gregoriotex-symbols.tex index 93b06caa0..e167c7055 100644 --- a/tex/gregoriotex-symbols.tex +++ b/tex/gregoriotex-symbols.tex @@ -16,7 +16,7 @@ % this file contains definitions of the symbols -\gre@declarefileversion{gregoriotex-symbols.tex}{3.0.2}% GREGORIO_VERSION +\gre@declarefileversion{gregoriotex-symbols.tex}{3.0.3}% GREGORIO_VERSION % a temp counter \newcount\gretempfactor % diff --git a/tex/gregoriotex.lua b/tex/gregoriotex.lua index 9a944dc98..5838bd6d6 100644 --- a/tex/gregoriotex.lua +++ b/tex/gregoriotex.lua @@ -21,13 +21,13 @@ local hpack, traverse_id, has_attribute, count, remove, insert_after, copy = nod gregoriotex = gregoriotex or {} local gregoriotex = gregoriotex -local internalversion = '3.0.2' -- GREGORIO_VERSION (comment used by VersionManager.py) +local internalversion = '3.0.3' -- GREGORIO_VERSION (comment used by VersionManager.py) local err, warn, info, log = luatexbase.provides_module({ name = "gregoriotex", - version = '3.0.2', -- GREGORIO_VERSION + version = '3.0.3', -- GREGORIO_VERSION greinternalversion = internalversion, - date = "2015/06/01", -- GREGORIO_DATE_LTX + date = "2015/07/01", -- GREGORIO_DATE_LTX description = "GregorioTeX module.", author = "The Gregorio Project (see CONTRIBUTORS.md)", copyright = "2008-2015 - The Gregorio Project", diff --git a/tex/gregoriotex.sty b/tex/gregoriotex.sty index 5a287e3ad..b51fde202 100644 --- a/tex/gregoriotex.sty +++ b/tex/gregoriotex.sty @@ -16,7 +16,7 @@ \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{gregoriotex}% - [2015/06/01 v3.0.2 GregorioTeX system.]% PARSE_VERSION_DATE_LTX + [2015/07/01 v3.0.3 GregorioTeX system.]% PARSE_VERSION_DATE_LTX \RequirePackage{xcolor} \input gregoriotex.tex diff --git a/tex/gregoriotex.tex b/tex/gregoriotex.tex index 3ba68af1a..a750ba8e8 100644 --- a/tex/gregoriotex.tex +++ b/tex/gregoriotex.tex @@ -75,7 +75,7 @@ % The version of gregorio. All gregoriotex*.tex files must have the same. % All gtex files must also have the same version. -\xdef\gre@gregorioversion{3.0.2}% GREGORIO_VERSION - VersionManager.py +\xdef\gre@gregorioversion{3.0.3}% GREGORIO_VERSION - VersionManager.py % first some macros to allow checks for version: % Tests that all gregoriotex files are of the same version. diff --git a/windows/gregorio-resources.rc b/windows/gregorio-resources.rc index 21211d054..cf5625657 100644 --- a/windows/gregorio-resources.rc +++ b/windows/gregorio-resources.rc @@ -9,12 +9,12 @@ BEGIN BEGIN VALUE "CompanyName", "Gregorio project" VALUE "FileDescription", "Gregorio" - VALUE "FileVersion", "3.0.2" + VALUE "FileVersion", "3.0.3" VALUE "InternalName", "gregorio" VALUE "LegalCopyright", "See COPYING in the installation directory." VALUE "OriginalFilename", "gregorio.exe" VALUE "ProductName", "Gregorio" - VALUE "ProductVersion", "3.0.2" + VALUE "ProductVersion", "3.0.3" END END diff --git a/windows/gregorio.iss b/windows/gregorio.iss index daccc2b09..796ad78bb 100644 --- a/windows/gregorio.iss +++ b/windows/gregorio.iss @@ -1,6 +1,6 @@ [Setup] AppName=gregorio -AppVersion=3.0.2 +AppVersion=3.0.3 DefaultDirName={pf}\gregorio DefaultGroupName=gregorio SetupIconFile=gregorio.ico @@ -53,7 +53,7 @@ Source: "../README.md"; DestDir: "{app}"; Source: "../CONTRIBUTORS.md"; DestDir: "{app}"; Source: "../UPGRADE.md"; DestDir: "{app}"; ; PARSE_VERSION_FILE_NEXTLINE -Source: "../doc/GregorioRef-3_0_2.pdf"; DestDir: "{app}"; +Source: "../doc/GregorioRef-3_0_3.pdf"; DestDir: "{app}"; Source: "../COPYING.md"; DestDir: "{app}"; Source: "../contrib/900_gregorio.xml"; DestDir: "{app}\contrib"; Source: "../contrib/system-setup.bat"; DestDir: "{app}";