source: doc/LaTeXmacros/lstlang.sty @ 05385a6

aaron-thesisarm-ehcleanup-dtorsdeferred_resndemanglerjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprnew-envno_listpersistent-indexerresolv-newwith_gc
Last change on this file since 05385a6 was 05385a6, checked in by Peter A. Buhr <pabuhr@…>, 4 years ago

add cpp keywords

  • Property mode set to 100644
File size: 5.2 KB
Line 
1%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -*- Mode: Latex -*- %%%%%%%%%%%%%%%%%%%%%%%%%%%%
2%%
3%% Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo
4%%
5%% lstlang.sty --
6%%
7%% Author           : Peter A. Buhr
8%% Created On       : Sat May 13 16:34:42 2017
9%% Last Modified By : Peter A. Buhr
10%% Last Modified On : Thu Jun 22 07:40:31 2017
11%% Update Count     : 10
12%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
13
14% Go programming language: https://github.com/julienc91/listings-golang/blob/master/listings-golang.sty
15\lstdefinelanguage{Golang}{
16        morekeywords=[1]{package,import,func,type,struct,return,defer,panic,recover,select,var,const,iota,},
17        morekeywords=[2]{string,uint,uint8,uint16,uint32,uint64,int,int8,int16,int32,int64,
18                bool,float32,float64,complex64,complex128,byte,rune,uintptr, error,interface},
19        morekeywords=[3]{map,slice,make,new,nil,len,cap,copy,close,true,false,delete,append,real,imag,complex,chan,},
20        morekeywords=[4]{for,break,continue,range,goto,switch,case,fallthrough,if,else,default,},
21        morekeywords=[5]{Println,Printf,Error,},
22        sensitive=true,
23        morecomment=[l]{//},
24        morecomment=[s]{/*}{*/},
25        morestring=[b]',
26        morestring=[b]",
27        morestring=[s]{`}{`},
28}
29
30% from https://gist.github.com/nikolajquorning/92bbbeef32e1dd80105c9bf2daceb89a
31\lstdefinelanguage{sml} {
32        morekeywords= {
33                EQUAL, GREATER, LESS, NONE, SOME, abstraction, abstype, and, andalso, array, as, before, bool,
34                case, char, datatype, do, else, end, eqtype, exception, exn, false, fn, fun, functor, handle,
35                if, in, include, infix, infixr, int, let, list, local, nil, nonfix, not, o, of, op, open,
36                option, orelse, overload, print, raise, real, rec, ref, sharing, sig, signature, string, struct,
37                structure, substring, then, true, type, unit, val, vector, where, while, with, withtype, word
38        },
39        morestring=[b]",
40        morecomment=[s]{(*}{*)},
41}
42
43\lstdefinelanguage{D}{
44        % Keywords
45        morekeywords=[1]{
46                abstract, alias, align, auto, body, break, cast, catch, class, const, continue, debug,
47                delegate, delete, deprecated, do, else, enum, export, false, final, finally, for, foreach,
48                foreach_reverse, function, goto, if, immutable, import, in, inout, interface, invariant, is,
49                lazy, macro, mixin, module, new, nothrow, null, out, override, package, pragma, private,
50                protected, public, pure, ref, return, shared, static, struct, super, switch, synchronized,
51                template, this, throw, true, try, typedef, typeid, typeof, union, unittest, volatile, while,
52                with
53        },
54        % Special identifiers, common functions
55        morekeywords=[2]{enforce},
56        % Ugly identifiers
57        morekeywords=[3]{
58                __DATE__, __EOF__, __FILE__, __LINE__, __TIMESTAMP__, __TIME__, __VENDOR__,
59                __VERSION__, __ctfe, __gshared, __monitor, __thread, __vptr, _argptr,
60                _arguments, _ctor, _dtor
61        },
62        % Basic types
63        morekeywords=[4]{
64                byte, ubyte, short, ushort, int, uint, long, ulong, cent, ucent, void, bool, bit, float,
65                double, real, ushort, int, uint, long, ulong, float, char, wchar, dchar, string, wstring,
66                dstring, ireal, ifloat, idouble, creal, cfloat, cdouble, size_t, ptrdiff_t, sizediff_t,
67                equals_t, hash_t
68        },
69        % Strings
70        morestring=[b]{"},
71        morestring=[b]{'},
72        morestring=[b]{`},
73        % Comments
74        comment=[l]{//},
75        morecomment=[s]{/*}{*/},
76        morecomment=[s][\color{blue}]{/**}{*/},
77        morecomment=[n]{/+}{+/},
78        morecomment=[n][\color{blue}]{/++}{+/},
79        % Options
80        sensitive=true
81}
82
83\lstdefinelanguage{rust}{
84        morekeywords=[1]{
85                abstract, alignof, as, become, box, break, const, continue, crate, do, else, enum, extern,
86        false, final, fn, for, if, impl, in, let, loop, macro, match, mod, move, mut, offsetof,
87        override, priv, proc, pub, pure, ref, return, Self, self, sizeof, static, struct, super,
88        trait, true, type, typeof, unsafe, unsized, use, virtual, where, while, yield
89        },
90        morestring=[b]{"},
91        comment=[l]{//},
92        morecomment=[s]{/*}{*/},
93        sensitive=true
94}
95
96\lstdefinelanguage{Pseudo}{
97        morekeywords={string,uint,int,bool,float},
98        sensitive=true,
99        morecomment=[l]{//},
100        morecomment=[s]{/*}{*/},
101        morestring=[b]',
102        morestring=[b]",
103        morestring=[s]{`}{`},
104}
105
106% CFA programming language, based on ANSI C (with some gcc additions)
107\lstdefinelanguage{CFA}[ANSI]{C}{
108        morekeywords={
109                _Alignas, _Alignof, __alignof, __alignof__, asm, __asm, __asm__, _At, __attribute,
110                __attribute__, auto, _Bool, catch, catchResume, choose, _Complex, __complex, __complex__,
111                __const, __const__, disable, dtype, enable, __extension__, fallthrough, fallthru,
112                finally, forall, ftype, _Generic, _Imaginary, inline, __label__, lvalue, _Noreturn, one_t,
113                otype, restrict, _Static_assert, throw, throwResume, trait, try, ttype, typeof, __typeof,
114                __typeof__, zero_t},
115        morekeywords=[2]{
116                _Atomic, coroutine, is_coroutine, is_monitor, is_thread, monitor, mutex, nomutex,
117                resume, suspend, thread, _Thread_local, yield},
118        moredirectives={defined,include_next}%
119}
120
121% uC++ programming language, based on ANSI C++
122\lstdefinelanguage{uC++}[ANSI]{C++}{
123        morekeywords={
124                _Accept, _AcceptReturn, _AcceptWait, _Actor, _At, _CatchResume, _Cormonitor, _Coroutine, _Disable,
125                _Else, _Enable, _Event, _Finally, _Monitor, _Mutex, _Nomutex, _PeriodicTask, _RealTimeTask,
126                _Resume, _Select, _SporadicTask, _Task, _Timeout, _When, _With, _Throw},
127}
128
129% Local Variables: %
130% tab-width: 4 %
131% fill-column: 100 %
132% End: %
Note: See TracBrowser for help on using the repository browser.