summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/phonrule/phonrule.sty
blob: 2039c1e36addca239d5f542b9f802138131d4e50 (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
% phonrule.sty v1.3.2
%
% (c) 2013-2017 Stefano Coretta
%
% This program can redistributed and/or modified under the terms
% of the LaTeX Project Public License Distributed from CTAN
% archives in directory macros/latex/base/lppl.txt; either
% version 1 of the License, or (at your option) any later version.
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\ProvidesPackage{phonrule}
  [2017/04/16 v1.3.2 LaTeX package for typesetting phonological rules]

\newcommand{\phold}{\rule[-1.5pt]{1.5ex}{.5pt}}
\newcommand{\parrow}{\ensuremath{\rightarrow}}

\newcommand{\phon} [3][\parrow] {#2 #1 #3}
\newcommand{\phonc} [4][\parrow] {#2 #1 #3~\ensuremath{/}~#4}
\newcommand{\phonr} [4][\parrow] {#2 #1 #3~\ensuremath{/}~\phold#4}
\newcommand{\phonl} [4][\parrow] {#2 #1 #3~\ensuremath{/}~#4\phold}
\newcommand{\phonb} [5][\parrow] {#2 #1 #3~\ensuremath{/}~#4\phold#5}

\newcommand*{\env}{%
    \@ifstar
        {\@env{&}}
        {\@env{~}}%
    }
\newcommand*{\@env}[3]{#2~/#1#3}

\newcommand*{\envr}{%
    \@ifstar
        {\@envr{&}}
        {\@envr{~}}%
    }
\newcommand*{\@envr}[3]{\@env{#1}{#2}{\phold#3}}

\newcommand*{\envl}{%
    \@ifstar
        {\@envl{&}}
        {\@envl{~}}%
    }
\newcommand*{\@envl}[3]{\@env{#1}{#2}{#3\phold}}

\newcommand*{\envb}{%
    \@ifstar
        {\@envb{&}}
        {\@envb{~}}%
    }
\newcommand*{\@envb}[4]{\@env{#1}{#2}{#3\phold#4}}

\newcommand*{\phonfeat}[2][c]{%
  \ensuremath{%
    \left[\begin{tabular}{#1}#2\end{tabular}\right]%
  }%
}
\newcommand*{\oneof}[2][c]{%
  \ensuremath{%
    \left\{
    \begin{tabular}{#1#1}#2\end{tabular}
    \right.
  }%
}

\endinput
%%
%% End of file `phonrule.sty'.