libkeymap  2.4.0
Library to manage the Linux keymaps
dump.h
Go to the documentation of this file.
1 
5 #ifndef LK_DUMP_H
6 #define LK_DUMP_H
7 
8 #include <stdio.h>
9 
10 #include <keymap/context.h>
11 
12 #ifndef __GNUC__
13 #undef __attribute__
14 #define __attribute__(x) /*NOTHING*/
15 #endif
16 
20 typedef enum {
21  LK_SHAPE_DEFAULT = (1 << 1),
22  LK_SHAPE_FULL_TABLE = (1 << 2),
24  LK_SHAPE_UNTIL_HOLE = (1 << 4)
26 
30 struct kmapinfo {
33  ssize_t keymaps;
34  ssize_t keymaps_alloced;
35  ssize_t functions;
36  ssize_t composes;
38  ssize_t keymaps_total;
39  ssize_t functions_total;
40  ssize_t composes_total;
41 };
42 
50 int lk_dump_bkeymap(struct lk_ctx *ctx, FILE *fd) __attribute__((nonnull(1)));
51 
59 int lk_dump_ctable(struct lk_ctx *ctx, FILE *fd) __attribute__((nonnull(1, 2)));
60 
69 void lk_dump_keymap(struct lk_ctx *ctx, FILE *fd, lk_table_shape table, char numeric) __attribute__((nonnull(1, 2)));
70 
78 void lk_dump_keys(struct lk_ctx *ctx, FILE *fd, lk_table_shape table, char numeric) __attribute__((nonnull(1, 2)));
79 
85 void lk_dump_keymaps(struct lk_ctx *ctx, FILE *fd) __attribute__((nonnull(1, 2)));
86 
92 void lk_dump_funcs(struct lk_ctx *ctx, FILE *fd) __attribute__((nonnull(1, 2)));
93 
99 void lk_dump_diacs(struct lk_ctx *ctx, FILE *fd) __attribute__((nonnull(1, 2)));
100 
108 char *lk_code_to_ksym(struct lk_ctx *ctx, int code) __attribute__((nonnull(1)));
109 
110 char *lk_get_sym(struct lk_ctx *ctx, int ktype, int index) __attribute__((nonnull(1)));
111 
119 int lk_ksym_to_unicode(struct lk_ctx *ctx, const char *code) __attribute__((nonnull(1, 2)));
120 
121 int lk_get_kmapinfo(struct lk_ctx *ctx, struct kmapinfo *res) __attribute__((nonnull(1, 2)));
122 void lk_dump_summary(struct lk_ctx *ctx, FILE *fd, int console) __attribute__((nonnull(1, 2)));
123 void lk_dump_symbols(struct lk_ctx *ctx, FILE *fd) __attribute__((nonnull(1, 2)));
124 
125 #endif /* LK_DUMP_H */
int int void void lk_dump_symbols(struct lk_ctx *ctx, FILE *fd) __attribute__((nonnull(1
lk_keywords keywords
Definition: dump.h:32
int lk_dump_bkeymap(struct lk_ctx *ctx, FILE *fd) __attribute__((nonnull(1)))
Header contains flags, keywords and context structure.
General information about the keymap.
Definition: dump.h:30
lk_flags
Parser flags that are set outside the library.
Definition: context.h:16
Definition: dump.h:22
ssize_t keymaps_total
Definition: dump.h:38
int lk_ksym_to_unicode(struct lk_ctx *ctx, const char *code) __attribute__((nonnull(1
Definition: dump.h:24
lk_table_shape
Flags controlling the output keymap.
Definition: dump.h:20
Definition: dump.h:21
ssize_t keymaps_alloced
Definition: dump.h:34
int void lk_dump_keymap(struct lk_ctx *ctx, FILE *fd, lk_table_shape table, char numeric) __attribute__((nonnull(1
#define __attribute__(x)
Definition: dump.h:14
ssize_t functions_total
Definition: dump.h:39
int void void void lk_dump_keymaps(struct lk_ctx *ctx, FILE *fd) __attribute__((nonnull(1
ssize_t composes_total
Definition: dump.h:40
int void void void void void lk_dump_diacs(struct lk_ctx *ctx, FILE *fd) __attribute__((nonnull(1
Definition: dump.h:23
lk_keywords
Keywords used in keymap files.
Definition: context.h:26
int void void void void void char * lk_code_to_ksym(struct lk_ctx *ctx, int code) __attribute__((nonnull(1)))
int lk_dump_ctable(struct lk_ctx *ctx, FILE *fd) __attribute__((nonnull(1
int void void void void lk_dump_funcs(struct lk_ctx *ctx, FILE *fd) __attribute__((nonnull(1
lk_flags flags
Definition: dump.h:31
ssize_t keymaps
Definition: dump.h:33
ssize_t composes
Definition: dump.h:36
char * lk_get_sym(struct lk_ctx *ctx, int ktype, int index) __attribute__((nonnull(1)))
ssize_t functions
Definition: dump.h:35
int int void lk_dump_summary(struct lk_ctx *ctx, FILE *fd, int console) __attribute__((nonnull(1
int int lk_get_kmapinfo(struct lk_ctx *ctx, struct kmapinfo *res) __attribute__((nonnull(1
int void void lk_dump_keys(struct lk_ctx *ctx, FILE *fd, lk_table_shape table, char numeric) __attribute__((nonnull(1