#include "keys-from-name.h"
#include "keys-to-name.h"
+#include "macro.h"
+#include "util.h"
#define MAX_SCANCODES 1024
int fd;
char fn[PATH_MAX];
- if (strncmp(dev, "/dev", 4) != 0) {
+ if (!startswith(dev, "/dev")) {
snprintf(fn, sizeof(fn), "/dev/%s", dev);
dev = fn;
}
ioctl(fd, EVIOCGRAB, 0);
}
-static void help(int error)
+_noreturn_ static void help(int error)
{
const char* h = "Usage: keymap <event device> [<map file>]\n"
" keymap <event device> scancode keyname [...]\n"
const char *filearg = argv[optind+1];
if (strchr(filearg, '/')) {
/* Keymap file argument is a path */
- FILE *f = fopen(filearg, "r");
+ FILE *f = fopen(filearg, "re");
if (f)
merge_table(fd, f);
else
char keymap_path[PATH_MAX];
FILE *f;
snprintf(keymap_path, sizeof(keymap_path), "%s%s", SYSCONFDIR "/udev/keymaps/", filearg);
- f = fopen(keymap_path, "r");
+ f = fopen(keymap_path, "re");
if (f) {
merge_table(fd, f);
} else {
snprintf(keymap_path, sizeof(keymap_path), "%s%s", UDEVLIBEXECDIR "/keymaps/", filearg);
- f = fopen(keymap_path, "r");
+ f = fopen(keymap_path, "re");
if (f)
merge_table(fd, f);
else