diff --git a/src/gui_x11.c b/src/gui_x11.c
index 540f143..fc63658 100644
--- a/src/gui_x11.c
+++ b/src/gui_x11.c
@@ -936,11 +936,11 @@
     }
     else
     {
-	len = mb_char2bytes(key, string);
-
 	// Some keys need adjustment when the Ctrl modifier is used.
 	key = may_adjust_key_for_ctrl(modifiers, key);
 
+	len = mb_char2bytes(key, string);
+
 	// Remove the SHIFT modifier for keys where it's already included,
 	// e.g., '(', '!' and '*'.
 	modifiers = may_remove_shift_modifier(modifiers, key);
diff --git a/src/misc2.c b/src/misc2.c
index e3602ee..6133a5e 100644
--- a/src/misc2.c
+++ b/src/misc2.c
@@ -1543,7 +1543,7 @@
     int
 may_adjust_key_for_ctrl(int modifiers, int key)
 {
-    if (!(modifiers & MOD_MASK_CTRL))
+    if ((modifiers & MOD_MASK_CTRL) == 0)
 	return key;
 
     if (ASCII_ISALPHA(key))
@@ -1559,6 +1559,13 @@
 	return '^';
     if (key == '-')
 	return '_';
+
+    // On a Belgian keyboard AltGr $ is ']', on other keyboards '$' can only be
+    // obtained with Shift.  Assume that '$' without shift implies a Belgian
+    // keyboard, where CTRL-$ means CTRL-].
+    if (key == '$' && (modifiers & MOD_MASK_SHIFT) == 0)
+	return ']';
+
     return key;
 }
 
diff --git a/src/version.c b/src/version.c
index 524abf7..058c712 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1302,
+/**/
     1301,
 /**/
     1300,
