forked from lanl/coNCePTuaL
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathncptl.sty.in
112 lines (106 loc) · 3.91 KB
/
ncptl.sty.in
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
%% ----------------------------------------------------------------------
%%
%% LaTeX style sheet for coNCePTuaL
%%
%% By Scott Pakin <[email protected]>
%%
%% ----------------------------------------------------------------------
%%
%%
%% Copyright (C) 2015, Los Alamos National Security, LLC
%% All rights reserved.
%%
%% Copyright (2015). Los Alamos National Security, LLC. This software
%% was produced under U.S. Government contract DE-AC52-06NA25396
%% for Los Alamos National Laboratory (LANL), which is operated by
%% Los Alamos National Security, LLC (LANS) for the U.S. Department
%% of Energy. The U.S. Government has rights to use, reproduce,
%% and distribute this software. NEITHER THE GOVERNMENT NOR LANS
%% MAKES ANY WARRANTY, EXPRESS OR IMPLIED, OR ASSUMES ANY LIABILITY
%% FOR THE USE OF THIS SOFTWARE. If software is modified to produce
%% derivative works, such modified software should be clearly marked,
%% so as not to confuse it with the version available from LANL.
%%
%% Additionally, redistribution and use in source and binary forms,
%% with or without modification, are permitted provided that the
%% following conditions are met:
%%
%% * Redistributions of source code must retain the above copyright
%% notice, this list of conditions and the following disclaimer.
%%
%% * Redistributions in binary form must reproduce the above copyright
%% notice, this list of conditions and the following disclaimer
%% in the documentation and/or other materials provided with the
%% distribution.
%%
%% * Neither the name of Los Alamos National Security, LLC, Los Alamos
%% National Laboratory, the U.S. Government, nor the names of its
%% contributors may be used to endorse or promote products derived
%% from this software without specific prior written permission.
%%
%% THIS SOFTWARE IS PROVIDED BY LANS AND CONTRIBUTORS "AS IS" AND ANY
%% EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
%% IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
%% PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL LANS OR CONTRIBUTORS BE
%% LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
%% OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
%% OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
%% BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
%% WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
%% OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
%% EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
%%
%%
%% ----------------------------------------------------------------------
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{ncptl}[????/??/?? v1.0 Pretty-print coNCePTuaL listings]
% Define the ncptl environment as either ncptl@plain or ncptl@gaudy
% based on a package option.
\newif{\ifncptlgaudy}
\DeclareOption{plain}{\ncptlgaudyfalse}
\DeclareOption{gaudy}{\ncptlgaudytrue}
\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{listings}}
\ProcessOptions\relax
% The listings package does most of our work.
\RequirePackage{listings}[2002/04/01]
% List all of coNCePTuaL's keywords.
\lstdefinelanguage{ncptl}{
morekeywords={MAKE SHOULD HAVE REPLACED THIS LINE},
sensitive=false,
morecomment=[l]{\#},
morestring=[b]"
}
\ifncptlgaudy
% Select the coNCePTuaL language. Additionally enable some
% literate-programming substitutions.
\lstnewenvironment{ncptl}[1][]{%
\lstset{%
language=ncptl,
literate=%
{for each}{$\forall$}{1}%
{comes from}{$\leftarrow$}{1}%
{/\\}{$\wedge$}{1}%
{\\/}{$\vee$}{1}%
{<>}{$\neq$}{1}%
{<=}{$\leq$}{1}%
{>=}{$\geq$}{1}%
{*}{$\times$}{1}%
{**}{$\uparrow$}{2}%
{/}{$\div$}{1}%
{...}{\dots}{2},
#1%
}%
}{}
\else
% Select the coNCePTuaL language with no literate-programming
% substitutions.
\lstnewenvironment{ncptl}[1][]{%
\lstset{%
language=ncptl,
#1%
}%
}{}
\fi
\endinput
%%
%% End of file `ncptl.sty'.