diff --git a/ChangeLog b/ChangeLog
index b57d3319ecca16aacfd9d988baed0853a9c2da57..8b628546a0860a93e815b4b90c3ad134b4ae49ea 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,9 @@
 CVS code -
+- General
+	- Reworked shortcut list for GNU compliance, put "Get Help" into
+	  default list, removed "Goto Line", aligned "Read File"
+	  with "Write Out" and "Replace" with "Where is" for 
+	  consistency.
 - configure.in:
 	- Autoconf compatibility fixes (Pavel Roskin)
 - cut.c:
diff --git a/global.c b/global.c
index 5fe570b9319d59ad4c3cba0b8347bafa1501f30f..a650c0028ec2ee8f09d724fa551535ffc4ba6d64 100644
--- a/global.c
+++ b/global.c
@@ -218,38 +218,34 @@ void shortcut_init(int unjustify)
     nano_cancel_msg = _("Cancel the current function");
 #endif
 
-    if (ISSET(PICO_MODE))
 	sc_init_one(&main_list[0], NANO_HELP_KEY, _("Get Help"),
 		    nano_help_msg, 0, NANO_HELP_FKEY, 0, VIEW, do_help);
-    else
-	sc_init_one(&main_list[0], NANO_WRITEOUT_KEY, _("WriteOut"),
-		    nano_writeout_msg,
-		    0, NANO_WRITEOUT_FKEY, 0, NOVIEW, do_writeout_void);
 
     sc_init_one(&main_list[1], NANO_EXIT_KEY, _("Exit"),
 		nano_exit_msg, 0, NANO_EXIT_FKEY, 0, VIEW, do_exit);
 
-    if (ISSET(PICO_MODE))
-	sc_init_one(&main_list[2], NANO_WRITEOUT_KEY, _("WriteOut"),
+    sc_init_one(&main_list[2], NANO_WRITEOUT_KEY, _("WriteOut"),
 		    nano_writeout_msg,
 		    0, NANO_WRITEOUT_FKEY, 0, NOVIEW, do_writeout_void);
-    else
-	sc_init_one(&main_list[2], NANO_GOTO_KEY, _("Goto Line"),
-		    nano_goto_msg,
-		    NANO_ALT_G, NANO_GOTO_FKEY, 0, VIEW, do_gotoline_void);
 
     if (ISSET(PICO_MODE))
 	sc_init_one(&main_list[3], NANO_JUSTIFY_KEY, _("Justify"),
 		    nano_justify_msg, 0, NANO_JUSTIFY_FKEY, 0,
 		    NOVIEW, do_justify);
     else
-	sc_init_one(&main_list[3], NANO_REPLACE_KEY, _("Replace"),
-		    nano_replace_msg,
-		    NANO_ALT_R, NANO_REPLACE_FKEY, 0, NOVIEW, do_replace);
+	sc_init_one(&main_list[3], NANO_INSERTFILE_KEY, _("Read File"),
+		nano_insert_msg,
+		0, NANO_INSERTFILE_FKEY, 0, NOVIEW, do_insertfile);
 
-    sc_init_one(&main_list[4], NANO_INSERTFILE_KEY, _("Read File"),
+
+    if (ISSET(PICO_MODE))
+	sc_init_one(&main_list[4], NANO_INSERTFILE_KEY, _("Read File"),
 		nano_insert_msg,
 		0, NANO_INSERTFILE_FKEY, 0, NOVIEW, do_insertfile);
+    else
+	sc_init_one(&main_list[4], NANO_REPLACE_KEY, _("Replace"),
+		    nano_replace_msg,
+		    NANO_ALT_R, NANO_REPLACE_FKEY, 0, NOVIEW, do_replace);
 
     sc_init_one(&main_list[5], NANO_WHEREIS_KEY, _("Where Is"),
 		nano_whereis_msg,
@@ -278,6 +274,16 @@ void shortcut_init(int unjustify)
 		nano_cursorpos_msg,
 		0, NANO_CURSORPOS_FKEY, 0, VIEW, do_cursorpos);
 
+/*
+    if (ISSET(PICO_MODE))
+	sc_init_one(&main_list[11], NANO_GOTO_KEY, _("Goto Line"),
+		    nano_goto_msg,
+		    NANO_ALT_G, NANO_GOTO_FKEY, 0, VIEW, do_gotoline_void);
+    else
+	sc_init_one(&main_list[11], NANO_SPELL_KEY, _("To Spell"),
+		nano_spell_msg, 0, NANO_SPELL_FKEY, 0, NOVIEW, do_spell);
+*/
+
     sc_init_one(&main_list[11], NANO_SPELL_KEY, _("To Spell"),
 		nano_spell_msg, 0, NANO_SPELL_FKEY, 0, NOVIEW, do_spell);
 
@@ -330,13 +336,19 @@ void shortcut_init(int unjustify)
 		nano_enter_msg,
 		0, KEY_ENTER, NANO_CONTROL_M, NOVIEW, do_enter_void);
 
+/*
     if (ISSET(PICO_MODE))
 	sc_init_one(&main_list[25], NANO_GOTO_KEY, _("Goto Line"),
 		    nano_goto_msg,
 		    NANO_ALT_G, NANO_GOTO_FKEY, 0, VIEW, do_gotoline_void);
     else
-	sc_init_one(&main_list[25], NANO_HELP_KEY, _("Get Help"),
-		    nano_help_msg, 0, NANO_HELP_FKEY, 0, VIEW, do_help);
+	sc_init_one(&main_list[25], NANO_SPELL_KEY, _("To Spell"),
+		nano_spell_msg, 0, NANO_SPELL_FKEY, 0, NOVIEW, do_spell);
+*/
+    sc_init_one(&main_list[25], NANO_GOTO_KEY, _("Goto Line"),
+		    nano_goto_msg,
+		    NANO_ALT_G, NANO_GOTO_FKEY, 0, VIEW, do_gotoline_void);
+
 
 
     sc_init_one(&whereis_list[0], NANO_FIRSTLINE_KEY, _("First Line"),