added golang detection and parsing, based on C
[ohcount] / src / hash / extensions.gperf
1 %{
2 #include "../languages.h"
3
4 #define BINARY "\1"
5 #define DISAMBIGUATE(x) ("\2" x)
6 %}
7 struct ExtensionMap { const char *key; const char *value; };
8 %%
9 C, LANG_CPP
10 H, LANG_CPP
11 ada, LANG_ADA
12 adb, LANG_ADA
13 ads, LANG_ADA
14 aiff, BINARY
15 as, LANG_ACTIONSCRIPT
16 ascx, DISAMBIGUATE("aspx")
17 asm, LANG_ASSEMBLER
18 aspx, DISAMBIGUATE("aspx")
19 au, BINARY
20 avi, BINARY
21 awk, LANG_AWK
22 b, DISAMBIGUATE("b")
23 bas, DISAMBIGUATE("basic")
24 bat, LANG_BAT
25 bf, LANG_BRAINFUCK
26 bfpp, LANG_BFPP
27 bi, DISAMBIGUATE("basic")
28 bmp, BINARY
29 bmx, LANG_BLITZMAX
30 boo, LANG_BOO
31 c, LANG_C
32 c++, LANG_CPP
33 cache, BINARY
34 cc, LANG_CPP
35 chai, LANG_CHAISCRIPT
36 clj, LANG_CLOJURE
37 cmake, LANG_CMAKE
38 com, LANG_DCL
39 cpp, LANG_CPP
40 cs, DISAMBIGUATE("cs")
41 csproj, LANG_XML
42 css, LANG_CSS
43 ctp, LANG_PHP
44 cu, LANG_CUDA
45 cxx, LANG_CPP
46 d, LANG_DMD
47 dat, BINARY
48 def, LANG_MODULA2
49 di, LANG_DMD
50 doc, BINARY
51 dylan, LANG_DYLAN
52 e, LANG_EIFFEL
53 ebuild, LANG_EBUILD
54 eclass, LANG_EBUILD
55 el, LANG_EMACSLISP
56 erl, LANG_ERLANG
57 exheres-0, LANG_EXHERES
58 exlib, LANG_EXHERES
59 f, DISAMBIGUATE("fortran")
60 f03, DISAMBIGUATE("fortran")
61 f77, DISAMBIGUATE("fortran")
62 f90, DISAMBIGUATE("fortran")
63 f95, DISAMBIGUATE("fortran")
64 factor, LANG_FACTOR
65 frag, LANG_GLSL
66 frm, LANG_VISUALBASIC
67 frx, LANG_VISUALBASIC
68 fs, LANG_FSHARP
69 ftn, DISAMBIGUATE("fortran")
70 gif, BINARY
71 glsl, LANG_GLSL
72 go, LANG_GOLANG
73 groovy, LANG_GROOVY
74 gz, BINARY
75 h, DISAMBIGUATE("h")
76 h++, LANG_CPP
77 haml, LANG_HAML
78 hh, LANG_CPP
79 hpp, LANG_CPP
80 hrl, LANG_ERLANG
81 hs, LANG_HASKELL
82 htm, LANG_HTML
83 html, LANG_HTML
84 hx, LANG_HAXE
85 hxx, LANG_CPP
86 i3, LANG_MODULA3
87 icns, BINARY
88 in, DISAMBIGUATE("in")
89 inc, DISAMBIGUATE("inc")
90 j, LANG_OBJECTIVE_J
91 jar, BINARY
92 java, LANG_JAVA
93 jpeg, BINARY
94 jpg, BINARY
95 js, LANG_JAVASCRIPT
96 jsp, LANG_JSP
97 kdebuild-1, LANG_EBUILD
98 latex, LANG_TEX
99 lisp, LANG_LISP
100 lsp, LANG_LISP
101 ltx, LANG_TEX
102 lua, LANG_LUA
103 m, DISAMBIGUATE("m")
104 m3, LANG_MODULA3
105 m4, LANG_AUTOCONF
106 m4a, BINARY
107 mf, LANG_METAFONT
108 mk, LANG_MAKE
109 ml, LANG_OCAML
110 ml4, LANG_OCAML
111 mli, LANG_OCAML
112 mm, LANG_OBJECTIVE_C
113 mod, LANG_MODULA2
114 mov, BINARY
115 mp, LANG_METAPOST_WITH_TEX
116 mp3, BINARY
117 mpg, BINARY
118 mxml, LANG_MXML
119 nix, LANG_NIX
120 nse, LANG_LUA
121 ob2, LANG_OBERON
122 obn, LANG_OBERON
123 ogg, BINARY
124 p6, LANG_PERL
125 pas, LANG_PASCAL
126 perl, LANG_PERL
127 pdf, BINARY
128 ph, LANG_PERL
129 php, LANG_PHP
130 php3, LANG_PHP
131 php4, LANG_PHP
132 php5, LANG_PHP
133 pike, LANG_PIKE
134 pl, LANG_PERL
135 pm, LANG_PERL
136 pmc, LANG_C
137 pmod, LANG_PIKE
138 png, BINARY
139 pnt, BINARY
140 pod, LANG_PERL
141 pp, DISAMBIGUATE("pp")
142 ppt, BINARY
143 pro, DISAMBIGUATE("pro")
144 py, LANG_PYTHON
145 qt, BINARY
146 r, LANG_R
147 ra, BINARY
148 rb, LANG_RUBY
149 rex, LANG_REXX
150 rexx, LANG_REXX
151 rhtml, LANG_RHTML
152 s, LANG_ASSEMBLER
153 sc, LANG_SCHEME
154 scala, LANG_SCALA
155 sce, LANG_SCILAB
156 sci, LANG_SCILAB
157 scm, LANG_SCHEME
158 sh, LANG_SHELL
159 sls, LANG_SCHEME
160 sps, LANG_SCHEME
161 sql, LANG_SQL
162 ss, LANG_SCHEME
163 st, DISAMBIGUATE("st")
164 str, LANG_STRATEGO
165 svg, BINARY
166 svgz, BINARY
167 svn, BINARY
168 swf, BINARY
169 t, LANG_PERL
170 tar, BINARY
171 tcl, LANG_TCL
172 tex, LANG_TEX
173 tgz, BINARY
174 tif, BINARY
175 tiff, BINARY
176 tpl, LANG_HTML
177 vala, LANG_VALA
178 vb, LANG_VISUALBASIC
179 vba, LANG_VISUALBASIC
180 vbs, LANG_VISUALBASIC
181 vert, LANG_GLSL
182 vhd, LANG_VHDL
183 vhdl, LANG_VHDL
184 vim, LANG_VIM
185 wav, BINARY
186 xaml, LANG_XAML
187 xls, BINARY
188 xlw, BINARY
189 xml, LANG_XML
190 xs, LANG_C
191 xsd, LANG_XMLSCHEMA
192 xsl, LANG_XSLT
193 z80, LANG_ASSEMBLER
194 zip, BINARY