diff --git a/Common/CommandLine.cpp b/Common/CommandLine.cpp
index c13ac7d76a616b6efb3325a303d3b1bb60828aa0..543fd45ed59682305d5049ec05fa1e3c3d882417 100644
--- a/Common/CommandLine.cpp
+++ b/Common/CommandLine.cpp
@@ -169,9 +169,10 @@ std::vector<std::pair<std::string, std::string> > GetShortcutsUsage(const std::s
   s.push_back(mp("Shift+u",        "Show post-processing view plugins"));
   s.push_back(mp("Shift+w",        "Show post-processing view options"));
   s.push_back(mp("Shift+Escape",   "Enable full mouse selection"));
-  s.push_back(mp(cc + "i",         "Show statistics window"));
   s.push_back(mp(cc + "d",         "Attach/detach menu"));
   s.push_back(mp(cc + "f",         "Enter full screen"));
+  s.push_back(mp(cc + "i",         "Show statistics window"));
+  s.push_back(mp(cc + "j",         "Save model options"));
   s.push_back(mp(cc + "l",         "Show message console"));
 #if defined(__APPLE__)
   s.push_back(mp(cc + "m",         "Minimize window"));
@@ -182,6 +183,7 @@ std::vector<std::pair<std::string, std::string> > GetShortcutsUsage(const std::s
   s.push_back(mp(cc + "r",         "Rename project file"));
   s.push_back(mp(cc + "s",         "Save file as"));
   s.push_back(mp("Shift+" + cc + "c", "Show clipping plane window"));
+  s.push_back(mp("Shift+" + cc + "j", "Save options as default"));
   s.push_back(mp("Shift+" + cc + "m", "Show manipulator window"));
   s.push_back(mp("Shift+" + cc + "n", "Show option window"));
   s.push_back(mp("Shift+" + cc + "o", "Merge file(s)"));
diff --git a/Fltk/graphicWindow.cpp b/Fltk/graphicWindow.cpp
index bf22def402e71684e4fbc1cbbd813d2d88057ca9..fee9d895d8efe25e09c381ad803871cd8670022d 100644
--- a/Fltk/graphicWindow.cpp
+++ b/Fltk/graphicWindow.cpp
@@ -449,7 +449,7 @@ static void file_options_save_cb(Fl_Widget *w, void *data)
     fileName = CTX::instance()->homeDir + CTX::instance()->optionsFileName;
   Msg::StatusBar(true, "Writing '%s'...", fileName.c_str());
   if(str == "file")
-    PrintOptions(0, GMSH_FULLRC, 1, 0, fileName.c_str());
+    PrintOptions(0, GMSH_FULLRC, 0, 0, fileName.c_str());
   else
     PrintOptions(0, GMSH_OPTIONSRC, 1, 1, fileName.c_str());
   Msg::StatusBar(true, "Done writing '%s'", fileName.c_str());
@@ -1931,8 +1931,8 @@ static Fl_Menu_Item bar_table[] = {
     {"&Rename...",  FL_CTRL+'r', (Fl_Callback *)file_rename_cb, 0},
     {"Save &As...", FL_CTRL+'s', (Fl_Callback *)file_save_as_cb, 0},
     {"Sa&ve Mesh",  FL_CTRL+FL_SHIFT+'s', (Fl_Callback *)mesh_save_cb, 0},
-    {"Save Model Options", 0, (Fl_Callback *)file_options_save_cb, (void*)"file"},
-    {"Save Options As Default", 0, (Fl_Callback *)file_options_save_cb, (void*)"default", FL_MENU_DIVIDER},
+    {"Save Model Options", FL_CTRL+'j', (Fl_Callback *)file_options_save_cb, (void*)"file"},
+    {"Save Options As Default", FL_CTRL+FL_SHIFT+'j', (Fl_Callback *)file_options_save_cb, (void*)"default", FL_MENU_DIVIDER},
     {"&Quit",       FL_CTRL+'q', (Fl_Callback *)file_quit_cb, 0},
     {0},
   {"&Tools", 0, 0, 0, FL_SUBMENU},
@@ -1996,8 +1996,8 @@ static Fl_Menu_Item sysbar_table[] = {
     {"Rename...",  FL_META+'r', (Fl_Callback *)file_rename_cb, 0},
     {"Save As...", FL_META+'s', (Fl_Callback *)file_save_as_cb, 0},
     {"Save Mesh",  FL_META+FL_SHIFT+'s', (Fl_Callback *)mesh_save_cb, 0},
-    {"Save Model Options", 0, (Fl_Callback *)file_options_save_cb, (void*)"file"},
-    {"Save Options As Default", 0, (Fl_Callback *)file_options_save_cb, (void*)"default"},
+    {"Save Model Options", FL_META+'j', (Fl_Callback *)file_options_save_cb, (void*)"file"},
+    {"Save Options As Default", FL_META+FL_SHIFT+'j', (Fl_Callback *)file_options_save_cb, (void*)"default"},
     {0},
   {"Tools", 0, 0, 0, FL_SUBMENU},
     {"Options",         FL_META+FL_SHIFT+'n', (Fl_Callback *)options_cb, 0},