}
/*
- check_for_duplicate_bindings is function looking for duplicated
- key bindings loaded from configuration file. It goes trought all bindings
- and tests if exists same key mapping in bindings visited before.
- If exists, message is printed to "stderr" and error warning is set.
-*/
+ * Checks for duplicate key bindings (the same keycode or keysym is configured
+ * more than once). If a duplicate binding is found, a message is printed to
+ * stderr and the has_errors variable is set to true, which will start
+ * i3-nagbar.
+ *
+ */
static bool check_for_duplicate_bindings(struct context *context) {
bool retval = true;
Binding *bind, *current;
TAILQ_FOREACH(current, bindings, bindings) {
bind = TAILQ_FIRST(bindings);
- // test only bindings visited up to current binding
+ /* test only bindings visited up to current binding */
while ((bind != TAILQ_END(bindings)) && (bind != current)) {
- // testing is not case sensitive
- if ((strcasecmp(bind->symbol, current->symbol) == 0) && (bind->keycode == current->keycode) && (bind->mods == current->mods)) {
+ /* testing is not case sensitive */
+ if ((strcasecmp(bind->symbol, current->symbol) == 0) &&
+ (bind->keycode == current->keycode) &&
+ (bind->mods == current->mods)) {
context->has_errors = true;
fprintf(stderr, "Duplicated keybinding in config file: mod%d with key %s", current->mods, current->symbol);
- // if keycode is 0, it´s not necessary to print it.
- if(current->keycode != 0)
+ /* if keycode is 0, this is a keysym binding */
+ if (current->keycode != 0)
fprintf(stderr, " and keycode %d", current->keycode);
fprintf(stderr, "\n");
retval = false;