mirror of git://git.suckless.org/svkbd
Adding layouts support.
This commit is contained in:
parent
76a8bc5c3c
commit
4ab83f9dfc
5
Makefile
5
Makefile
|
@ -13,10 +13,11 @@ options:
|
||||||
@echo "CFLAGS = ${CFLAGS}"
|
@echo "CFLAGS = ${CFLAGS}"
|
||||||
@echo "LDFLAGS = ${LDFLAGS}"
|
@echo "LDFLAGS = ${LDFLAGS}"
|
||||||
@echo "CC = ${CC}"
|
@echo "CC = ${CC}"
|
||||||
|
@echo "LAYOUT = ${LAYOUT}"
|
||||||
|
|
||||||
.c.o:
|
.c.o:
|
||||||
@echo CC $<
|
@echo CC $<
|
||||||
@${CC} -c ${CFLAGS} $<
|
@${CC} ${CPPFLAGS} -c ${CFLAGS} $<
|
||||||
|
|
||||||
${OBJ}: config.h config.mk
|
${OBJ}: config.h config.mk
|
||||||
|
|
||||||
|
@ -36,7 +37,7 @@ dist: clean
|
||||||
@echo creating dist tarball
|
@echo creating dist tarball
|
||||||
@mkdir -p svkbd-${VERSION}
|
@mkdir -p svkbd-${VERSION}
|
||||||
@cp -R LICENSE Makefile README config.def.h config.mk \
|
@cp -R LICENSE Makefile README config.def.h config.mk \
|
||||||
${SRC} svkbd-${VERSION}
|
${SRC} layouts svkbd-${VERSION}
|
||||||
@tar -cf svkbd-${VERSION}.tar svkbd-${VERSION}
|
@tar -cf svkbd-${VERSION}.tar svkbd-${VERSION}
|
||||||
@gzip svkbd-${VERSION}.tar
|
@gzip svkbd-${VERSION}.tar
|
||||||
@rm -rf svkbd-${VERSION}
|
@rm -rf svkbd-${VERSION}
|
||||||
|
|
73
config.def.h
73
config.def.h
|
@ -6,76 +6,3 @@ static const char hovfgcolor[] = "#000000";
|
||||||
static const char pressbgcolor[] = "#0000cc";
|
static const char pressbgcolor[] = "#0000cc";
|
||||||
static const char pressfgcolor[] = "#ffffff";
|
static const char pressfgcolor[] = "#ffffff";
|
||||||
|
|
||||||
static int wh = 200;
|
|
||||||
static int ww = 0;
|
|
||||||
static int wx = 0;
|
|
||||||
static int wy = -200;
|
|
||||||
|
|
||||||
static Key keys[] = {
|
|
||||||
{ "1!", XK_1, 1 },
|
|
||||||
{ "2@", XK_2, 1 },
|
|
||||||
{ "3#", XK_3, 1 },
|
|
||||||
{ "4$", XK_4, 1 },
|
|
||||||
{ "5%", XK_5, 1 },
|
|
||||||
{ "6^", XK_6, 1 },
|
|
||||||
{ "7&", XK_7, 1 },
|
|
||||||
{ "8*", XK_8, 1 },
|
|
||||||
{ "9(", XK_9, 1 },
|
|
||||||
{ "0)", XK_0, 1 },
|
|
||||||
{ "-_", XK_minus, 1 },
|
|
||||||
{ "=+", XK_plus, 1 },
|
|
||||||
{ "<-", XK_BackSpace, 2 },
|
|
||||||
{ 0 }, /* New row */
|
|
||||||
{ "->|", XK_Tab, 1 },
|
|
||||||
{ 0, XK_q, 1 },
|
|
||||||
{ 0, XK_w, 1 },
|
|
||||||
{ 0, XK_e, 1 },
|
|
||||||
{ 0, XK_r, 1 },
|
|
||||||
{ 0, XK_t, 1 },
|
|
||||||
{ 0, XK_y, 1 },
|
|
||||||
{ 0, XK_u, 1 },
|
|
||||||
{ 0, XK_i, 1 },
|
|
||||||
{ 0, XK_o, 1 },
|
|
||||||
{ 0, XK_p, 1 },
|
|
||||||
{ "[", XK_bracketleft, 1 },
|
|
||||||
{ "]", XK_bracketright, 1 },
|
|
||||||
{ "Return", XK_Return, 3 },
|
|
||||||
{ 0 }, /* New row */
|
|
||||||
{ 0, XK_Caps_Lock, 2 },
|
|
||||||
{ 0, XK_a, 1 },
|
|
||||||
{ 0, XK_s, 1 },
|
|
||||||
{ 0, XK_d, 1 },
|
|
||||||
{ 0, XK_f, 1 },
|
|
||||||
{ 0, XK_g, 1 },
|
|
||||||
{ 0, XK_h, 1 },
|
|
||||||
{ 0, XK_j, 1 },
|
|
||||||
{ 0, XK_k, 1 },
|
|
||||||
{ 0, XK_l, 1 },
|
|
||||||
{ ":;", XK_semicolon, 1 },
|
|
||||||
{ "'\"", XK_exclam, 1 },
|
|
||||||
{ "\\|", XK_backslash, 1 },
|
|
||||||
{ 0 }, /* New row */
|
|
||||||
{ 0, XK_Shift_L, 3 },
|
|
||||||
{ 0, XK_z, 1 },
|
|
||||||
{ 0, XK_x, 1 },
|
|
||||||
{ 0, XK_c, 1 },
|
|
||||||
{ 0, XK_v, 1 },
|
|
||||||
{ 0, XK_b, 1 },
|
|
||||||
{ 0, XK_n, 1 },
|
|
||||||
{ 0, XK_m, 1 },
|
|
||||||
{ ",", XK_colon, 1 },
|
|
||||||
{ ".", XK_period, 1 },
|
|
||||||
{ "/?", XK_slash, 1 },
|
|
||||||
{ 0, XK_Shift_R, 2 },
|
|
||||||
{ 0 }, /* New row */
|
|
||||||
{ "Ctrl", XK_Control_L, 2 },
|
|
||||||
{ "Alt", XK_Alt_L, 2 },
|
|
||||||
{ "", XK_space, 5 },
|
|
||||||
{ "Alt", XK_Alt_R, 2 },
|
|
||||||
{ "Ctrl", XK_Control_R, 2 },
|
|
||||||
};
|
|
||||||
|
|
||||||
Buttonmod buttonmods[] = {
|
|
||||||
{ XK_Shift_L, Button2 },
|
|
||||||
{ XK_Alt_L, Button3 },
|
|
||||||
};
|
|
||||||
|
|
|
@ -1,6 +1,8 @@
|
||||||
# svkbd version
|
# svkbd version
|
||||||
VERSION = 0.1
|
VERSION = 0.1
|
||||||
|
|
||||||
|
LAYOUT?=def
|
||||||
|
|
||||||
# Customize below to fit your system
|
# Customize below to fit your system
|
||||||
|
|
||||||
# paths
|
# paths
|
||||||
|
@ -11,11 +13,13 @@ X11INC = /usr/X11R6/include
|
||||||
X11LIB = /usr/X11R6/lib
|
X11LIB = /usr/X11R6/lib
|
||||||
|
|
||||||
# includes and libs
|
# includes and libs
|
||||||
INCS = -I. -I/usr/include -I${X11INC}
|
INCS = -I. -I./layouts -I/usr/include -I${X11INC}
|
||||||
LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 -lXtst
|
LIBS = -L/usr/lib -lc -L${X11LIB} -lX11 -lXtst
|
||||||
|
|
||||||
# flags
|
# flags
|
||||||
CPPFLAGS = -DVERSION=\"${VERSION}\" ${XINERAMAFLAGS}
|
CPPFLAGS = -DVERSION=\"${VERSION}\" \
|
||||||
|
-DCONFIGLAYOUT_H=\"layout.${LAYOUT}.h\" \
|
||||||
|
${XINERAMAFLAGS}
|
||||||
CFLAGS = -g -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
|
CFLAGS = -g -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
|
||||||
LDFLAGS = -g ${LIBS}
|
LDFLAGS = -g ${LIBS}
|
||||||
|
|
||||||
|
@ -25,3 +29,4 @@ LDFLAGS = -g ${LIBS}
|
||||||
|
|
||||||
# compiler and linker
|
# compiler and linker
|
||||||
CC = cc
|
CC = cc
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,20 @@
|
||||||
|
|
||||||
|
static int wh = 30;
|
||||||
|
static int ww = 0;
|
||||||
|
static int wx = 0;
|
||||||
|
static int wy = -30;
|
||||||
|
|
||||||
|
static Key keys[] = {
|
||||||
|
{ 0, XK_Shift_L, 2 },
|
||||||
|
{ "←", XK_Left, 1 },
|
||||||
|
{ "↓", XK_Down, 1 },
|
||||||
|
{ "↑", XK_Up, 1 },
|
||||||
|
{ "→", XK_Right, 1},
|
||||||
|
{ "Alt", XK_Alt_L, 2 },
|
||||||
|
};
|
||||||
|
|
||||||
|
Buttonmod buttonmods[] = {
|
||||||
|
{ XK_Shift_L, Button2 },
|
||||||
|
{ XK_Alt_L, Button3 },
|
||||||
|
};
|
||||||
|
|
|
@ -0,0 +1,78 @@
|
||||||
|
static int wh = 200;
|
||||||
|
static int ww = 0;
|
||||||
|
static int wx = 0;
|
||||||
|
static int wy = -200;
|
||||||
|
|
||||||
|
static Key keys[] = {
|
||||||
|
{ "^°′", XK_dead_circumflex, 1},
|
||||||
|
{ "1!¹", XK_1, 1 },
|
||||||
|
{ "2\"²", XK_2, 1 },
|
||||||
|
{ "3§³", XK_3, 1 },
|
||||||
|
{ "4$¼", XK_4, 1 },
|
||||||
|
{ "5%½", XK_5, 1 },
|
||||||
|
{ "6&¬", XK_6, 1 },
|
||||||
|
{ "7/{", XK_7, 1 },
|
||||||
|
{ "8([", XK_8, 1 },
|
||||||
|
{ "9)]", XK_9, 1 },
|
||||||
|
{ "0=}", XK_0, 1 },
|
||||||
|
{ "ß?\\", XK_ssharp, 1 },
|
||||||
|
{ "´`¸", XK_dead_acute, 1 },
|
||||||
|
{ "<-", XK_BackSpace, 2 },
|
||||||
|
{ 0 }, /* New row */
|
||||||
|
{ "->|", XK_Tab, 1 },
|
||||||
|
{ "qQ@", XK_q, 1 },
|
||||||
|
{ "wWł", XK_w, 1 },
|
||||||
|
{ "eE€", XK_e, 1 },
|
||||||
|
{ "rR¶", XK_r, 1 },
|
||||||
|
{ "tTŧ", XK_t, 1 },
|
||||||
|
{ "zZ←", XK_z, 1 },
|
||||||
|
{ "uU↓", XK_u, 1 },
|
||||||
|
{ "iI→", XK_i, 1 },
|
||||||
|
{ "oOø", XK_o, 1 },
|
||||||
|
{ "pPþ", XK_p, 1 },
|
||||||
|
{ "üܨ", 0xfc, 1 },
|
||||||
|
{ "+*~", XK_plus, 1 },
|
||||||
|
{ "Return", XK_Return, 3 },
|
||||||
|
{ 0 }, /* New row */
|
||||||
|
{ 0, XK_Caps_Lock, 2 },
|
||||||
|
{ "aAæ", XK_a, 1 },
|
||||||
|
{ "sSſ", XK_s, 1 },
|
||||||
|
{ "dDð", XK_d, 1 },
|
||||||
|
{ "fFđ", XK_f, 1 },
|
||||||
|
{ "gGŋ", XK_g, 1 },
|
||||||
|
{ "hHħ", XK_h, 1 },
|
||||||
|
{ "jJ̣̣", XK_j, 1 },
|
||||||
|
{ "kKĸ", XK_k, 1 },
|
||||||
|
{ "lLł", XK_l, 1 },
|
||||||
|
{ "öÖ˝", 0xf6, 1 },
|
||||||
|
{ "äÄ^", 0xe4, 1 },
|
||||||
|
{ "#'’", XK_numbersign, 1 },
|
||||||
|
{ 0 }, /* New row */
|
||||||
|
{ 0, XK_Shift_L, 2 },
|
||||||
|
{ "<>|", XK_less, 1 },
|
||||||
|
{ "yY»", XK_y, 1 },
|
||||||
|
{ "xX«", XK_x, 1 },
|
||||||
|
{ "cC¢", XK_c, 1 },
|
||||||
|
{ "vV„", XK_v, 1 },
|
||||||
|
{ "bB“", XK_b, 1 },
|
||||||
|
{ "nN”", XK_n, 1 },
|
||||||
|
{ "mMµ", XK_m, 1 },
|
||||||
|
{ ",;·", XK_comma, 1 },
|
||||||
|
{ ".:…", XK_period, 1 },
|
||||||
|
{ "-_–", XK_minus, 1 },
|
||||||
|
{ 0, XK_Shift_R, 2 },
|
||||||
|
{ 0 }, /* New row */
|
||||||
|
{ "Ctrl", XK_Control_L, 2 },
|
||||||
|
{ "Win", XK_Super_L, 2 },
|
||||||
|
{ "Alt", XK_Alt_L, 2 },
|
||||||
|
{ "", XK_space, 5 },
|
||||||
|
{ "Alt Gr", XK_ISO_Level3_Shift, 2 },
|
||||||
|
{ "Menu", XK_Menu, 2 },
|
||||||
|
{ "Ctrl", XK_Control_R, 2 },
|
||||||
|
};
|
||||||
|
|
||||||
|
Buttonmod buttonmods[] = {
|
||||||
|
{ XK_Shift_L, Button2 },
|
||||||
|
{ XK_Alt_L, Button3 },
|
||||||
|
};
|
||||||
|
|
|
@ -0,0 +1,74 @@
|
||||||
|
static int wh = 200;
|
||||||
|
static int ww = 0;
|
||||||
|
static int wx = 0;
|
||||||
|
static int wy = -200;
|
||||||
|
|
||||||
|
static Key keys[] = {
|
||||||
|
{ "1!", XK_1, 1 },
|
||||||
|
{ "2@", XK_2, 1 },
|
||||||
|
{ "3#", XK_3, 1 },
|
||||||
|
{ "4$", XK_4, 1 },
|
||||||
|
{ "5%", XK_5, 1 },
|
||||||
|
{ "6^", XK_6, 1 },
|
||||||
|
{ "7&", XK_7, 1 },
|
||||||
|
{ "8*", XK_8, 1 },
|
||||||
|
{ "9(", XK_9, 1 },
|
||||||
|
{ "0)", XK_0, 1 },
|
||||||
|
{ "-_", XK_minus, 1 },
|
||||||
|
{ "=+", XK_plus, 1 },
|
||||||
|
{ "<-", XK_BackSpace, 2 },
|
||||||
|
{ 0 }, /* New row */
|
||||||
|
{ "->|", XK_Tab, 1 },
|
||||||
|
{ 0, XK_q, 1 },
|
||||||
|
{ 0, XK_w, 1 },
|
||||||
|
{ 0, XK_e, 1 },
|
||||||
|
{ 0, XK_r, 1 },
|
||||||
|
{ 0, XK_t, 1 },
|
||||||
|
{ 0, XK_y, 1 },
|
||||||
|
{ 0, XK_u, 1 },
|
||||||
|
{ 0, XK_i, 1 },
|
||||||
|
{ 0, XK_o, 1 },
|
||||||
|
{ 0, XK_p, 1 },
|
||||||
|
{ "[", XK_bracketleft, 1 },
|
||||||
|
{ "]", XK_bracketright, 1 },
|
||||||
|
{ "Return", XK_Return, 3 },
|
||||||
|
{ 0 }, /* New row */
|
||||||
|
{ 0, XK_Caps_Lock, 2 },
|
||||||
|
{ 0, XK_a, 1 },
|
||||||
|
{ 0, XK_s, 1 },
|
||||||
|
{ 0, XK_d, 1 },
|
||||||
|
{ 0, XK_f, 1 },
|
||||||
|
{ 0, XK_g, 1 },
|
||||||
|
{ 0, XK_h, 1 },
|
||||||
|
{ 0, XK_j, 1 },
|
||||||
|
{ 0, XK_k, 1 },
|
||||||
|
{ 0, XK_l, 1 },
|
||||||
|
{ ":;", XK_semicolon, 1 },
|
||||||
|
{ "'\"", XK_exclam, 1 },
|
||||||
|
{ "\\|", XK_backslash, 1 },
|
||||||
|
{ 0 }, /* New row */
|
||||||
|
{ 0, XK_Shift_L, 3 },
|
||||||
|
{ 0, XK_z, 1 },
|
||||||
|
{ 0, XK_x, 1 },
|
||||||
|
{ 0, XK_c, 1 },
|
||||||
|
{ 0, XK_v, 1 },
|
||||||
|
{ 0, XK_b, 1 },
|
||||||
|
{ 0, XK_n, 1 },
|
||||||
|
{ 0, XK_m, 1 },
|
||||||
|
{ ",", XK_colon, 1 },
|
||||||
|
{ ".", XK_period, 1 },
|
||||||
|
{ "/?", XK_slash, 1 },
|
||||||
|
{ 0, XK_Shift_R, 2 },
|
||||||
|
{ 0 }, /* New row */
|
||||||
|
{ "Ctrl", XK_Control_L, 2 },
|
||||||
|
{ "Alt", XK_Alt_L, 2 },
|
||||||
|
{ "", XK_space, 5 },
|
||||||
|
{ "Alt", XK_Alt_R, 2 },
|
||||||
|
{ "Ctrl", XK_Control_R, 2 },
|
||||||
|
};
|
||||||
|
|
||||||
|
Buttonmod buttonmods[] = {
|
||||||
|
{ XK_Shift_L, Button2 },
|
||||||
|
{ XK_Alt_L, Button3 },
|
||||||
|
};
|
||||||
|
|
Loading…
Reference in New Issue