Adding Christoph Lohmanns patches again. Thx :D

This commit is contained in:
Enno Boland (Gottox) 2011-04-04 13:39:31 +02:00
parent 31e00125e8
commit 3619838eb7
3 changed files with 36 additions and 19 deletions

View File

@ -6,7 +6,7 @@ include config.mk
SRC = svkbd.c
LAYOUTS = en de arrows
all: options svkbd
all: options svkbd.en
options:
@echo svkbd build options:
@ -19,11 +19,6 @@ config.h: config.mk
@echo creating $@ from config.def.h
@cp config.def.h $@
svkbd: svkbd.en
@echo CP $@
@cp $< $@
svkbd.%: layout.%.h config.h ${SRC}
@echo creating layout.h from $<
@cp $< layout.h
@ -32,32 +27,45 @@ svkbd.%: layout.%.h config.h ${SRC}
clean:
@echo cleaning
@for i in ${LAYOUTS}; do rm svkbd.$$i 2> /dev/null; done; true
@rm -f svkbd ${OBJ} svkbd-${VERSION}.tar.gz 2> /dev/null; true
@for i in ${LAYOUTS}; \
do \
rm -f svkbd.$$i 2> /dev/null; \
done; true
@rm -f ${OBJ} svkbd-${VERSION}.tar.gz 2> /dev/null; true
dist: clean
@echo creating dist tarball
@mkdir -p svkbd-${VERSION}
@cp LICENSE Makefile README config.def.h config.mk \
${SRC} svkbd-${VERSION}
@for i in ${LAYOUTS}; do cp layout.$$i.h svkbd.${VERSION} || exit 1; done
@for i in ${LAYOUTS}; \
do \
cp layout.$$i.h svkbd-${VERSION}; \
done
@tar -cf svkbd-${VERSION}.tar svkbd-${VERSION}
@gzip svkbd-${VERSION}.tar
@rm -rf svkbd-${VERSION}
install: all
@echo installing executable file to ${DESTDIR}${PREFIX}/bin
@echo installing executable files to ${DESTDIR}${PREFIX}/bin
@mkdir -p ${DESTDIR}${PREFIX}/bin
@cp -f svkbd ${DESTDIR}${PREFIX}/bin
@chmod 755 ${DESTDIR}${PREFIX}/bin/svkbd
@echo installing manual page to ${DESTDIR}${MANPREFIX}/man1
@mkdir -p ${DESTDIR}${MANPREFIX}/man1
@for i in ${LAYOUTS}; \
do \
if [ -e svkbd.$$i ]; \
then \
echo CP svkbd.$$i; \
cp svkbd.$$i ${DESTDIR}${PREFIX}/bin; \
chmod 755 ${DESTDIR}${PREFIX}/bin/svkbd.$$i; \
fi \
done
# @echo installing manual page to ${DESTDIR}${MANPREFIX}/man1
# @mkdir -p ${DESTDIR}${MANPREFIX}/man1
# @sed "s/VERSION/${VERSION}/g" < svkbd.1 > ${DESTDIR}${MANPREFIX}/man1/svkbd.1
# @chmod 644 ${DESTDIR}${MANPREFIX}/man1/svkbd.1
uninstall:
@echo removing executable file from ${DESTDIR}${PREFIX}/bin
@rm -f ${DESTDIR}${PREFIX}/bin/svkbd
@echo removing executable files from ${DESTDIR}${PREFIX}/bin
@rm -f ${DESTDIR}${PREFIX}/bin/svkbd.*
# @echo removing manual page from ${DESTDIR}${MANPREFIX}/man1
# @rm -f ${DESTDIR}${MANPREFIX}/man1/svkbd.1

View File

@ -6,7 +6,7 @@ LAYOUT ?= en
# Customize below to fit your system
# paths
PREFIX = /usr/local
PREFIX ?= /usr/local
MANPREFIX = ${PREFIX}/share/man
X11INC = /usr/X11R6/include

13
svkbd.c
View File

@ -333,8 +333,8 @@ setup(void) {
/* init screen */
screen = DefaultScreen(dpy);
root = RootWindow(dpy, screen);
sw = DisplayWidth(dpy, screen);
sh = DisplayHeight(dpy, screen);
sw = DisplayWidth(dpy, screen) - 1;
sh = DisplayHeight(dpy, screen) - 1;
initfont(font);
/* init atoms */
@ -344,12 +344,21 @@ setup(void) {
countrows();
if(!ww)
ww = sw - wx;
if(ww < 0)
ww = sw + ww;
if(!wx)
wx = 0;
if(wx < 0)
wx = sw + wx;
if(!wh)
wh = sh * rows / 32;
if(wh < 0)
wh = sh + wh;
if(!wy)
wy = sh - wh;
if(wy < 0)
wy = sh + wy - wh;
dc.norm[ColBG] = getcolor(normbgcolor);
dc.norm[ColFG] = getcolor(normfgcolor);
dc.press[ColBG] = getcolor(pressbgcolor);