summaryrefslogtreecommitdiff
path: root/pkg/xkeyboard-config/gen.lua
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/xkeyboard-config/gen.lua')
-rw-r--r--pkg/xkeyboard-config/gen.lua205
1 files changed, 205 insertions, 0 deletions
diff --git a/pkg/xkeyboard-config/gen.lua b/pkg/xkeyboard-config/gen.lua
new file mode 100644
index 00000000..a481a503
--- /dev/null
+++ b/pkg/xkeyboard-config/gen.lua
@@ -0,0 +1,205 @@
+local data = [[
+ compat/(
+ accessx basic caps complete
+ iso9995
+ japan ledcaps
+ lednum ledscroll level5
+ misc mousekeys
+ olpc pc pc98 xfree86
+ xtest README
+ )
+ geometry/(
+ digital_vndr/(lk pc unix)
+ sgi_vndr/(indigo indy O2)
+ amiga ataritt chicony
+ dell everex fujitsu
+ hhk hp keytronic kinesis
+ macintosh microsoft nec nokia
+ northgate pc sanwa sony thinkpad
+ sun teck steelseries typematrix winbook README
+ )
+ keycodes/(
+ digital_vndr/(lk pc)
+ sgi_vndr/(indigo indy iris)
+ aliases
+ amiga
+ ataritt
+ empty
+ evdev
+ fujitsu
+ hp
+ ibm
+ jolla
+ macintosh
+ olpc
+ sony
+ sun
+ xfree86
+ xfree98
+ README
+ )
+ rules/(
+ xfree98
+ xkb.dtd
+ README
+ )
+ symbols/(
+ digital_vndr/(lk pc us vt)
+ fujitsu_vndr/(jp us)
+ hp_vndr/(us)
+ jolla_vndr/(sbj)
+ macintosh_vndr/(
+ apple ch de dk
+ fi fr
+ gb is it jp
+ latam nl no pt
+ se us
+ )
+ nec_vndr/(jp)
+ nokia_vndr/(rx-44 rx-51 su-8w)
+ sgi_vndr/(jp)
+ sharp_vndr/(sl-c3x00 ws003sh ws007sh ws011sh ws020sh)
+ sony_vndr/(us)
+ sun_vndr/(
+ ara be br ca ch
+ cz de dk ee es
+ fi fr gb gr it
+ jp kr lt lv nl
+ no pl pt ro ru
+ se sk solaris tr
+ tw ua us
+ )
+ xfree68_vndr/(amiga ataritt)
+ af al am apl
+ ara at au az
+ ba bd be
+ bg br brai
+ bt bw by
+ ca cd ch
+ cm cn cz
+ de dk dz
+ ee es et epo eu
+ fi fo fr
+ gb ge gh gn
+ gr hr hu
+ id ie il
+ in iq
+ ir is it
+ jp
+ ke kg kh
+ kr kz
+ la latam latin
+ lk lt lv
+ ma mao md me
+ mk ml mm
+ mn mt mv my
+ ng nl no np
+ parens pc ph pk pl pt
+ ro rs ru
+ se si sk sn
+ sy th
+ terminate tg
+ tj tm tr tw tz
+ ua us uz vn
+ za
+ altwin capslock compose ctrl empty eurosign rupeesign group inet
+ keypad kpdl level3 level5 nbsp olpc shift srvr_ctrl typo
+ )
+ types/(
+ basic cancel caps
+ complete default extra
+ iso9995 level5 mousekeys nokia numpad
+ pc README
+ )
+]]
+for f in iterpaths(data) do
+ file('share/xkb/'..f, '644', '$srcdir/'..f)
+end
+
+rule('merge', 'HDR=$srcdir/rules/HDR ./$srcdir/rules/merge.sh $out.tmp $in && mv $out.tmp $out')
+function merge(out, srcs)
+ build('merge', '$outdir/'..out, {
+ expand{'$srcdir/rules/', paths(srcs)},
+ '|', '$srcdir/rules/HDR', '$srcdir/rules/merge.sh',
+ })
+ file('share/xkb/rules/'..out, '644', '$outdir/'..out)
+end
+
+merge('base', [[
+ base.hdr.part base.lists.part
+ base.lists.base.part
+ HDR base.m_k.part
+ HDR base.l1_k.part
+ HDR base.l_k.part
+ HDR
+ HDR base.ml_g.part
+ HDR base.m_g.part
+ HDR base.mlv_s.part
+ HDR base.ml_s.part
+ HDR base.ml1_s.part
+ HDR
+ HDR base.ml2_s.part
+ HDR base.ml3_s.part
+ HDR base.ml4_s.part
+ HDR
+ HDR
+ HDR
+ HDR base.m_s.part
+ HDR base.ml_s1.part
+ HDR
+ HDR
+ HDR
+ HDR
+ HDR
+ HDR base.ml_c.part
+ HDR base.ml1_c.part
+ HDR base.m_t.part
+ HDR
+ HDR base.l1o_s.part
+ HDR base.l2o_s.part
+ HDR base.l3o_s.part
+ HDR base.l4o_s.part
+ HDR base.o_s.part
+ HDR base.o_c.part
+ HDR base.o_t.part
+]])
+merge('evdev', [[
+ base.hdr.part base.lists.part
+ evdev.lists.part
+ HDR evdev.m_k.part
+ HDR base.l1_k.part
+ HDR base.l_k.part
+ HDR
+ HDR base.ml_g.part
+ HDR base.m_g.part
+ HDR base.mlv_s.part
+ HDR base.ml_s.part
+ HDR base.ml1_s.part
+ HDR
+ HDR base.ml2_s.part
+ HDR base.ml3_s.part
+ HDR base.ml4_s.part
+ HDR
+ HDR
+ HDR
+ HDR evdev.m_s.part
+ HDR
+ HDR
+ HDR
+ HDR
+ HDR
+ HDR
+ HDR base.ml_c.part
+ HDR base.ml1_c.part
+ HDR base.m_t.part
+ HDR
+ HDR base.l1o_s.part
+ HDR base.l2o_s.part
+ HDR base.l3o_s.part
+ HDR base.l4o_s.part
+ HDR base.o_s.part
+ HDR base.o_c.part
+ HDR base.o_t.part
+]])
+
+fetch 'git'