[BRLTTY] Bindings
Samuel Thibault
samuel.thibault at ens-lyon.org
Sun Aug 17 18:42:01 EDT 2008
Jean-Philippe MENGUAL, le Mon 18 Aug 2008 00:31:21 +0200, a écrit :
> Unfortunately I'm sorry but I can't test because the patch seems to have
> problems to apply on 3.8 release.
Ah, right, here is a 3.8 version (not even compiled though).
Samuel
-------------- next part --------------
Index: BrailleDrivers/Papenmeier/Makefile.in
===================================================================
--- BrailleDrivers/Papenmeier/Makefile.in (r?vision 3908)
+++ BrailleDrivers/Papenmeier/Makefile.in (copie de travail)
@@ -29,7 +29,7 @@
braille.$O:
$(CC) $(BRL_CFLAGS) $(YACC_CFLAGS) -c $(SRC_DIR)/braille.c
-READ_CONFIG_OBJECTS = read_config.$O $(BLD_TOP)$(PGM_DIR)/cmd.$O $(BLD_TOP)$(PGM_DIR)/charset.$O $(BLD_TOP)$(PGM_DIR)/lock.$O $(BLD_TOP)$(PGM_DIR)/host_misc.$O $(BLD_TOP)$(PGM_DIR)/host_io_misc.$O $(BLD_TOP)$(PGM_DIR)/host_queue.$O $(BLD_TOP)$(PGM_DIR)/host_async.$O $(BLD_TOP)$(PGM_DIR)/host_keyboard.$O $(BLD_TOP)$(PGM_DIR)/host_$(SYSTEM_OBJECT)
+READ_CONFIG_OBJECTS = read_config.$O $(BLD_TOP)$(PGM_DIR)/cmd.$O $(BLD_TOP)$(PGM_DIR)/ttb_translate.$O $(BLD_TOP)$(PGM_DIR)/charset.$O $(BLD_TOP)$(PGM_DIR)/lock.$O $(BLD_TOP)$(PGM_DIR)/host_misc.$O $(BLD_TOP)$(PGM_DIR)/host_io_misc.$O $(BLD_TOP)$(PGM_DIR)/host_queue.$O $(BLD_TOP)$(PGM_DIR)/host_async.$O $(BLD_TOP)$(PGM_DIR)/host_keyboard.$O $(BLD_TOP)$(PGM_DIR)/host_$(SYSTEM_OBJECT)
read_config$X: $(READ_CONFIG_OBJECTS)
$(HOSTCC) $(HOSTLDFLAGS) -o $@ $(READ_CONFIG_OBJECTS) $(LDLIBS)
--- Programs/cmd.c.orig 2008-08-17 23:36:28.000000000 +0100
+++ Programs/cmd.c 2008-08-17 23:41:47.000000000 +0100
@@ -23,6 +23,7 @@
#include "misc.h"
#include "brldefs.h"
#include "cmd.h"
+#include "brl.h"
#include "Programs/charset.h"
@@ -214,20 +215,27 @@
}
}
+static brlapi_keyCode_t
+cmdWCharToBrlapi(wchar_t wc) {
+ if (iswLatin1(wc)) {
+ /* latin1 character */
+ return BRLAPI_KEY_TYPE_SYM | wc;
+ } else {
+ /* unicode character */
+ return BRLAPI_KEY_TYPE_SYM | BRLAPI_KEY_SYM_UNICODE | wc;
+ }
+}
+
brlapi_keyCode_t
cmdBrlttyToBrlapi (int command) {
brlapi_keyCode_t code;
switch (command & BRL_MSK_BLK) {
- case BRL_BLK_PASSCHAR: {
- wchar_t wc = convertCharToWchar(command & BRL_MSK_ARG);
- if (wc < 0x100)
- /* latin1 character */
- code = wc;
- else
- /* unicode character */
- code = BRLAPI_KEY_SYM_UNICODE | wc;
+ case BRL_BLK_PASSCHAR:
+ code = cmdWCharToBrlapi(convertCharToWchar(command & BRL_MSK_ARG));
+ break;
+ case BRL_BLK_PASSDOTS:
+ code = cmdWCharToBrlapi(untextTable[command & BRL_MSK_ARG]);
break;
- }
case BRL_BLK_PASSKEY:
switch (command & BRL_MSK_ARG) {
case BRL_KEY_ENTER: code = BRLAPI_KEY_SYM_LINEFEED; break;
More information about the BRLTTY
mailing list