diff --git a/Box/Box.cpp b/Box/Box.cpp
index 6eebde185660ba2f110d2167c9a23c9f734096a2..0ae21e7bcd909b63a119a5422966421a31932ee3 100644
--- a/Box/Box.cpp
+++ b/Box/Box.cpp
@@ -1,4 +1,4 @@
-// $Id: Box.cpp,v 1.32 2006-11-27 22:22:06 geuzaine Exp $
+// $Id: Box.cpp,v 1.33 2006-12-16 15:44:27 geuzaine Exp $
 //
 // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
 //
@@ -99,14 +99,14 @@ int GMSHBOX(int argc, char *argv[])
 
   check_gsl();
 
-  OpenProblem(CTX.filename);
+  OpenProject(CTX.filename);
   if(yyerrorstate)
     ParUtil::Instance()->Abort();
   else {
     for(int i = 1; i < List_Nbr(CTX.files); i++)
-      MergeProblem(*(char**)List_Pointer(CTX.files, i));
+      MergeFile(*(char**)List_Pointer(CTX.files, i));
     if(CTX.bgm_filename) {
-      MergeProblem(CTX.bgm_filename);
+      MergeFile(CTX.bgm_filename);
       if(List_Nbr(CTX.post.list))
         BGMWithView(*(Post_View **)
                     List_Pointer(CTX.post.list, List_Nbr(CTX.post.list) - 1));
diff --git a/Common/CommandLine.cpp b/Common/CommandLine.cpp
index c8218939b26e317d13c2eaa6ea889bd262f15b36..c16ad6482a21c8567a3a8a58fd3a868432f8da17 100644
--- a/Common/CommandLine.cpp
+++ b/Common/CommandLine.cpp
@@ -1,4 +1,4 @@
-// $Id: CommandLine.cpp,v 1.86 2006-11-30 14:09:07 geuzaine Exp $
+// $Id: CommandLine.cpp,v 1.87 2006-12-16 15:44:27 geuzaine Exp $
 //
 // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
 //
@@ -279,7 +279,7 @@ void Get_Options(int argc, char *argv[])
         CTX.terminal = 1;
         CTX.batch = 1;
         if(argv[i] && argv[i + 1]) {
-          OpenProblem(argv[i]);
+          OpenProject(argv[i]);
 	  // convert post-processing views to latest (binary) format
           for(int j = 0; j < List_Nbr(CTX.post.list); j++)
             WriteView(*(Post_View **) List_Pointer(CTX.post.list, j),
diff --git a/Fltk/Callbacks.cpp b/Fltk/Callbacks.cpp
index 7a663a483bb08883de0260b8abaf977b591c8afb..afc455339669e952118a615c2610153ba93d163c 100644
--- a/Fltk/Callbacks.cpp
+++ b/Fltk/Callbacks.cpp
@@ -1,4 +1,4 @@
-// $Id: Callbacks.cpp,v 1.496 2006-12-16 03:30:58 geuzaine Exp $
+// $Id: Callbacks.cpp,v 1.497 2006-12-16 15:44:28 geuzaine Exp $
 //
 // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
 //
@@ -594,7 +594,7 @@ void file_new_cb(CALLBACK_ARGS)
     time(&now);
     fprintf(fp, "// Gmsh project created on %s", ctime(&now));
     fclose(fp);
-    OpenProblem(name);
+    OpenProject(name);
     Draw();
   }
 }
@@ -625,7 +625,7 @@ void file_open_cb(CALLBACK_ARGS)
 {
   int n = List_Nbr(CTX.post.list);
   if(file_chooser(0, 0, "Open", file_types)) {
-    OpenProblem(file_chooser_get_name(1));
+    OpenProject(file_chooser_get_name(1));
     Draw();
   }
   if(n != List_Nbr(CTX.post.list))
@@ -638,7 +638,7 @@ void file_merge_cb(CALLBACK_ARGS)
   int f = file_chooser(1, 0, "Merge", file_types);
   if(f) {
     for(int i = 1; i <= f; i++)
-      MergeProblem(file_chooser_get_name(i));
+      MergeFile(file_chooser_get_name(i));
     Draw();
   }
   if(n != List_Nbr(CTX.post.list))
@@ -860,7 +860,7 @@ void file_rename_cb(CALLBACK_ARGS)
           goto test;
     }
     rename(CTX.filename, name);
-    OpenProblem(name);
+    OpenProject(name);
     Draw();
   }
 }
