diff --git a/ChangeLog b/ChangeLog
index 7d6edfa..34e3707 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -8,6 +8,7 @@
 	update some translator comments and shorten a few tags.
 	* src/global.c (shortcut_init): Delete unneeded empty funcs; being
 	in the list of shortcuts is enough.
+	* src/global.c (shortcut_init): Put left/right in normal order.
 
 2014-04-21  Benno Schulenberg  <bensberg@justemail.net>
 	* doc/syntax/nanorc.nanorc: There is no F0 key.
diff --git a/src/global.c b/src/global.c
index 0ef3453..5a03bfb 100644
--- a/src/global.c
+++ b/src/global.c
@@ -1070,10 +1070,10 @@
 	add_to_sclist(MMAIN, "M-E", do_redo, 0, TRUE);
     }
 #endif
-    add_to_sclist(MMOST, "^F", do_right, 0, TRUE);
     add_to_sclist(MMOST, "^B", do_left, 0, TRUE);
-    add_to_sclist(MMOST, "Right", do_right, 0, TRUE);
+    add_to_sclist(MMOST, "^F", do_right, 0, TRUE);
     add_to_sclist(MMOST, "Left", do_left, 0, TRUE);
+    add_to_sclist(MMOST, "Right", do_right, 0, TRUE);
 #ifndef NANO_TINY
     add_to_sclist(MMAIN, "^Space", do_next_word_void, 0, TRUE);
     add_to_sclist(MMAIN, "M-Space", do_prev_word_void, 0, TRUE);
@@ -1440,12 +1440,12 @@
 	s->toggle = SUSPEND;
     }
 #endif /* !NANO_TINY */
-    else if (!strcasecmp(input, "right") ||
-	     !strcasecmp(input, "forward"))
-	s->scfunc = do_right;
     else if (!strcasecmp(input, "left") ||
 	     !strcasecmp(input, "back"))
 	s->scfunc = do_left;
+    else if (!strcasecmp(input, "right") ||
+	     !strcasecmp(input, "forward"))
+	s->scfunc = do_right;
     else if (!strcasecmp(input, "up") ||
 	     !strcasecmp(input, "prevline"))
 	s->scfunc = do_up_void;
