aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/command.c9
-rw-r--r--src/main.c16
2 files changed, 16 insertions, 9 deletions
diff --git a/src/command.c b/src/command.c
index 35efb0ccb..685fa7056 100644
--- a/src/command.c
+++ b/src/command.c
@@ -481,20 +481,11 @@ check_key_bindings(command_definition_t *cp, char *buf, size_t bufsize)
if (cp[i].keys[j] &&
(cmd = find_key_command(cp[i].keys[j],cp)) != cp[i].command) {
if (buf) {
-#ifdef ENABLE_KEYDEF_SCREEN
- g_snprintf(buf, bufsize,
- _("Key %s assigned to %s and %s (press %s for the key editor)"),
- key2str(cp[i].keys[j]),
- get_key_command_name(cp[i].command),
- get_key_command_name(cmd),
- get_key_names(CMD_SCREEN_KEYDEF,0));
-#else
g_snprintf(buf, bufsize,
_("Key %s assigned to %s and %s\n"),
key2str(cp[i].keys[j]),
get_key_command_name(cp[i].command),
get_key_command_name(cmd));
-#endif
} else
fprintf(stderr,
_("Key %s assigned to %s and %s\n"),
diff --git a/src/main.c b/src/main.c
index 01f0a4272..2edf2d4ec 100644
--- a/src/main.c
+++ b/src/main.c
@@ -346,6 +346,9 @@ static gboolean
timer_check_key_bindings(G_GNUC_UNUSED gpointer data)
{
char buf[256];
+#ifdef ENABLE_KEYDEF_SCREEN
+ char comment[64];
+#endif
gboolean key_error;
key_error = check_key_bindings(NULL, buf, sizeof(buf));
@@ -354,7 +357,20 @@ timer_check_key_bindings(G_GNUC_UNUSED gpointer data)
process */
return FALSE;
+#ifdef ENABLE_KEYDEF_SCREEN
+ g_strchomp(buf);
+ g_strlcat(buf, " (", sizeof(buf));
+ /* to translators: a key was bound twice in the key editor,
+ and this is a hint for the user what to press to correct
+ that */
+ g_snprintf(comment, sizeof(comment), _("press %s for the key editor"),
+ get_key_names(CMD_SCREEN_KEYDEF, 0));
+ g_strlcat(buf, comment, sizeof(buf));
+ g_strlcat(buf, ")", sizeof(buf));
+#endif
+
screen_status_printf("%s", buf);
+
doupdate();
return TRUE;
}