@@ -2692,7 +2692,7 @@ void geometry_edit_cb(CALLBACK_ARGS)
 
 void geometry_reload_cb(CALLBACK_ARGS)
 {
-  OpenProblem(CTX.filename);
+  OpenProject(CTX.filename);
   Draw();
 }
 
@@ -4310,7 +4310,7 @@ static void _view_reload(int num)
   }
 
   CTX.post.force_num = v->Num;
-  MergeProblem(v->FileName);
+  MergeFile(v->FileName);
   CTX.post.force_num = 0;
 
   Post_View *v2 = *(Post_View **) List_Pointer(CTX.post.list, num);
diff --git a/Fltk/GUI.cpp b/Fltk/GUI.cpp
index caf9b9f49d32e8818e27ac16702cf0388c66b01b..e214c8edba42d8494ca1a18eb0fdbb4256d345e3 100644
--- a/Fltk/GUI.cpp
+++ b/Fltk/GUI.cpp
@@ -1,4 +1,4 @@
-// $Id: GUI.cpp,v 1.585 2006-12-14 02:44:01 geuzaine Exp $
+// $Id: GUI.cpp,v 1.586 2006-12-16 15:44:28 geuzaine Exp $
 //
 // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
 //
@@ -888,7 +888,7 @@ GUI::GUI(int argc, char **argv)
   // add callback to respond to the Mac Finder (when you click on a
   // document)
 #if defined(__APPLE__) && defined(HAVE_FLTK_1_1_5_OR_ABOVE)
-  fl_open_callback(OpenProblemMacFinder);
+  fl_open_callback(OpenProjectMacFinder);
 #endif
 
   // All static windows are contructed (even if some are not
diff --git a/Fltk/Main.cpp b/Fltk/Main.cpp
index 83fb496a5ffb715414f9211346df893bce726067..17c5a2f5c3a980dbd2e7dea6221489b46c955c9d 100644
--- a/Fltk/Main.cpp
+++ b/Fltk/Main.cpp
@@ -1,4 +1,4 @@
-// $Id: Main.cpp,v 1.101 2006-11-27 22:22:10 geuzaine Exp $
+// $Id: Main.cpp,v 1.102 2006-12-16 15:44:28 geuzaine Exp $
 //
 // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
 //
