summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRyan Kavanagh <rak@debian.org>2020-02-24 10:00:14 -0500
committerRyan Kavanagh <rak@debian.org>2020-02-24 10:00:14 -0500
commitc2f2cc9621acdc53e14496b74632073886f9fb91 (patch)
tree74f555ab1654161a37bf3d3f6ed990b2ffd87981
parent2020 ams subj class (diff)
CCS concepts if you want them
-rw-r--r--cmuthesis.cls32
1 files changed, 32 insertions, 0 deletions
diff --git a/cmuthesis.cls b/cmuthesis.cls
index c2a5607..25065f8 100644
--- a/cmuthesis.cls
+++ b/cmuthesis.cls
@@ -39,6 +39,34 @@
\textup{2020} Mathematics Subject Classification}%
}
+% stolen from amsart.cls
+\let\@concepts\@empty
+\newcounter{@concepts}
+\newcommand\ccsdesc[2][100]{%
+ \ccsdesc@parse#1~#2~~\ccsdesc@parse@end}
+\def\textrightarrow{$\rightarrow$}
+\def\ccsdesc@parse#1~#2~#3~{%
+ \stepcounter{@concepts}%
+ \expandafter\ifx\csname CCS@General@#2\endcsname\relax
+ \expandafter\gdef\csname CCS@General@#2\endcsname{
+ \textrm{#2}}%
+ \expandafter\gdef\csname CCS@Punctuation@#2\endcsname{; }%
+ \expandafter\gdef\csname CCS@Specific@#2\endcsname{}%
+ \g@addto@macro{\@concepts}{\csname CCS@General@#2\endcsname
+ \csname CCS@Punctuation@#2\endcsname
+ \csname CCS@Specific@#2\endcsname}%
+ \fi
+ \ifx#3\relax\relax\else
+ \expandafter\gdef\csname CCS@Punctuation@#2\endcsname{
+ \textrightarrow\ }%
+ \expandafter\g@addto@macro\expandafter{\csname CCS@Specific@#2\endcsname}{%
+ \addtocounter{@concepts}{-1}%
+ \textit{#3}%
+ \ifnum\value{@concepts}=0.\else; \fi}%
+ \fi
+ \ccsdesc@parse@finish}
+\def\ccsdesc@parse@finish#1\ccsdesc@parse@end{}
+
\def\@maketitle{
\thispagestyle{empty}
@@ -120,6 +148,10 @@
\calclayout
\begin{center}
\ifx\@empty\@subjclass\else\@setsubjclass\fi
+ \ifx\@concepts\@empty\else\bgroup
+ {\textit{CCS Concepts}.%
+ \noindent\@concepts\par}\egroup
+ \fi
\ifx\@empty\@keywords\else\@setkeywords\fi
\end{center}
\vfil