diff --git a/Common/Options.cpp b/Common/Options.cpp
index ed5e80f058a3d7d82f0f9f3cd0b748a6281a93db..6e868fc3fc930b9a91e2fb8248a43fa34c86764d 100644
--- a/Common/Options.cpp
+++ b/Common/Options.cpp
@@ -1,4 +1,4 @@
-// $Id: Options.cpp,v 1.14 2001-05-04 13:39:34 geuzaine Exp $
+// $Id: Options.cpp,v 1.15 2001-05-04 13:42:09 geuzaine Exp $
 
 #include "Gmsh.h"
 #include "GmshUI.h"
@@ -450,6 +450,10 @@ char * opt_general_options_filename(OPT_ARGS_STR){
 }
 char * opt_general_editor(OPT_ARGS_STR){
   if(action & GMSH_SET) CTX.editor = val;
+#ifdef _FLTK
+  if(WID && (action & GMSH_GUI))
+    WID->gen_input[4]->value(CTX.editor);
+#endif
   return CTX.editor;
 }
 
diff --git a/Fltk/GUI.cpp b/Fltk/GUI.cpp
index e8c64ad943ce910d5dea9f6d8f5607bbb2d2206c..7bb203ae88ed51ed92f745a2db7c840e99bc25ff 100644
--- a/Fltk/GUI.cpp
+++ b/Fltk/GUI.cpp
@@ -1,4 +1,4 @@
-// $Id: GUI.cpp,v 1.66 2001-05-04 13:39:34 geuzaine Exp $
+// $Id: GUI.cpp,v 1.67 2001-05-04 13:42:09 geuzaine Exp $
 
 // To make the interface as visually consistent as possible, please:
 // - use the BH, BW, WB, IW values for button heights/widths, window borders, etc.
@@ -898,7 +898,7 @@ void GUI::create_general_options_window(){
     init_general_options_window = 1 ;
     
     int width = 25*CTX.fontsize;
-    int height = 5*WB+10*BH ;
+    int height = 5*WB+11*BH ;
     
     gen_window = new Fl_Window(width,height);
     gen_window->box(WINDOW_BOX);
@@ -947,7 +947,8 @@ void GUI::create_general_options_window(){
 	gen_input[1] = new Fl_Input(2*WB, 2*WB+6*BH, IW, BH, "Temporary file");
 	gen_input[2] = new Fl_Input(2*WB, 2*WB+7*BH, IW, BH, "Error file");
 	gen_input[3] = new Fl_Input(2*WB, 2*WB+8*BH, IW, BH, "Option file");
-	for(i=0 ; i<4 ; i++){
+	gen_input[4] = new Fl_Input(2*WB, 2*WB+9*BH, IW, BH, "Text editor command");
+	for(i=0 ; i<5 ; i++){
 	  gen_input[i]->labelsize(CTX.fontsize);
 	  gen_input[i]->textsize(CTX.fontsize);
 	  gen_input[i]->align(FL_ALIGN_RIGHT);