@@ -115,16 +115,16 @@ int main(int argc, char *argv[])
   if(CTX.batch) {
     check_gsl();
     Msg(INFO, "'%s' started on %s", cmdline, currtime);
-    OpenProblem(CTX.filename);
+    OpenProject(CTX.filename);
     if(yyerrorstate)
       exit(1);
     else {
       for(int i = 1; i < List_Nbr(CTX.files); i++)
-        MergeProblem(*(char**)List_Pointer(CTX.files, i));
+        MergeFile(*(char**)List_Pointer(CTX.files, i));
       if(CTX.post.combine_time)
 	CombineViews(1, 2, CTX.post.combine_remove_orig);
       if(CTX.bgm_filename) {
-        MergeProblem(CTX.bgm_filename);
+        MergeFile(CTX.bgm_filename);
         if(List_Nbr(CTX.post.list))
           BGMWithView(*(Post_View **)
                       List_Pointer(CTX.post.list,
@@ -190,9 +190,9 @@ int main(int argc, char *argv[])
 
   // Open project file and merge all other input files
 
-  OpenProblem(CTX.filename);
+  OpenProject(CTX.filename);
   for(int i = 1; i < List_Nbr(CTX.files); i++)
-    MergeProblem(*(char**)List_Pointer(CTX.files, i));
+    MergeFile(*(char**)List_Pointer(CTX.files, i));
   if(CTX.post.combine_time)
     CombineViews(1, 2, CTX.post.combine_remove_orig);
   
@@ -222,7 +222,7 @@ int main(int argc, char *argv[])
   // Read background mesh on disk
 
   if(CTX.bgm_filename) {
-    MergeProblem(CTX.bgm_filename);
+    MergeFile(CTX.bgm_filename);
     if(List_Nbr(CTX.post.list))
       BGMWithView(*(Post_View **)
                   List_Pointer(CTX.post.list, List_Nbr(CTX.post.list) - 1));
diff --git a/Fltk/Solvers.cpp b/Fltk/Solvers.cpp
index 451e219951f691d295bce5c623d5f40e091c893a..1c8fb2366aada8d930cbdbbd2e26584443e59dd6 100644
--- a/Fltk/Solvers.cpp
+++ b/Fltk/Solvers.cpp
@@ -1,4 +1,4 @@
-// $Id: Solvers.cpp,v 1.54 2006-11-27 22:22:11 geuzaine Exp $
+// $Id: Solvers.cpp,v 1.55 2006-12-16 15:44:28 geuzaine Exp $
 //
 // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
 //
@@ -228,7 +228,7 @@ int Solver(int num, char *args)
 	case GmshServer::CLIENT_MERGE_FILE:
 	  if(num < 0 || (num >= 0 && SINFO[num].merge_views)) {
 	    int n = List_Nbr(CTX.post.list);
-	    MergeProblem(message);
+	    MergeFile(message);
 	    Draw();
 	    if(n != List_Nbr(CTX.post.list))
 	      WID->set_context(menu_post, 0);
diff --git a/Parser/CreateFile.h b/Parser/CreateFile.h
index c52b5ac2d0f0afb4bd0f9a83170d3b587368d32e..ed6e71c067fb90f1336e2520128b1ef6be700968 100644
--- a/Parser/CreateFile.h
+++ b/Parser/CreateFile.h
@@ -22,6 +22,6 @@
 
 int GuessFileFormatFromFileName(char *name);
 void GetDefaultFileName(int format, char *name);
-void CreateOutputFile (char *name, int format);
+void CreateOutputFile(char *name, int format);
 
 #endif
diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp
index b4c109804f8ff871385ca153dc4f339d2d905ad8..507d8dfb41471b3adb8bf0ab7665358f4f4c9e26 100644
--- a/Parser/Gmsh.tab.cpp
+++ b/Parser/Gmsh.tab.cpp
@@ -126,7 +126,7 @@
 
 #line 1 "Gmsh.y"
 
-// $Id: Gmsh.tab.cpp,v 1.293 2006-12-03 20:41:45 geuzaine Exp $
+// $Id: Gmsh.tab.cpp,v 1.294 2006-12-16 15:44:28 geuzaine Exp $
 //
 // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
 //
@@ -4607,7 +4607,7 @@ case 135:
 	// MergeWithBoundingBox is deprecated
 	char tmpstring[1024];
 	FixRelativePath(yyvsp[-1].c, tmpstring);
-	MergeProblem(tmpstring, 1);
+	MergeFile(tmpstring, 1);
       }
       else if(!strcmp(yyvsp[-2].c, "System")){
 	SystemCall(yyvsp[-1].c);
diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y
index 0a6eddc8da41e3d39c8bf082317598f10cfa5427..71fa9ba983bbe344ce909bd6de6c242f5ff8954e 100644
--- a/Parser/Gmsh.y
+++ b/Parser/Gmsh.y
@@ -1,5 +1,5 @@
 %{
-// $Id: Gmsh.y,v 1.251 2006-12-03 20:41:46 geuzaine Exp $
+// $Id: Gmsh.y,v 1.252 2006-12-16 15:44:30 geuzaine Exp $
 //
 // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
 //
@@ -1837,7 +1837,7 @@ Command :
 	// MergeWithBoundingBox is deprecated
 	char tmpstring[1024];
 	FixRelativePath($2, tmpstring);
-	MergeProblem(tmpstring, 1);
+	MergeFile(tmpstring, 1);
       }
       else if(!strcmp($1, "System")){
 	SystemCall($2);
diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp
index 4cbb80a35a4249d6c33b7c969707397b5ba95a4a..5d3994ca15497d5436f77ba1425a896bbfaeba6d 100644
--- a/Parser/Gmsh.yy.cpp
+++ b/Parser/Gmsh.yy.cpp
@@ -2,7 +2,7 @@
 /* A lexical scanner generated by flex */
 
 /* Scanner skeleton version:
- * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.292 2006-12-03 20:41:46 geuzaine Exp $
+ * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.293 2006-12-16 15:44:30 geuzaine Exp $
  */
 
 #define FLEX_SCANNER
@@ -727,7 +727,7 @@ char *yytext;
 #line 1 "Gmsh.l"
 #define INITIAL 0
 #line 2 "Gmsh.l"
-// $Id: Gmsh.yy.cpp,v 1.292 2006-12-03 20:41:46 geuzaine Exp $
+// $Id: Gmsh.yy.cpp,v 1.293 2006-12-16 15:44:30 geuzaine Exp $
 //
 // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
 //
diff --git a/Parser/OpenFile.cpp b/Parser/OpenFile.cpp
index e20b8f3d86b19df03bf982a4d68588a8a30aa59b..b0724a4c9c81acd3d0b1be3821d783d911b56eae 100644
--- a/Parser/OpenFile.cpp
+++ b/Parser/OpenFile.cpp
@@ -1,4 +1,4 @@
-// $Id: OpenFile.cpp,v 1.133 2006-11-29 16:57:03 remacle Exp $
+// $Id: OpenFile.cpp,v 1.134 2006-12-16 15:44:30 geuzaine Exp $
 //
 // Copyright (C) 1997-2007 C. Geuzaine, J.-F. Remacle
 //
@@ -245,7 +245,7 @@ void SetProjectName(char *name)
 #endif
 }
 
-int MergeProblem(char *name, int warn_if_missing)
+int MergeFile(char *name, int warn_if_missing)
 {
 #if defined(HAVE_FOURIER_MODEL)
   if(!strcmp(name, "falcon")){
@@ -285,7 +285,7 @@ int MergeProblem(char *name, int warn_if_missing)
 	SystemCall(tmp);
 	if(!strcmp(CTX.filename, name)) // this is the project file
 	  SetProjectName(base);
-	return MergeProblem(base);
+	return MergeFile(base);
       }
     }
   }
@@ -375,7 +375,7 @@ int MergeProblem(char *name, int warn_if_missing)
   return status;
 }
 
-void OpenProblem(char *name)
+void OpenProject(char *name)
 {
   if(CTX.threads_lock) {
     Msg(INFO, "I'm busy! Ask me that later...");
@@ -390,7 +390,7 @@ void OpenProblem(char *name)
   srand(1);
 
   SetProjectName(name);
-  MergeProblem(name);
+  MergeFile(name);
 
   CTX.threads_lock = 0;
 
@@ -400,20 +400,20 @@ void OpenProblem(char *name)
 #endif
 }
 
-void OpenProblemMacFinder(const char *filename)
+void OpenProjectMacFinder(const char *filename)
 {
   static int first = 1;
   if(first){
     // just copy the filename: it will be opened when Gmsh is ready in
-    // main() (calling OpenProblem right now would be a bad idea: Gmsh
+    // main() (calling OpenProject right now would be a bad idea: Gmsh
     // is probably not completely initialized)
     strncpy(CTX.filename, filename, 255);
     first = 0;
   }
   else{
-    // should we do MergeProblem instead? not sure what's the most
+    // should we do MergeFile instead? not sure what's the most
     // intuitive
-    OpenProblem((char*)filename);
+    OpenProject((char*)filename);
 #if defined(HAVE_FLTK)
     Draw();
 #endif
diff --git a/Parser/OpenFile.h b/Parser/OpenFile.h
index dc7aa76b5b446324d86104729438c4aefc5f6819..fd40aba743a8d3fdd15d1a3c2f69d0fdb09fb305 100644
--- a/Parser/OpenFile.h
+++ b/Parser/OpenFile.h
@@ -20,11 +20,11 @@
 // 
 // Please report all bugs and problems to <gmsh@geuz.org>.
 
-int  ParseFile(char *filename, int close, int warn_if_missing=0);
+int ParseFile(char *filename, int close, int warn_if_missing=0);
 void ParseString(char *str);
-void OpenProblem(char *filename);
-void OpenProblemMacFinder(const char *filename);
-int MergeProblem(char *filename, int warn_if_missing=0);
+void OpenProject(char *filename);
+void OpenProjectMacFinder(const char *filename);
+int MergeFile(char *filename, int warn_if_missing=0);
 void FixRelativePath(char *in, char *out);
 void FixWindowsPath(char *in, char *out);
 void SetBoundingBox(double xmin, double xmax,