try to get term working
[xlua.git] / mkconst.lua
blob553930827f3686468a0cb9a691816af8e6dc35c3
1 #!/usr/bin/lua
3 function getlines(f)
4 return io.open("/usr/include/X11/"..f..".h"):lines()
5 end
7 print("atom = {")
8 for l in getlines("Xatom") do
9 local n,v = l:match("^#define XA_([^ ]*)[^0-9]*([0-9]*).*")
10 if (n and v) then
11 print(n.."="..v..",")
12 end
13 end
14 print("}\nx=x or {}");
16 for l in getlines("X") do
17 local n,v = l:match("^#define *([^ \t]*)[ \t]*(.*)") do
18 if n and n != "" then
19 if n=="X_H" then continue end
20 v=v:gsub("%/%*.*", "")
21 v=v:gsub("([0-9])L", "%1")
22 v=v:gsub("%(int%)", "x.")
23 -- bitshift
24 -- if v:find("1<<") then
25 -- v=1<<v:match("%(1<<([0-9]*)")
26 -- end
27 print("x."..n.."="..v)
28 end
29 end
30 end
32 print("xcursor={")
33 for l in getlines("cursorfont") do
34 local n,v = l:match("^#define XC_([^ ]*)[^0-9]*([0-9]*).*")
35 if (n and v) then
36 print(n.."="..v..",")
37 end
38 end
39 print("}")