blob: c6d24f5cb55e18af4c711cef72cf2c5c360cc16a (
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
|
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{semantic-markup}[2016/10/28
Macros for TEI-like semantic markup]
% Copyright 2016 Andrew A. Cashner, andrewacashner@gmail.com
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either
% version 1.3 of this license or (at your option) any
% later version.
% The latest version of this license is in
% http://www.latex-project.org/lppl.txt
% 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 Andrew A. Cashner.
% This work consists of the package file semantic-markup.sty
% and the documentation file semantic-markup.tex.
% CHANGE LOG
% 2016-09-22 `endnotes' option added
% 2016-09-01 First version on CTAN
% Option to use csquotes default behavior instead of the
% US localized punctuation used in this package
\newif\ifdefaultquotes
\defaultquotesfalse
\DeclareOption{defaultquotes}{\defaultquotestrue}
% Option to convert footnotes to endnotes, include
% Footnote environment
\newif\ifendnotes
\endnotesfalse
\DeclareOption{endnotes}{\endnotestrue}
\ProcessOptions\relax
%**************************
\RequirePackage{xparse}
\RequirePackage{csquotes}
\ifdefaultquotes\else
% Put end punctuation inside quotation marks
% for the specified marks
\renewcommand{\mktextquote}[6]{#1#2#4#5#3#6}
\DeclareAutoPunct{.,!?}
\fi
\NewDocumentCommand{\quoted}{}
{\textquote}
\NewDocumentCommand{\soCalled}{}
{\textquote}
\NewDocumentCommand{\strong}{}
{\textbf}
\NewDocumentCommand{\code}{}
{\texttt}
\NewDocumentCommand{\term}{}
{\emph}
\NewDocumentCommand{\mentioned}{}
{\emph}
\NewDocumentCommand{\foreign}{}
{\emph}
\NewDocumentCommand{\worktitle}{}
{\emph}
\NewDocumentCommand{\parttitle}{}
{\textquote}
% editorial addition
\NewDocumentCommand{\add}{ m }
{[#1]}
% editorial ellipsis
\NewDocumentCommand{\Dots}{}{\add{\dots}}
% explanatory gloss of technical or foreign term
\NewDocumentCommand{\gloss}{ m m }{%
\mentioned{#1} (#2)%
}
% explanatory gloss of word in quotation marks
\NewDocumentCommand{\quotedgloss}{ m m }{%
\quoted{#1} (#2)%
}
%*******************
% Identify problem spot in draft
\NewDocumentCommand{\XXX}{ O{\add{FIX}} }{%
\textbf{#1}%
}
% Indicate citation to be filled in later
% Optional argument for indicating the source
\NewDocumentCommand{\citXXX}{ o }{%
\footnote{\textbf{[Citation needed]\IfValueTF{#1}{#1}{}}}%
}
%*******************
% Footnote as environment
\RequirePackage{environ}
\NewEnviron{Footnote}{\footnote{\BODY}}[]
%******************
% Endnotes, if desired
% Footnote environment adjusted to fix expansion problem
\ifendnotes
\RequirePackage{endnotes}
\RenewEnviron{Footnote}{\expandafter\footnote\expandafter{\BODY}}[]
\let\footnote=\endnote
\AtEndDocument{\theendnotes}
\fi
%****************************************
% MUSIC SYMBOLS
% Accidentals using LaTeX symbols
\NewDocumentCommand{\fl}{}{$\flat$}
\NewDocumentCommand{\na}{}{$\natural$}
\NewDocumentCommand{\sh}{}{$\sharp$}
% Octave subscripts
\NewDocumentCommand{\octave}{ }{\textsubscript}
% Music figures
\RequirePackage{amsmath}
\NewDocumentCommand{\musfig}{ m m }{%
$\genfrac{}{}{0pt}{1}{\text{#1}}{\text{#2}}$%
}
% Meter signatures
\RequirePackage[rm]{harmony}
\NewDocumentCommand{\meter}{ m m }{\Takt{#1}{#2}}
\endinput
|