libkeymap  2.0.3
Library to manage the Linux keymaps
kmap.h
Go to the documentation of this file.
1 
5 #ifndef LK_KMAP_H
6 #define LK_KMAP_H
7 
8 #include <keymap/context.h>
9 #include <keymap/findfile.h>
10 
11 int lk_add_map(struct lk_ctx *ctx, unsigned int k_table);
12 int lk_map_exists(struct lk_ctx *ctx, unsigned int k_table);
13 
14 int lk_get_keys_total(struct lk_ctx *ctx, unsigned int k_table);
15 
16 int lk_add_key(struct lk_ctx *ctx, unsigned int k_table, unsigned int k_index, int keycode);
17 int lk_del_key(struct lk_ctx *ctx, unsigned int k_table, unsigned int k_index);
18 int lk_get_key(struct lk_ctx *ctx, unsigned int k_table, unsigned int k_index);
19 int lk_key_exists(struct lk_ctx *ctx, unsigned int k_table, unsigned int k_index);
20 
21 /* Functions for key string manipulations */
22 int lk_get_func(struct lk_ctx *ctx, struct kbsentry *kbs);
23 int lk_add_func(struct lk_ctx *ctx, struct kbsentry *kbs);
24 int lk_del_func(struct lk_ctx *ctx, unsigned int index);
25 int lk_func_exists(struct lk_ctx *ctx, unsigned int index);
26 
27 /* Functions for manipulations with diacritical table */
28 int lk_get_diacr(struct lk_ctx *ctx, unsigned int index, struct lk_kbdiacr *dcr);
29 int lk_add_diacr(struct lk_ctx *ctx, unsigned int index, struct lk_kbdiacr *dcr);
30 int lk_del_diacr(struct lk_ctx *ctx, unsigned int index);
31 int lk_diacr_exists(struct lk_ctx *ctx, unsigned int index);
32 int lk_append_diacr(struct lk_ctx *ctx, struct lk_kbdiacr *dcr);
33 int lk_append_compose(struct lk_ctx *ctx, struct lk_kbdiacr *dcr);
34 
35 int lk_add_constants(struct lk_ctx *ctx);
36 
37 int lk_parse_keymap(struct lk_ctx *ctx, lkfile_t *f);
38 int lk_load_keymap(struct lk_ctx *ctx, int fd, int kbd_mode);
39 
40 #endif /* LK_KMAP_H */