summaryrefslogtreecommitdiff
path: root/macros/unicodetex/latex/lilyglyphs/documentation/resources/lilyglyphsStyle.sty
blob: bff6ad1c8484b2e8f3c2f549580c66479f02ccaa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%                                                                        %
%      This file is part of the 'lilyglyphs' LaTeX package.              %
%                                ==========                              %
%                                                                        %
%              https://github.com/openlilylib/lilyglyphs                 %
%               http://www.openlilylib.org/lilyglyphs                    %
%                                                                        %
%  Copyright 2012-2013 Urs Liska and others, ul@openlilylib.org          %
%                                                                        %
%  'lilyglyphs' is free software: you can redistribute it and/or modify  %
%  it under the terms of the LaTeX Project Public License, either        %
%  version 1.3 of this license or (at your option) any later version.    %
%  You may find the latest version of this license at                    %
%               http://www.latex-project.org/lppl.txt                    %
%  more information on                                                   %
%               http://latex-project.org/lppl/                           %
%  and version 1.3 or later is part of all distributions of LaTeX        %
%  version 2005/12/01 or later.                                          %
%                                                                        %
%  This work has the LPPL maintenance status 'maintained'.               %
%  The Current Maintainer of this work is Urs Liska (see above).         %
%                                                                        %
%  This work consists of the files listed in the file 'manifest.txt'     %
%  which can be found in the 'license' directory.                        %
%                                                                        %
%  This program is distributed in the hope that it will be useful,       %
%  but WITHOUT ANY WARRANTY; without even the implied warranty of        %
%  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.                  %
%                                                                        %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\NeedsTeXFormat{LaTeX2e} 
\ProvidesPackage{lilyglyphsStyle}

\RequirePackage{fontspec}

% Of course we need lilyglyphs itself :-)
\RequirePackage{lilyglyphs}

% Improve typography and paragraph layout
\RequirePackage{microtype}

% Suppress superfluous ligature
\RequirePackage[english]{selnolig}

% Typeset XeLaTeX and LuaTeX logos regardless of engine used
\RequirePackage{hologo}  

\frenchspacing

% Enhanced table commands
\RequirePackage{booktabs}
\RequirePackage{longtable}

% Tightly spaced lists
\RequirePackage{mdwlist}

% Typeset listings
% (Special styles defined in OLLstyles.sty)
\RequirePackage{listings}
% Format listings with typewriter font by default
\lstset{
    frame=single,
    basicstyle=\fontspec{Liberation Mono}\footnotesize}

% Common table format for reference tables
\newenvironment{reftable}[2]
	{%
			\begin{center}
				\begin{longtable}[H]{lll}
				\caption{#1}\\
				\label{tab:#2}\\
					\toprule
					&\\
	}
	{%
					&\\
					\bottomrule
				\end{longtable}
			\end{center}
	}

% Insert a picture with a glyph list from LilyPond's glyph list
% #1 is the caption of the figure
% #2 the label name
% #5 the file name of the image
\newcommand{\glyphlist}[3]{%
	\begin{figure}[htbp]
		\centering
		\includegraphics[width=.75\textwidth]{glyphlist/resources/#3}
		\caption{#1}
		\label{fig:#2}
	\end{figure}
}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Character styles
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Format LaTeX or LilyPond commands like \env with a prepended backslash
\newcommand*{\cmd}[1]{\env{\textbackslash #1}}

% Format directory names
\newcommand*{\dir}[1]{\texttt{#1}}

% Format environment names
\newcommand*{\env}[1]{\texttt{#1}}

% Format package names
\newcommand*{\package}[1]{\texttt{#1}}

% Add a TODO item that is easily spotted
\newcommand{\todo}[1]{{\color{red}{\textbf{\textsf{[TODO: #1]}}}}}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Other commands
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

% Reference an Issue on openLilyLib's Github account
\newcommand*{\ghIssue}[1]{\href{https://github.com/openlilylib/lilyglyphs/issues/#1}{(GitHub-Issue \##1)}}

% print "LilyPond" (may be formatted later)
\newcommand*{\lilypond}{\texttt{LilyPond}}

\newcommand*{\emmentaler}{\textsc{Emmentaler}}

% print "openLilyLib" (may be formatted later)
\newcommand*{\openlilylib}{\texttt{openLilyLib}}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Add fancyref for smart cross-references 
\RequirePackage{fancyref}

% categories for subsection and subsubsection:

% subsection - subsec:

\newcommand*{\fancyrefsubseclabelprefix}{subsec}

\fancyrefaddcaptions{english}{%
  \providecommand*{\frefsubsecname}{subsection}%
  \providecommand*{\Frefsubsecname}{Subsection}%
}

\frefformat{plain}{\fancyrefsubseclabelprefix}{\frefsubsecname\fancyrefdefaultspacing#1}
\Frefformat{plain}{\fancyrefsubseclabelprefix}{\Frefsubsecname\fancyrefdefaultspacing#1}

\frefformat{vario}{\fancyrefsubseclabelprefix}{%
  \frefsubsecname\fancyrefdefaultspacing#1#3%
}
\Frefformat{vario}{\fancyrefsubseclabelprefix}{%
  \Frefsubsecname\fancyrefdefaultspacing#1#3%
}

% subsubsection - subsubsec:

\newcommand*{\fancyrefsubsubseclabelprefix}{subsubsec}

\fancyrefaddcaptions{english}{%
  \providecommand*{\frefsubsubsecname}{subsection}% the same as for subsection
  \providecommand*{\Frefsubsubsecname}{Subsection}%
}

\frefformat{plain}{\fancyrefsubsubseclabelprefix}{\frefsubsubsecname\fancyrefdefaultspacing#1}
\Frefformat{plain}{\fancyrefsubsubseclabelprefix}{\Frefsubsubsecname\fancyrefdefaultspacing#1}

\frefformat{vario}{\fancyrefsubsubseclabelprefix}{%
  \frefsubsubsecname\fancyrefdefaultspacing#1#3%
}
\Frefformat{vario}{\fancyrefsubsubseclabelprefix}{%
  \Frefsubsubsecname\fancyrefdefaultspacing#1#3%
}

% End fancyref
%%%%%%%%%%%%%%%%%%

%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Options for use of hyperlinks
% (make sure this is included last)
\RequirePackage[%
	colorlinks,
	urlcolor=blue,
	bookmarks=true,
	bookmarksnumbered=true]{hyperref}