Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiline initial #1491

Open
wants to merge 65 commits into
base: ctan
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
dfc3b55
Force rebuild of font database (including metrics) before building docs
rpspringuel Dec 3, 2019
22db9a2
Refactor `\gre@initiallines` to `\gre@count@initiallines`
rpspringuel Mar 1, 2020
45e40be
Remove obsolete code error for biginitial style
rpspringuel Mar 8, 2020
7d77fde
Refactor gre@setinitial
rpspringuel Mar 8, 2020
cc53d4a
Remove gre@biginitial flag
rpspringuel Mar 9, 2020
4a5cd3f
Use GNU sed for the checking scripts
rpspringuel Mar 9, 2020
63612e5
Undo develop only changes
rpspringuel Mar 9, 2020
3d2f93c
Fix typos
rpspringuel Mar 9, 2020
ba9ecb4
Update documentation to account for refactoring
rpspringuel Mar 9, 2020
0647b72
Remove backup line adjustment
rpspringuel Mar 10, 2020
74592b0
Move initial setting to main
rpspringuel Mar 15, 2020
a47d949
Rename gre@knownline to gre@count@knownline
rpspringuel Mar 16, 2020
8a28943
Stop double counting initialraise
rpspringuel Mar 16, 2020
aaa54b6
Refactor initial height calculation
rpspringuel Mar 16, 2020
096fcfa
Account for number of staff lines in initial placement
rpspringuel Mar 16, 2020
8106316
Use existing staffheight
rpspringuel Mar 17, 2020
f4358ab
Comment not needed anymore
rpspringuel Mar 17, 2020
522774a
Refactoring to make more use of staffheight where appropriate
rpspringuel Mar 17, 2020
53fc493
Refactor
rpspringuel Mar 17, 2020
4ff485e
Allow initials to occupy an arbitrary number of lines.
rpspringuel Mar 18, 2020
db016df
Add semi-manual mode for determining where initials end
rpspringuel Mar 18, 2020
d242e0d
Merge branch 'ctan' into multiline_initial
rpspringuel Feb 7, 2021
a24036b
Find GNU sed
rpspringuel Feb 7, 2021
dfab895
Convert the initial ending style flag to a boolean
rpspringuel Feb 8, 2021
c8fa392
Documentation for current state of multi-line initials
rpspringuel Feb 8, 2021
4393a2d
Merge branch 'ctan' into multiline_initial
rpspringuel Feb 8, 2021
01b6dc2
Merge branch 'ctan' into multiline_initial
rpspringuel Feb 18, 2021
39d9496
Trying to lower the initial to match the right baseline when dealing …
rpspringuel Feb 21, 2021
ddc6164
Implemented control over automatic linebreaks between unison notes.
henryso May 24, 2021
7741c76
Removed text that wasn't supposed to be there.
henryso Jul 10, 2021
d9e1fc6
Merge pull request #1544 from henryso/develop
henryso Jul 10, 2021
8a3df3f
Fixed the interaction between hyphens and styles.
henryso Jul 13, 2021
d9016b0
Added change log.
henryso Jul 13, 2021
22f4bc3
Merge pull request #1548 from henryso/fix-1538
henryso Jul 27, 2021
329bf32
Fixed loss of open styles on syllables starting with a forced center.
henryso Jul 29, 2021
7ec5d32
Merge pull request #1552 from henryso/fix-1551
henryso Aug 3, 2021
cb5b46d
Implemented tail virga fusion.
henryso Jan 22, 2022
80afafc
Implemented [shape:] hints in gabc and [shape:stroke] for the flexus.
henryso Feb 5, 2022
9493fea
Fixed glyph reference and updated the changelog.
henryso Feb 5, 2022
c400a14
Merge pull request #1560 from henryso/fix-1558
rpspringuel Feb 16, 2022
1de1080
Merge commit 'ec7c886cb424f89c64983831fcd80cf187f5b306' into develop
rpspringuel Oct 10, 2023
170b351
Merge commit 'c400a14e2e1357747b9d2ab97408346d2861317e' into develop
rpspringuel Oct 10, 2023
b6a0b38
Add ni neume (nihil).
jakubjelinek Jan 14, 2024
5745141
Add 30 new St. Gall neumes.
jakubjelinek Jan 14, 2024
440cca3
Small documentation fixes for the addition of 30 gregall neumes.
jakubjelinek Jan 28, 2024
73eb63d
Merge pull request #1584 from jakubjelinek/nabc-updates
jakubjelinek Jan 28, 2024
c70aa1a
Fix segfault for first syllables of one letter with a style.
eschwab Apr 2, 2024
43b465d
Merge pull request #1594 from eschwab/fix-1585
eschwab Jul 4, 2024
af37000
Reorder code for generating custos. Closes #1604.
davidweichiang Jan 20, 2025
e262208
Revert "Reorder code for generating custos. Closes #1604."
davidweichiang Jan 20, 2025
727fc5e
Remove unnecessary global \setbox (fixes #1373)
davidweichiang Jan 20, 2025
b233412
Merge commit '1fa8579e50eca3bb5b8772b63c50de8a557923b0' into develop
rpspringuel Jan 22, 2025
4151a4d
Merge commit '1fa8579e50eca3bb5b8772b63c50de8a557923b0' into multilin…
rpspringuel Jan 22, 2025
f778283
changelog
davidweichiang Jan 23, 2025
4f6daa6
Merge pull request #1605 from davidweichiang/fix-1604
rpspringuel Jan 23, 2025
094cb8a
Merge branch 'ctan' into develop
rpspringuel Jan 25, 2025
5ccbc1f
CHANGELOG entry for vim plugin
rpspringuel Jan 25, 2025
678765a
Merge branch 'ctan' into multiline_initial
rpspringuel Jan 25, 2025
db7638d
Modify name of ignored minted folder
rpspringuel Jan 26, 2025
e272965
Add tmp-gre to clean-doc-intermediate target
rpspringuel Jan 26, 2025
46304a5
Add new vim folders to configure
rpspringuel Jan 26, 2025
340f7a0
Merge branch 'develop' into multiline_initial
rpspringuel Jan 26, 2025
6622fed
Correct debug message
rpspringuel Jan 28, 2025
279b2cd
Hand more of initial placement calculation over to Lua
rpspringuel Jan 28, 2025
e32991a
Default adjustment should not be 0
rpspringuel Jan 29, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,5 @@ indent_size = 2
charset = utf-8
trim_trailing_whitespace = true

[*.{py,c,h}]
[*.{py,c,h,l,y}]
indent_size = 4
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ auto/
*.deb

#gregorio specific
doc/_minted-*
doc/_minted*
fonts/*.ttf
*.greaux
*.gz
Expand All @@ -127,3 +127,4 @@ ctan
*.pyg
.agignore
*.orig
compile_commands.json
13 changes: 12 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,24 @@
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][CTAN]
## [Unreleased][develop]
### Fixed
- Multiple Scribus render frames were all using the same file name, which would result in the same score appearing in all render frames. This change makes the score files use an available Scribus variable to force multiple file names.
- When kpsewhich cannot write to a particular location, it generates an error which is directed to stderr but not to our glog file. This created an undocumented error when trying to write to a gtex file to a bad location. We now capture stderr output produced when compiling scores and redirect it to our glog file so that the error is properly recorded. Fixes [#1541](https://github.com/gregorio-project/gregorio/issues/1541).
- Fixed the interaction between hyphens and styles. See [#1538](https://github.com/gregorio-project/gregorio/issues/1538).
- Fixed the loss of ongoing styles when a syllable starts with a forced center. See [#1551](https://github.com/gregorio-project/gregorio/issues/1551).
- Fixed first syllables of one letter with a style causing a segfault. See [#1585](https://github.com/gregorio-project/gregorio/issues/1585).
- Fixed a bug that caused a custos to sometimes change into a clef. See [#1373](https://github.com/gregorio-project/gregorio/issues/1373).

### Changed
- Defined an output directory for gtex and glog files. Default is `tmp-gre`. This can be changed using `\gresetoutputdir{...}`. Fixes [#1393](https://github.com/gregorio-project/gregorio/issues/1393), [#1542](https://github.com/gregorio-project/gregorio/issues/1542), and [#1571](https://github.com/gregorio-project/gregorio/issues/1571).
- gabc.vim has been expanded into a proper vim plugin.

### Added
- Added a configurable setting `\gresetunisonbreakbehavior` to control automatic line breaks between unison notes above a syllable. Defaults to `breakable` for backwards compatibility, but may be set to `unbreakable` if that behavior is desired. See [#1504](https://github.com/gregorio-project/gregorio/issues/1504).
- Added the ability to fuse upwards to a virga. See [#1558](https://github.com/gregorio-project/gregorio/issues/1558)
- Added the ability to use the "stroke" form of a clivis instead of the default two-notes form by specifying `[shape:stroke]` after the clivis to change. See [#1558](https://github.com/gregorio-project/gregorio/issues/1558)


## [6.0.0] - 2021-03-13
### Fixed
Expand Down
3 changes: 3 additions & 0 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -123,6 +123,9 @@ AC_CONFIG_FILES([
examples/Makefile
contrib/Makefile
contrib/TeXShop/Makefile
contrib/vim/Makefile
contrib/vim/ftdetect/Makefile
contrib/vim/syntax/Makefile
doc/Makefile
tex/Makefile
fonts/Makefile
Expand Down
67 changes: 39 additions & 28 deletions def_check.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,17 @@

HERE=`pwd`

if sed --version 2&> /dev/null; then
SED=sed
elif gsed --version 2&> /dev/null; then
SED=gsed
else
echo "I can't find GNU sed."
echo "Please install it and try again."
return 1
fi


TEXFILE=$HERE/tex.txt
CFILE=$HERE/c.txt
DIFFFILE=$HERE/diff.txt
Expand All @@ -26,30 +37,30 @@ grep -hE '\\let\\Gre.*' *.tex *.sty >> $TEXFILE
grep -h '\\gredefsymbol{Gre.*' *.tex *.sty >> $TEXFILE

#remove deprecated code
sed -i.temp 's:.*OBSOLETE.*::' $TEXFILE
sed -i.temp 's:.*DEPRECATED.*::' $TEXFILE
$SED -i.temp 's:.*OBSOLETE.*::' $TEXFILE
$SED -i.temp 's:.*DEPRECATED.*::' $TEXFILE

#Isolate function names
sed -i.temp 's:Gre:\
$SED -i.temp 's:Gre:\
Gre:g' $TEXFILE
sed -i.temp '/Gre/!d' $TEXFILE
sed -i.temp 's:\(Gre[a-zA-Z]*\).*:\1:' $TEXFILE
$SED -i.temp '/Gre/!d' $TEXFILE
$SED -i.temp 's:\(Gre[a-zA-Z]*\).*:\1:' $TEXFILE

#remove bar lines (these names are assembled piecemeal, not whole)
sed -i.temp 's:^GreDivisioFinalis$::' $TEXFILE
sed -i.temp 's:^GreDivisioMaior$::' $TEXFILE
sed -i.temp 's:^GreDivisioMinima$::' $TEXFILE
sed -i.temp 's:^GreDivisioMinor$::' $TEXFILE
sed -i.temp 's:^GreDominica$::' $TEXFILE
sed -i.temp 's:^GreVirgula$::' $TEXFILE
sed -i.temp 's:^GreFinalDivisioFinalis$::' $TEXFILE
sed -i.temp 's:^GreFinalDivisioMaior$::' $TEXFILE
sed -i.temp 's:^GreInDivisioFinalis$::' $TEXFILE
sed -i.temp 's:^GreInDivisioMaior$::' $TEXFILE
sed -i.temp 's:^GreInDivisioMinima$::' $TEXFILE
sed -i.temp 's:^GreInDivisioMinor$::' $TEXFILE
sed -i.temp 's:^GreInDominica$::' $TEXFILE
sed -i.temp 's:^GreInVirgula$::' $TEXFILE
$SED -i.temp 's:^GreDivisioFinalis$::' $TEXFILE
$SED -i.temp 's:^GreDivisioMaior$::' $TEXFILE
$SED -i.temp 's:^GreDivisioMinima$::' $TEXFILE
$SED -i.temp 's:^GreDivisioMinor$::' $TEXFILE
$SED -i.temp 's:^GreDominica$::' $TEXFILE
$SED -i.temp 's:^GreVirgula$::' $TEXFILE
$SED -i.temp 's:^GreFinalDivisioFinalis$::' $TEXFILE
$SED -i.temp 's:^GreFinalDivisioMaior$::' $TEXFILE
$SED -i.temp 's:^GreInDivisioFinalis$::' $TEXFILE
$SED -i.temp 's:^GreInDivisioMaior$::' $TEXFILE
$SED -i.temp 's:^GreInDivisioMinima$::' $TEXFILE
$SED -i.temp 's:^GreInDivisioMinor$::' $TEXFILE
$SED -i.temp 's:^GreInDominica$::' $TEXFILE
$SED -i.temp 's:^GreInVirgula$::' $TEXFILE


#label file
Expand All @@ -68,20 +79,20 @@ grep -hE '\\\\Gre.*' gabc-notes-determination.l >> $CFILE
grep -hE '\\\\Gre.*' gabc-score-determination.y >> $CFILE

#remove deprecated code
sed -i.temp 's:.*OBSOLETE.*::' $CFILE
sed -i.temp 's:.*DEPRECATED.*::' $CFILE
$SED -i.temp 's:.*OBSOLETE.*::' $CFILE
$SED -i.temp 's:.*DEPRECATED.*::' $CFILE

#Isolate function names
sed -i.temp 's:Gre:\
$SED -i.temp 's:Gre:\
Gre:g' $CFILE
sed -i.temp '/Gre/!d' $CFILE
sed -i.temp 's:\(Gre[a-zA-Z]*\).*:\1:' $CFILE
$SED -i.temp '/Gre/!d' $CFILE
$SED -i.temp 's:\(Gre[a-zA-Z]*\).*:\1:' $CFILE

#remove prefixes of assembled function names
sed -i.temp 's:^Gre$::' $CFILE
sed -i.temp 's:^GreCP$::' $CFILE
sed -i.temp 's:^GreFinal$::' $CFILE
sed -i.temp 's:^GreIn$::' $CFILE
$SED -i.temp 's:^Gre$::' $CFILE
$SED -i.temp 's:^GreCP$::' $CFILE
$SED -i.temp 's:^GreFinal$::' $CFILE
$SED -i.temp 's:^GreIn$::' $CFILE

#label file
echo "00 Macros Written by C" >> $CFILE
Expand Down
23 changes: 21 additions & 2 deletions doc/Command_Index_User.tex
Original file line number Diff line number Diff line change
Expand Up @@ -902,14 +902,20 @@ \subsubsection{Text Elements}

\textbf{Nota Bene:} Usually the argument of this command should be an \verb=\includegraphics= command, but you may use what ever you want as the illuminated initial.

\macroname{\textbackslash gresetinitiallines}{\{\#1\}}{gregoriotex-syllable.tex}
\macroname{\textbackslash gresetinitiallines}{\{\#1\}}{gregoriotex-main.tex}
Sets the number of lines the score initial requires.

\begin{argtable}
\#1 & number & The number of lines required by the initial. If \texttt{0}, the score will have no separated initial.\\
\end{argtable}

\textbf{Nota Bene:} As currently implemented, you cannot set an initial which is larger than 2 lines and in order to do so you must set manual line breaks in the gabc for the first two lines.
\macroname{\textbackslash gresetinitialend}{\{\#1\}}{gregoriotex-main.tex}
Indicates how the end of the initial is indicated in the gabc.

\begin{argtable}
\#1 & \texttt{manual} & Every line that is next to the initial is ended with a \texttt{z} or \texttt{Z} in the gabc\\
& \texttt{semi-manual} & Only the last line that is next to the initial is ended with a \texttt{z} or \texttt{Z} in the gabc
\end{argtable}

\macroname{\textbackslash gresetmodenumbersystem}{\{\#1\}}{gregoriotex-main.tex}
Sets the number system used for the mode number.
Expand Down Expand Up @@ -1179,6 +1185,19 @@ \subsubsection{End of Line Behavior}
lines. Defaults to \getgrecount{unbreakablefinalnotes}.\\
\end{argtable}

\macroname{\textbackslash gresetunisonbreakbehavior}{\{\#1\}}{gregoriotex-main.tex}
Macro to determine whether an automatic linebreak may occur between unison notes
over a syllable. This behavior governs how the system works when no explicit
space is put between the notes. In other words, any explicit space between the
notes take precedence over this setting.

\begin{argtable}
\#1 & \texttt{breakable} & Allow automatic linebreaks between unison notes
(default)\\
& \texttt{unbreakable} & Disallow automatic linebreaks between unison
notes\\
\end{argtable}


\subsubsection{Bar spacing}

Expand Down
2 changes: 2 additions & 0 deletions doc/Command_Index_gregorio.tex
Original file line number Diff line number Diff line change
Expand Up @@ -402,6 +402,7 @@ \section{Gregorio Controls}
& \texttt{4} & Ad-hoc space.\\
\#2 & \texttt{0} & Space is breakable.\\
& \texttt{1} & Space is unbreakable.\\
& \texttt{2} & Space is breakable according to the \verb=\setunisonbreakbehavior= setting.\\
\#3 & integer & The number of notes in the syllable prior to this macro.\\
\end{argtable}

Expand Down Expand Up @@ -444,6 +445,7 @@ \section{Gregorio Controls}
& \texttt{20} & Space between a punctum inclinatum and a ``no-bar'' glyph two pitches above. \\
& \texttt{21} & Space between a punctum inclinatum and a ``no-bar'' glyph three or four pitches above \\
& \texttt{22} & Half-space. \\
& \texttt{23} & Space between unison puncta inclinata. \\
\end{argtable}

\macroname{\textbackslash GreFinalCustos}{\#1\#2}{gregoriotex-signs.tex}
Expand Down
32 changes: 12 additions & 20 deletions doc/Command_Index_internal.tex
Original file line number Diff line number Diff line change
Expand Up @@ -480,20 +480,14 @@ \section{Gregorio\TeX{} Controls}
\macroname{\textbackslash gre@noinitial}{}{gregoriotex-main.tex}
Macro called when no initial is being set.

\macroname{\textbackslash gre@setbiginitial}{}{gregoriotex-main.tex}
Macro which indicates that a 2-line initial is desired.

\macroname{\textbackslash gre@setinitial}{\#1}{gregoriotex-main.tex}
Macro to set the initial in the score.

\macroname{\textbackslash gre@adjustsecondline}{}{gregoriotex.tex}
Macro to call before first syllable, but after \verb=\GreSetInitialClef=.

\macroname{\textbackslash gre@adjustthirdline}{}{gregoriotex-main.tex}
Macro to call during the second line.

\macroname{\textbackslash gre@adjustlineifnecessary}{}{gregoriotex-main.tex}
Macro that calls \verb=\gre@adjustthirdline= if indicated by \verb=\ifgre@thirdlineadjustmentnecessary=.
\macroname{\textbackslash gre@adjustlinesafterinitial}{}{gregoriotex-main.tex}
Macro that call adjusts the line length after the lines next to the initial are completed.

\macroname{\textbackslash gre@addspaceabove}{}{gregoriotex-main.tex}
Macro to increase the space above the lines to account for above lines text.
Expand Down Expand Up @@ -560,7 +554,7 @@ \section{Gregorio\TeX{} Controls}
\macroname{\textbackslash gre@updatelinewidth}{}{gregoriotex-main.tex}
Macro to shorten the lines to account for the presence of the initial.

\macroname{\textbackslash gre@knownline}{}{gregoriotex-main.tex}
\macroname{\textbackslash gre@count@knownline}{}{gregoriotex-main.tex}
A count which keeps track of which line of the score we’re on.

\macroname{\textbackslash gre@lastoflinecount}{}{gregoriotex-main.tex}
Expand Down Expand Up @@ -747,9 +741,6 @@ \section{Gregorio\TeX{} Controls}
\macroname{\textbackslash gre@newglyphcommon}{}{gregoriotex-syllable.tex}
Macro called before each glyph.

\macroname{\textbackslash gre@normalinitial}{}{gregoriotex-main.tex}
Macro called at the end of the score to ensure that a big initial setting doesn’t carry into the next score.

\macroname{\textbackslash greoldcatcode}{}{gregoriotex.tex}
Macro to store the catcode for ``@'' so that we can use said symbol in function names under Plain \TeX\ and then restore the original catcode after the package is done loading.

Expand Down Expand Up @@ -1764,9 +1755,6 @@ \subsection{Flags}
Boolean used to specify whether divisio braces should be drawn by \MP{} as
opposed to rendered via the score font.

\macroname{\textbackslash gre@biginitial}{}{gregoriotex-main.tex}
Count to track whether the initial is big (2-lines) or normal (1-line).

\macroname{\textbackslash ifgre@boxing}{}{gregoriotex-syllable.tex}
Boolean to track whether we’re placing the contents of syllable notes into their box or actually printing that box (helps prevent spurious spaces from occurring when the box is being filled but not printed).

Expand Down Expand Up @@ -1902,9 +1890,6 @@ \subsection{Flags}
\macroname{\textbackslash ifgre@possibleluahyphenafterthissyllable}{}{gregoriotex-syllable.tex}
Boolean set by \verb=\GreSyllable= indicating if the Lua pass may add an hyphen after the syllable, used by \verb=\gre@calculate@eolshift= for protrusion calculation.

\macroname{\textbackslash ifgre@thirdlineadjustmentnecessary}{}{gregoriotex-syllable.tex}
Boolean which indicates that a third-line adjustment to staff line width is necessary.

\macroname{\textbackslash ifgre@scale@stafflinefactor}{}{gregoriotex-spaces.tex}
Boolean indicating whether the stafflinefactor should scale with changes of \texttt{grefactor}, or not.

Expand Down Expand Up @@ -1961,6 +1946,10 @@ \subsection{Flags}
\macroname{\textbackslash ifgre@unbreakableendofelement}{}{gregoriotex-main.tex}
Boolean used by \verb=\GreEndOfElement= to store whether the line may be broken at that point.

\macroname{\textbackslash gre@unbreakableendofelement@unison}{}{gregoriotex-main.tex}
Alias that sets \verb=\ifgre@unbreakableendofelement= according to the
\verb=\setunisonbreakbehavior= preference.

\macroname{\textbackslash gre@count@syllablenotes}{}{gregoriotex-syllable.tex}
Count containing the number of notes in the syllable.

Expand Down Expand Up @@ -1991,8 +1980,11 @@ \subsection{Flags}
\macroname{\textbackslash ifgre@showabovelinestext}{}{gregoriotex-main.tex}
Boolean indicating whether the above lines text should be shown.

\macroname{\textbackslash gre@initiallines}{}{gregoriotex-syllable.tex}
Number of lines the initial takes up. Currently limited to 0, 1, or 2. Not currently a count, but will be changed to one in 5.0.
\macroname{\textbackslash gre@count@initiallines}{}{gregoriotex-syllable.tex}
Number of lines the initial takes up. Currently limited to 0, 1, or 2.

\macroname{\textbackslash ifgre@manualinitialend}{}{gregoriotex-syllable.tex}
Boolean indicating whether all lines in the initial are indicated with a \texttt{z} or \texttt{Z} in the gabc (true), or if only the list line is so indicated (false).

\macroname{\textbackslash ifgre@rewritethissyllable}{}{gregoriotex-syllable.tex}
Boolean indicating that a syllable should be rewritten to improve ligature rendering.
Expand Down
18 changes: 16 additions & 2 deletions doc/Gabc.tex
Original file line number Diff line number Diff line change
Expand Up @@ -47,9 +47,9 @@ \subsection{File Structure}
mode-modifier: t.;
annotation: IN.;
annotation: 6;

%%

(clef) text(notes)
% another comment
com(notes)plex(notes) word(notes)
Expand Down Expand Up @@ -579,6 +579,7 @@ \subsubsection{Neume Fusion}
\texttt{gf} & flexus & if not at the end, must be followed by a higher note to fuse \\
\texttt{gh} & pes & at the end only; in non-liquescent form, the previous note must be lower to fuse \\
\texttt{gfg} & porrectus & at the end only, previous note must be lower to fuse \\
\texttt{gv} & virga & at the end only, previous note must be lower to fuse \\
\end{tabularx}

In the above table, \texttt{f}, \texttt{g}, and \texttt{h} are representative
Expand Down Expand Up @@ -646,6 +647,19 @@ \subsubsection{Neume Spacing}\label{neumespacing}
space, makes the space that follows a non-breaking space \\
\end{tabularx}

\subsubsection{Shape Hints}

In some cases, an alternate form of a shape is desired. To do this, put a
\texttt{[shape:}\textit{hint}\texttt{]} after the figure that needs to be
altered. The available alternate form hints are as follows:

\begin{tabularx}{\textwidth}{l|X}
\textit{hint} & Description \\
\hline
\texttt{stroke} & Render a clivis/flexus as a stroke (like in a porrectus)
rather than as two notes \\
\end{tabularx}

\subsubsection{Additional Symbols}

Puncta mora, episemata, and other symbols may also be added to a note by
Expand Down
Loading