### Compile and Install Gregorio
Source: https://gregorio-project.github.io/installation-mac.html
Standard commands to build and install the software.
```bash
$ ./build.sh --arch=x86_64
$ sudo ./install.sh
```
--------------------------------
### Initial GABC File Setup
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-01.html
Defines the name of the piece and the starting clef and note.
```gabc
name:Kyrie XVII;
%%
(c4)Ky(f)
```
--------------------------------
### Custom Installation Paths
Source: https://gregorio-project.github.io/installation-mac.html
Commands to specify custom installation directories for the binary and TeX files.
```bash
./build.sh --arch=x86_64 --prefix=/path/to/custom/root
sudo ./install.sh dir:/path/to/custom/texmf
```
--------------------------------
### Install Dependencies
Source: https://gregorio-project.github.io/installation-mac.html
Installs required build tools and libraries for Gregorio.
```bash
sudo port install libtool autoconf automake flex bison py-pygments
```
```bash
sudo port install libxml2
```
```bash
sudo port install bash git
```
```bash
sudo port install fontforge
```
```bash
sudo port install python27 ImageMagick coreutils
```
--------------------------------
### Install build dependencies on Ubuntu/Debian/Mint
Source: https://gregorio-project.github.io/installation-linux.html
Installs the necessary tools for building the project from the repository using apt-get.
```bash
sudo apt-get install git autoconf libltdl7-dev flex bison fontforge python-pygments
```
--------------------------------
### Install Command Line Tools
Source: https://gregorio-project.github.io/installation-mac.html
Installs the necessary Xcode command line tools.
```bash
xcode-select --install
```
--------------------------------
### Install Gregorio to custom locations
Source: https://gregorio-project.github.io/installation-linux.html
Use these commands to specify custom installation paths for the software and TeX files.
```bash
./build.sh --prefix=/path/to/custom/root
```
```bash
sudo ./install.sh dir:/path/to/custom/texmf
```
--------------------------------
### Handle Ubuntu sudo installation issues
Source: https://gregorio-project.github.io/installation-linux.html
Alternative commands for Ubuntu users encountering permission issues with the standard installation script.
```bash
sudo su ./install.sh
```
--------------------------------
### Install build tools on Debian-based systems
Source: https://gregorio-project.github.io/installation-linux.html
Installs the essential compilation tools required for building Gregorio on Ubuntu, Debian, or Mint.
```bash
sudo apt-get install build-essential
```
--------------------------------
### Complete GABC Notation Example
Source: https://gregorio-project.github.io/gabc/details.html
A full example of GABC syntax including header metadata, musical notation, and psalm tone endings.
```gabc
name: Populus Sion;
%%
(c3) Pó(eh/hi)pu(h)lus(h) Si(hi)on,(hgh.) *(;) ec(hihi)ce(e.) Dó(e.f!gwh/hi)mi(h)nus(h) vé(hi)ni(ig/ih)et(h.) (,)
ad(IV./hig)sal(fe~)ván(ghg)das(fg) gen(e_f_e_)tes(e.) :(:) et(e) au(eh)dí(h/hi)tam(i) fá(kjki)ci(i)et(i) Dó(ij)
mi(ihi)nus(IV./hiHF) (,) gló(h!i'j)ri(ji!KVJI)am(ij~) vo(j.i!jwk)cis(ji) su(i_j_i_)æ,(i.) (;) in(e) læ(e)tí(e!f'h)ti(h)a(hi!JVji)
cor(gh!ijI'H)dis(ihhf!gwh) ves(e_f_e_)tri.(e) Ps.(::) Qui(ehg) re(hi)gis(i) I(i)sra(i)el,(ik) in(j)tén(ji~)de(ij..) :*(:)
qui(ig) de(dú)cis(i) vel(i)ut(i!jwk) o(i')vem(h) Jo(hhh)seph.(fe..) (::) Gló(ehg)ri(hi)a(i) Pa(i)tri.(i) (:)
E(i)u(i!jwk)o(i)u(h) a(hhh)e(fe..) (::)
```
--------------------------------
### Install additional development dependencies
Source: https://gregorio-project.github.io/installation-linux.html
Required packages for contributors or specific older versions of the project.
```bash
imagemagick
```
```bash
libxml2-dev
```
--------------------------------
### Basic \gabcsnippet implementation
Source: https://gregorio-project.github.io/tutorial/tutorial-snippet-01.html
A simple example of using \gabcsnippet to render a chant snippet.
```LaTeX
\gabcsnippet{(cb3) Ad(d)or(f')o(h) te(h') de(h)vo(hi)te,(h.) (,) la(g)tens(f) De(e')i(d)tas,(d.) (;)
Quae(d) sub(f) his(h') fi(h)gu(hi)ris(h.) (,) ve(g)re(f) la(e')ti(d)tas:(d.) (:)
Ti(h)bi(h) se(ij) cor(k) me(kj)um(h.) (,) to(i)tum(h) sub(g')ji(f)cit,(e.) (;)
Qui(f)a(h) te(g') con(f)tem(ed)plans(d.) (,) to(f)tum(d) de(e')fi(d)cit.(d.) (::)}
```
--------------------------------
### Create a dynamically sized brace
Source: https://gregorio-project.github.io/gabc/details.html
Define the start and end points of a brace to allow automatic sizing based on note placement.
```GABC
[ob:0{]
```
```GABC
[ob:0}]
```
--------------------------------
### Define gabc-copyright header
Source: https://gregorio-project.github.io/gabc
Example of the gabc-copyright field containing a license notice and URL.
```text
gabc-copyright: CC0-1.0 by Elie Roux, 2009 ;
```
--------------------------------
### Input notes and lyrics for 'clamor'
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-01.html
Example of mapping notes to the syllables of the word 'clamor'.
```gabc
cla(g)mor(g)
```
--------------------------------
### Define GABC header fields
Source: https://gregorio-project.github.io/gabc/index.html
Examples of specific header fields for copyright and licensing information.
```text
gabc-copyright: CC0-1.0 by Elie Roux, 2009 ;
```
```text
score-copyright: (C) Abbaye de Solesmes, 1934
```
--------------------------------
### Define score-copyright header
Source: https://gregorio-project.github.io/gabc
Example of the score-copyright field indicating the source score's copyright.
```text
score-copyright: (C) Abbaye de Solesmes, 1934
```
--------------------------------
### Separation Bar Usage
Source: https://gregorio-project.github.io/gabc
Examples of how to place separation bars within GABC text and note sequences.
```text
jus(g) (::) Di(g)
```
```text
jus :(g) (:)
```
--------------------------------
### Initialize GregorioTeX document
Source: https://gregorio-project.github.io/tutorial/tutorial-snippet-01.html
The basic document structure required to use the \gabcsnippet command with an empty staff.
```latex
\documentclass[12pt, a5paper]{article}
\usepackage{fullpage}
\usepackage{fontspec}
\usepackage{libertine}
\usepackage[autocompile]{gregoriotex}
\begin{document}
\gabcsnippet{(cb3)}
\end{document}
```
--------------------------------
### Force build configuration
Source: https://gregorio-project.github.io/installation-linux.html
Re-runs the configuration process for the build script if necessary.
```bash
./build.sh --force=autoreconf
```
--------------------------------
### Set brace rendering method
Source: https://gregorio-project.github.io/gabc/details.html
Switch from the default MetaPost rendering to score font rendering.
```LaTeX
\gresetbracerendering{font}
```
--------------------------------
### Uninstalling via Command-line on MacOS and Linux
Source: https://gregorio-project.github.io/installation.html
Use these commands to set the executable bit on the uninstallation script and execute it to remove GregorioTeX components.
```bash
chmod +x $(kpsewhich --var-value TEXMFLOCAL)/scripts/gregoriotex/uninstall-gtex.sh
```
```bash
$(kpsewhich --var-value TEXMFLOCAL)/scripts/gregoriotex/uninstall-gtex.sh
```
--------------------------------
### Final Project Configuration
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-03.html
Complete LaTeX document structure incorporating font and spacing customizations.
```latex
\documentclass[12pt, a5paper]{article}
\usepackage{fullpage}
\usepackage{fontspec}
\usepackage{libertine}
\usepackage[autocompile]{gregoriotex}
\grechangestyle{commentary}{\small\bfseries}
\gresetmodenumbersystem{roman-majuscule}
\begin{document}
\begin{center}\begin{huge}\textsc{Kyrie XVII}\end{huge}\end{center}
\grechangedim{lineskip}{1 cm plus 0.36 cm minus 0.09 cm}{scalable}
\gresetheadercapture{date}{grecommentary}{}
\gregorioscore{kyrie-17}
\end{document}
```
--------------------------------
### Clone the development repository
Source: https://gregorio-project.github.io/installation-linux.html
Downloads the development branch of the Gregorio project to a local directory.
```bash
git clone --depth 1 -b develop https://github.com/gregorio-project/gregorio.git gregorio-git
```
```bash
cd gregorio-git
```
--------------------------------
### Configure initial lines
Source: https://gregorio-project.github.io/gabc/index.html
Sets the number of lines the initial letter occupies in the TeX file.
```TeX
\gresetinitiallines{__}
```
--------------------------------
### LaTeX Project File with Header Capture
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-03.html
Main LaTeX file configured to capture the 'date' header from GABC and display it as a commentary.
```latex
\documentclass[12pt, a5paper]{article}
\usepackage{fullpage}
\usepackage{fontspec}
\usepackage{libertine}
\usepackage[autocompile]{gregoriotex}
\begin{document}
\gresetheadercapture{date}{grecommentary}{}
\gregorioscore{kyrie-17}
\end{document}
```
--------------------------------
### Legacy Build Flags
Source: https://gregorio-project.github.io/installation-mac.html
Optional flags for versions prior to 4.0 to create self-contained binaries.
```bash
--enable-all-static --disable-shared --enable-static-ltdl
```
--------------------------------
### LaTeX Project File with Title and Mode Formatting
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-03.html
Final LaTeX configuration adding a document title and setting the mode number system to roman-majuscule.
```latex
\documentclass[12pt, a5paper]{article}
\usepackage{fullpage}
\usepackage{fontspec}
\usepackage{libertine}
\usepackage[autocompile]{gregoriotex}
\grechangestyle{commentary}{\small\bfseries}
\gresetmodenumbersystem{roman-majuscule}
\begin{document}
\begin{center}\begin{huge}\textsc{Kyrie XVII}\end{huge}\end{center}
\gresetheadercapture{date}{grecommentary}{}
\gregorioscore{kyrie-17}
\end{document}
```
--------------------------------
### Command line compilation steps
Source: https://gregorio-project.github.io/introduction-editor.html
The underlying commands executed by the editor during the compilation process.
```bash
lualatex --shell-escape test.tex
```
```bash
gregorio example.gabc
```
--------------------------------
### LaTeX Project File with Custom Commentary Style
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-03.html
LaTeX file modified to change the commentary style to small bold text.
```latex
\documentclass[12pt, a5paper]{article}
\usepackage{fullpage}
\usepackage{fontspec}
\usepackage{libertine}
\usepackage[autocompile]{gregoriotex}
\grechangestyle{commentary}{\small\bfseries}
\begin{document}
\gresetheadercapture{date}{grecommentary}{}
\gregorioscore{kyrie-17}
\end{document}
```
--------------------------------
### GregorioTeX Main Document
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-01.html
The LaTeX wrapper required to compile GABC files into a PDF.
```latex
\documentclass[12pt, a5paper]{article}
\usepackage{fullpage}
\usepackage{fontspec}
\usepackage{libertine}
\usepackage[autocompile]{gregoriotex}
\begin{document}
\gregorioscore{kyrie-17}
\end{document}
```
--------------------------------
### Load Custom Spacing Configuration
Source: https://gregorio-project.github.io/gregoriotex/details.html
Load a custom spacing configuration file to override default score spacing settings.
```LaTeX
\greloadspaceconf{myspaces}
```
--------------------------------
### Full LaTeX document with \gabcsnippet and \greannotation
Source: https://gregorio-project.github.io/tutorial/tutorial-snippet-01.html
A complete LaTeX document structure using \gabcsnippet and manual annotation.
```LaTeX
\documentclass[12pt, a5paper]{article}
\usepackage{fullpage}
\usepackage{fontspec}
\usepackage{libertine}
\usepackage[autocompile]{gregoriotex}
\begin{document}
\greannotation{\textsc{v}}
\gabcsnippet{(cb3) Ad(d)ór(f')o(h) te(h') de(h)vó(hi)te,(h.) (,) la(g)tens(f) Dé(e')i(d)tas,(d.) (;)
Quae(d) sub(f) his(h') fi(h)gú(hi)ris(h.) (,) ve(g)re(f) lá(e')ti(d)tas:(d.) (:)
Ti(h)bi(h) se(ij) cor(k) me(kj)um(h.) (,) to(i)tum(h) s{\'u}b(g')ji(f)cit,(e.) (;)
Qui(f)a(h) te(g') con(f)t{\'e}m(ed)plans(d.) (,) to(f)tum(d) d{\'e}(e')fi(d)cit.(d.) (::)}
\end{document}
```
--------------------------------
### Link distances with stretch and shrink
Source: https://gregorio-project.github.io/tips/fontdimen.html
Uses \gluestretch and \glueshrink to propagate changes between distances. Requires \makeatletter and \makeatother to handle internal macro names.
```latex
\makeatletter
\grechangedim{interwordspacetext}{\unexpanded{\the\fontdimen2\font plus \the\gluestretch\gre@space@skip@interwordspacenotes minus \the\glueshrink\gre@space@skip@interwordspacenotes}}{fixed}%
\makeatother
```
--------------------------------
### Configure TeXworks Syntax Highlighting
Source: https://gregorio-project.github.io/configuration-texworks.html
Append this configuration to syntax-patterns.txt to enable syntax highlighting for .gabc files.
```text
[Gabc]
# notes
tomato N \([^\)]*\)
# headers
darkblue N [^\(:]+:.*;
# comments
gray Y %.*
```
--------------------------------
### Direct compilation configuration for gabc files
Source: https://gregorio-project.github.io/introduction-editor.html
Directives to add to the top of a gabc file to enable direct compilation from the score window.
```latex
% !TEX root = test.tex
% !TEX TS-program = LuaLaTeX+se
```
--------------------------------
### Create a fixed-width brace
Source: https://gregorio-project.github.io/gabc/details.html
Use this syntax to define a brace with a specific length.
```GABC
[ob:1;6mm]
```
--------------------------------
### Illuminare-Specific Configuration Headers
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-01.html
Configuration settings specific to the Illuminare Score Editor, prefixed with a percent sign to be ignored by the Gregorio parser.
```gabc
%fontsize: 12;
```
```gabc
%spacing: vichi;
```
```gabc
%font: OFLSortsMillGoudy;
```
```gabc
%width: 4.5;
```
```gabc
%height: 11;
```
--------------------------------
### Add flat and double bar to GABC
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-01.html
Demonstrates adding a flat symbol using 'ix' and a double bar using '::' in the GABC file.
```gabc
name:Kyrie XVII;
%%
(c4)Ky(f)ri(gfg)e(h.) * e(ixjvIH'GhvF'E)le(ghg')i(g)son(f.). bis(::)
```
--------------------------------
### Adjusting Spacing Breaks
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-03.html
Use single, double, or quadruple slashes to control spacing between notes, noting that Gregorio's collision avoidance often handles tight spacing better than the preview.
```gabc
//
```
```gabc
////
```
--------------------------------
### Configure GregorioTeX Layout and Styles
Source: https://gregorio-project.github.io/gregoriotex/details.html
Commands to modify the appearance of staff lines, clefs, fonts, and glyph styles in GregorioTeX.
```latex
\gresetlines{invisible}
```
```latex
\gresetclef{invisible}
```
```latex
\grechangestafflinethickness{__}
```
```latex
\gresetgregoriofont[op]{granapadano}
```
```latex
\gresetbolshifts{disable}
```
```latex
\gresetbolshifts{enable}
```
```latex
\gresetglyphstyle{mensural}
```
```latex
\gresetglyphstyle{hufnagel}
```
```latex
\gresetglyphstyle{medicaea}
```
```latex
\gresetlinesbehindpunctumcavum{visible}
```
```latex
\gresetlinesbehindalteration{invisible}
```
--------------------------------
### Insert Multiple Glyphs via Short Score
Source: https://gregorio-project.github.io/tips/isolatedneumes.html
Use a minipage inside a raisebox to render complex gabc snippets as inline neumes, adjusting the dimensions to fit the surrounding text.
```latex
\raisebox{0pt}[\height][\depth]{%
\begin{minipage}{0.8cm}%
\gresetlines{invisible}%
\gresetclef{invisible}%
\greseteolcustos{manual}%
\gabcsnippet{(fvEDC)}%
\end{minipage}%
}%
```
--------------------------------
### TeXShop compilation directive
Source: https://gregorio-project.github.io/introduction-editor.html
A magic comment to specify the compilation program for TeXShop.
```latex
% !TEX program = LuaLaTeX+se
```
--------------------------------
### Enable Aggressive Aux File Deletion
Source: https://gregorio-project.github.io/configuration-texshop.html
Sets a hidden preference in TeXShop to always perform an aggressive delete of auxiliary files, which is useful for gtex files that do not share the root project name.
```bash
defaults write TeXShop AggressiveTrashAUX YES
```
--------------------------------
### Complete GABC file for Kyrie XVII
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-02.html
Full GABC file including all notes for the Kyrie XVII piece.
```gabc
name:Kyrie XVII;
%%
(c4)KY(f)ri(gfg)e(h.) *() e(ixjvIH'GhvF'E)lé(ghg')i(g)son.(f.) bis(::)
Chri(ixj)ste(jv.hijv.) e(ixjvIH'GhvF'E)lé(ghg')i(g)son.(f.) bis(::)
Ký(f)ri(hj)e(ixjjkij.) e(ixjvIH'GhvF'E)lé(ghg')i(g)son.(f.) (::)
Ký(f)ri(hj)e(ixjjkij.) *() (ixfhjjkij.) **() e(ixjvIH'GhvF'E)lé(ghg')i(g)son.(f.) (::)
```
--------------------------------
### Clone Gregorio Repository
Source: https://gregorio-project.github.io/installation-mac.html
Commands to clone the Gregorio repository, either with or without full history.
```bash
$ git clone --depth 1 -b develop https://github.com/gregorio-project/gregorio.git gregorio-git
```
```bash
$ git clone https://github.com/gregorio-project/gregorio.git gregorio-git
```
--------------------------------
### GABC note grouping fragments
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-02.html
Demonstrates using an exclamation point to define note grouping patterns.
```gabc
Ký(f)ri(hj)e(ixjjkij.) *(,) (ixfhjjkij.) **(,)
```
```gabc
Ký(f)ri(hj)e(ixjjkij.) *(,) (ixf!hjjkij.) **(,)
```
--------------------------------
### Configure TeXworks File Open Filter
Source: https://gregorio-project.github.io/configuration-texworks.html
Add this line to the texworks-config.txt file to enable filtering for .gabc files in file dialogs.
```text
file-open-filter: Gabc score (*.gabc)
```
--------------------------------
### Quilisma Notation
Source: https://gregorio-project.github.io/gabc
Append a 'w' after a pitch to indicate a quilisma.
```text
w
```
--------------------------------
### Configure TeXworks Cleanup Patterns
Source: https://gregorio-project.github.io/configuration-texworks.html
Add this line to the texworks-config.txt file to ensure intermediate GregorioTeX files are removed during cleanup.
```text
cleanup-patterns: $jobname.gaux *-*_*_*.gtex
```
--------------------------------
### GABC File with Mode and Date Headers
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-03.html
Updated GABC file including mode and date metadata headers for use in the score.
```gabc
name:Kyrie XVII;
mode: 6;
date: XIV\textsuperscript{o} s.;
%%
(c4)KY(f)ri(gfg)e(h.) *() e(ixjvIH'GhvF'E)lé(ghg')i(g)son.(f.) bis(::)
Chri(ixj)ste(jv.hijv.) e(ixjvIH'GhvF'E)lé(ghg')i(g)son.(f.) bis(::)
Ký(f)ri(hj)e(ixjjkij.) (z) e(ixjvIH'GhvF'E)lé(ghg')i(g)son.(f.) (::)
Ký(f)ri(hj)e(ixjjkij.) *(,) (ixf!hjjkij.) **(,) (z) e(ixjvIH'GhvF'E)lé(ghg')i(g)son.(f.) (::)
```
--------------------------------
### Locate system-wide texmf-local
Source: https://gregorio-project.github.io/installation-linux.html
Command to identify the system-wide directory used for TeX files.
```bash
kpsewhich -var-value TEXMFLOCAL
```
--------------------------------
### Update local source files
Source: https://gregorio-project.github.io/installation-linux.html
Updates the local repository to the latest version from the remote source.
```bash
git pull
```
--------------------------------
### Add Comments
Source: https://gregorio-project.github.io/gabc/details.html
Use the percent sign to ignore text on a line.
```GABC
%
```
--------------------------------
### Correct flat placement
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-02.html
Applying a flat by adding a pitch indicator followed by the flat symbol.
```gabc
ix(ix) g(g) h(h)
```
--------------------------------
### Adding accents to \gabcsnippet
Source: https://gregorio-project.github.io/tutorial/tutorial-snippet-01.html
Demonstrates the use of accented characters within the \gabcsnippet command.
```LaTeX
\gabcsnippet{(cb3) Ad(d)ór(f')o(h) te(h') de(h)vó(hi)te,(h.) (,) la(g)tens(f) Dé(e')i(d)tas,(d.) (;)
Quae(d) sub(f) his(h') fi(h)gú(hi)ris(h.) (,) ve(g)re(f) lá(e')ti(d)tas:(d.) (:)
Ti(h)bi(h) se(ij) cor(k) me(kj)um(h.) (,) to(i)tum(h) s{\'u}b(g')ji(f)cit,(e.) (;)
Qui(f)a(h) te(g') con(f)t{\'e}m(ed)plans(d.) (,) to(f)tum(d) d{\'e}(e')fi(d)cit.(d.) (::)}
```
--------------------------------
### Correct text alignment and asterisk placement
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-01.html
Shows how to move the period next to the syllable and add empty parentheses to the asterisk to give it its own syllable.
```gabc
e(ixjvIH'GhvF'E)le(ghg')i(g)son.(f.)
```
```gabc
name:Kyrie XVII;
%%
(c4)Ky(f)ri(gfg)e(h.) *() e(ixjvIH'GhvF'E)le(ghg')i(g)son.(f.) bis(::)
```
--------------------------------
### Inputting notes and bar lines
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-02.html
Initial entry of text and notes for the final word of the third line.
```gabc
e-jus(g) (::)
```
--------------------------------
### Define GABC file structure
Source: https://gregorio-project.github.io/gabc/index.html
The standard structure for a .gabc file, including mandatory and optional header fields followed by the musical notation.
```text
name: incipit;
gabc-copyright: copyright on this gabc file;
score-copyright: copyright on the source score;
office-part: introitus/...;
occasion: in church calendar;
meter: for metrical hymns;
commentary: source of words;
arranger: name of arranger;
author: if known;
date: xi c;
manuscript: ms name;
manuscript-reference: e.g. CAO reference;
manuscript-storage-place: library/monastery;
book: from which score taken;
language: of the lyrics;
transcriber: writer of gabc;
transcription-date: 2009;
mode: 6;
user-notes: whatever other comments you wish to make;
annotation: IN.;
annotation: 6;
%%
(clef) text(notes)
```
--------------------------------
### Incorrect flat placement
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-02.html
Demonstrates the incorrect way to apply a flat to a note.
```gabc
g(g) x(x) h(h)
```
--------------------------------
### Define Vowel Rules in gregorio-vowels.dat
Source: https://gregorio-project.github.io/gabc/index.html
Use this syntax to define language aliases, vowel characters, prefixes, suffixes, and secondary syllable centers.
```text
alias [english] to [en];
alias [English] to [en];
alias [eng] to [en];
language [en];
vowel aàáâAÀÁÂ;
vowel eèéêëEÈÉÊË;
vowel iìíîIÌÍÎ;
vowel oòóôOÒÓÔ;
vowel uùúûUÙÚÛ;
vowel yỳýYỲÝ;
vowel æǽÆǼ;
vowel œŒ;
prefix qu Qu qU QU;
prefix gu Gu gU GU;
prefix y Y;
suffix w W;
suffix we We wE WE;
secondary w W;
```
--------------------------------
### Write basic text and neumes in GABC
Source: https://gregorio-project.github.io/gabc/index.html
Associate neumes with syllables by placing them in parentheses immediately following the syllable.
```gabc
Po(eh/hi)pu(h)lus(h) Si(hi)on(hgh)
```
--------------------------------
### Barebones LaTeX document for Gregorio
Source: https://gregorio-project.github.io/introduction-editor.html
A minimal LaTeX template for including a Gregorio score using the autocompile feature.
```latex
\documentclass[11pt]{article}
\usepackage{fontspec}
\usepackage[autocompile]{gregoriotex}
\begin{document}
\gregorioscore{example}
\end{document}
```
--------------------------------
### Add a quilisma to a note
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-01.html
Indicate a quilisma by placing a 'w' after the pitch letter.
```gabc
cw
```
--------------------------------
### Increase spacing between notes
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-01.html
Use a forward slash to force additional space between notes to avoid glyph collision.
```gabc
//
```
--------------------------------
### Generate Gregorian Chant Score Without Margins
Source: https://gregorio-project.github.io/tips/nomargin.html
Uses LaTeX commands to set the PDF page dimensions to the exact size of the score box, effectively removing all margins. Requires manual adjustments for specific font glyphs that may exceed their bounding boxes.
```latex
% !TEX program = LuaLaTeX+se
% This document produces a pdf containing the score with no margin.
% It is based on this solution:
% http://tex.stackexchange.com/questions/291630/best-way-to-know-bottom-line-height-of-a-pdf/291664#291664
%
% It contains advanced commands quite difficult to understand, but should be straightforward
% to adapt to your needs.
%
\documentclass[11pt]{article}
\usepackage{gregoriotex}
\usepackage{libertine}
% Do not load geometry, fullpage, or any package changing width
% or margins.
\hoffset-1in
\voffset-1in
\newbox\scorebox
% using the "commentary" header of the gabc file
\gresetheadercapture{commentary}{grecommentary}{string}
\begin{document}
% here the final "9" of the commentary would be cut too sharp. The reason is that
% the italic "9" glyph in the libertine font is larger than its bounding box, the
% dimension of which that TeX is actually aware (which is normal for italic), so we
% have manually insert the italic correction (`\/`), the small kern which is normally
% used when switching from italics to upright fonts.
% In the libertine font, the “f” is also slightly taller than its bounding box, so we have
% to prevent it from getting cut off too. Unfortunately, there isn’t a convenient
% measure of this built in, so we have to fudge this ourselves with a strut. Adjust the
% 0.8em to your taste.
% We use an admittedly strange trick to fix these, redefining grecommentary.
\let\grevanillacommentary\grecommentary
\def\grecommentary#1{\grevanillacommentary{#1\/\rule{0pt}{0.8em}}}
\setbox\scorebox=\vbox{\hsize=10cm\relax % change the width of the score here
\gregorioscore[a]{PopulusSion}
}
\pdfpagewidth\wd\scorebox
\pdfpageheight\dimexpr\ht\scorebox+\dp\scorebox\relax
\shipout\box\scorebox
\end{document}
```
--------------------------------
### Partial GABC file for Kyrie XVII
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-02.html
Initial GABC file structure for the Kyrie XVII score.
```gabc
name:Kyrie XVII;
%%
(c4)KY(f)ri(gfg)e(h.) *() e(ixjvIH'GhvF'E)lé(ghg')i(g)son.(f.) bis(::)
```
--------------------------------
### Arrange Multiple Scores on One Line
Source: https://gregorio-project.github.io/tips/shortscore.html
Place multiple minipage environments side-by-side to display several scores on the same line. Use the [t] alignment option to ensure staff lines remain aligned.
```latex
% !TEX TS-program = LuaLaTeX+se
\documentclass[11pt]{article}
\usepackage{gregoriotex}
\usepackage{fullpage}
\usepackage{libertine}
\gresetinitiallines{0}
\greseteolcustos{manual}%
\pagestyle{empty}
\begin{document}
\noindent%
\begin{minipage}[t]{4.8cm}%
\gabcsnippet{(c4) V/. Ky(f)ri(d)e(d) e(d)le(d)i(c)son(d.) R/.(::)}%
\end{minipage}%
\begin{minipage}[t]{3.6cm}%
\gresetlinecolor{gregoriocolor}%
\gresetclef{invisible}%
\gabcsnippet{ Chris(f)te(d) e(d)le(d)i(c)son(d.)}%
\end{minipage}%
\begin{minipage}[t]{4.5cm}%
\gresetclef{invisible}%
\gabcsnippet{V/.(::) Ky(f)ri(d)e(d) e(d)le(d)i(c)son(d.) (::)}%
\end{minipage}%
\end{document}
```
--------------------------------
### Configure Custos Behavior
Source: https://gregorio-project.github.io/gabc/details.html
Control the automatic generation of custos at line endings or force them manually.
```GABC
\greseteolcustos{manual}
```
```GABC
z0
```
```GABC
g+
```
--------------------------------
### Define GABC Annotations
Source: https://gregorio-project.github.io/gabc/index.html
Use these headers to define annotations for the chant. Full TeX markup is supported for styling.
```text
annotation:Ad Magnif.;
annotation:VIII G;
```
```text
annotation:{\color{red}Ad Magnif.};
annotation:{\color{red}VIII G};
```
--------------------------------
### Change Typeface in LaTeX
Source: https://gregorio-project.github.io/tutorial/tutorial-gabc-file-03.html
Replace the default font package with a custom font using the setmainfont command.
```latex
\usepackage{libertine}
```
```latex
\setmainfont{Arial}
```