source: doc/LaTeXmacros/lstlang.sty @ cdbb909

Last change on this file since cdbb909 was ead3858, checked in by Peter A. Buhr <pabuhr@…>, 4 months ago

add countof as keyword to CFA lstlang

  • Property mode set to 100644
File size: 6.3 KB
RevLine 
[218aecf]1%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -*- Mode: Latex -*- %%%%%%%%%%%%%%%%%%%%%%%%%%%%
2%%
3%% Cforall Version 1.0.0 Copyright (C) 2016 University of Waterloo
[fb31cb8]4%%
5%% lstlang.sty --
6%%
[218aecf]7%% Author           : Peter A. Buhr
8%% Created On       : Sat May 13 16:34:42 2017
9%% Last Modified By : Peter A. Buhr
[ead3858]10%% Last Modified On : Wed Jul 24 07:40:11 2024
11%% Update Count     : 45
[218aecf]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= {
[e7602ed]33                EQUAL, GREATER, LESS, NONE, SOME, abstraction, abstype, and, andalso, array, as, before,
34                bool, case, char, datatype, do, else, end, eqtype, exception, exn, false, fn, fun, functor,
35                handle, if, in, include, infix, infixr, int, let, list, local, nil, nonfix, not, o, of, op,
36                open, option, orelse, overload, print, raise, real, rec, ref, sharing, sig, signature,
37                string, struct, structure, substring, then, true, type, unit, val, vector, where, while,
38                with, withtype, word
39    },
40    morestring=[b]",
41    morecomment=[s]{(*}{*)},
[218aecf]42}
43
44\lstdefinelanguage{D}{
45        % Keywords
46        morekeywords=[1]{
47                abstract, alias, align, auto, body, break, cast, catch, class, const, continue, debug,
48                delegate, delete, deprecated, do, else, enum, export, false, final, finally, for, foreach,
49                foreach_reverse, function, goto, if, immutable, import, in, inout, interface, invariant, is,
50                lazy, macro, mixin, module, new, nothrow, null, out, override, package, pragma, private,
51                protected, public, pure, ref, return, shared, static, struct, super, switch, synchronized,
52                template, this, throw, true, try, typedef, typeid, typeof, union, unittest, volatile, while,
53                with
54        },
55        % Special identifiers, common functions
56        morekeywords=[2]{enforce},
57        % Ugly identifiers
58        morekeywords=[3]{
59                __DATE__, __EOF__, __FILE__, __LINE__, __TIMESTAMP__, __TIME__, __VENDOR__,
60                __VERSION__, __ctfe, __gshared, __monitor, __thread, __vptr, _argptr,
61                _arguments, _ctor, _dtor
62        },
63        % Basic types
64        morekeywords=[4]{
65                byte, ubyte, short, ushort, int, uint, long, ulong, cent, ucent, void, bool, bit, float,
66                double, real, ushort, int, uint, long, ulong, float, char, wchar, dchar, string, wstring,
67                dstring, ireal, ifloat, idouble, creal, cfloat, cdouble, size_t, ptrdiff_t, sizediff_t,
68                equals_t, hash_t
69        },
70        % Strings
71        morestring=[b]{"},
72        morestring=[b]{'},
73        morestring=[b]{`},
74        % Comments
75        comment=[l]{//},
76        morecomment=[s]{/*}{*/},
77        morecomment=[s][\color{blue}]{/**}{*/},
78        morecomment=[n]{/+}{+/},
79        morecomment=[n][\color{blue}]{/++}{+/},
80        % Options
81        sensitive=true
82}
83
84\lstdefinelanguage{rust}{
[e7602ed]85        % Keywords
[218aecf]86        morekeywords=[1]{
87                abstract, alignof, as, become, box, break, const, continue, crate, do, else, enum, extern,
[e7602ed]88                false, final, fn, for, if, impl, in, let, loop, macro, match, mod, move, mut, offsetof,
89                override, priv, proc, pub, pure, ref, return, Self, self, sizeof, static, struct, super,
90                trait, true, type, typeof, unsafe, unsized, use, virtual, where, while, yield
[218aecf]91        },
[e7602ed]92        % Strings
[218aecf]93        morestring=[b]{"},
[e7602ed]94        % Comments
[218aecf]95        comment=[l]{//},
96        morecomment=[s]{/*}{*/},
[e7602ed]97        % Options
[218aecf]98        sensitive=true
99}
100
[8bdc9705]101\lstdefinelanguage{OCaml}%
102        {morekeywords={
103                and, as, asr, assert, begin, class, constraint do, done, downto, else, end, exception, external,
104                false, for, fun, function, functor, if, in, include, inherit, initializer, land, lazy, let, lor, lsl, lsr, lxor,
105                match, method, mod, module, open, mutable, new, nonrec, object, of, open, open!, or, private, rec,
106                sig, struct, then, to, true, try, type, val, virtual, when, while, with
107        },
108   sensitive,%
109   morecomment=[n]{(*}{*)},%
110   morestring=[d]"%
111}[keywords,comments,strings]%
[218aecf]112
113% CFA programming language, based on ANSI C (with some gcc additions)
114\lstdefinelanguage{CFA}[ANSI]{C}{
115        morekeywords={
[75d789c]116                alignas, _Alignas, alignof, _Alignof, __alignof, __alignof__, and, asm, __asm, __asm__, _Atomic, __attribute, __attribute__,
[ead3858]117                __auto_type, basetypeof, _Bool, bool, catch, catchResume, choose, coerce, cofor, corun, countof, _Complex, __complex, __complex__,
[c3c9325]118                __const, __const__, continue, coroutine, _Decimal32, _Decimal64, _Decimal128, disable, dtype, enable, exception, __extension__,
[75d789c]119                fallthrough, fallthru, finally, fixup, __float80, float80, __float128, float128, _Float16, _Float32, _Float32x, _Float64,
120                _Float64x, _Float128, _Float128x, forall, fortran, ftype, generator, _Generic, _Imaginary, __imag, __imag__, inline,
121                __inline, __inline__, int128, __int128, __int128_t, __label__, monitor, mutex, _Noreturn, __builtin_offsetof, one_t, or,
122                otype, recover, report, restrict, __restrict, __restrict__, __signed, __signed__, _Static_assert, static_assert, suspend,
123                thread, __thread, _Thread_local, thread_local, throw, throwResume, timeout, trait, try, ttype, typedef, typeof, __typeof,
124                __typeof__, typeid, __uint128_t, __builtin_va_arg, __builtin_va_list, virtual, __volatile, __volatile__, vtable,
125                waitfor, waituntil, when, with, zero_t
[9ca94af]126    },
[05385a6]127        moredirectives={defined,include_next}%
[218aecf]128}
129
[8712514]130% uC++ programming language, based on ANSI C++
[3d5a8cb]131\lstdefinelanguage{uC++}[GNU]{C++}{
[8712514]132        morekeywords={
[0497bd6]133                _Accept, _AcceptReturn, _AcceptWait, _Actor, _At, _Catch, _CatchResume, _CorActor, _Cormonitor, _Coroutine,
[562a711]134                _Disable, _Else, _Enable, _Event, _Exception, _Finally, _Monitor, _Mutex, _Nomutex, _PeriodicTask, _RealTimeTask,
[75d789c]135                _Resume, _ResumeTop, _Select, _SporadicTask, _Task, _Timeout, _When, _With, _Throw
136        },
[8712514]137}
138
[8bdc9705]139% pseudo code
140\lstdefinelanguage{pseudo}{
141        morekeywords={string,uint,int,bool,float},
142        sensitive=true,
143        morecomment=[l]{//},
144        morecomment=[s]{/*}{*/},
145        morestring=[b]',
146        morestring=[b]",
147        morestring=[s]{`}{`},
148}
149
[218aecf]150% Local Variables: %
151% tab-width: 4 %
152% fill-column: 100 %
153% End: %
Note: See TracBrowser for help on using the repository browser.