Index: src/Actions/MapOfActions.cpp
===================================================================
--- src/Actions/MapOfActions.cpp	(revision aacce839dff40761d1bbe945e9724e91fa2b50ea)
+++ src/Actions/MapOfActions.cpp	(revision a024627b6670da09d98bfc67ad4d3d28393f939c)
@@ -113,5 +113,6 @@
   DescriptionMap["element"] = "single element";
   DescriptionMap["elements"] = "set of elements";
-  DescriptionMap["end-mol"] = "last or end step";
+  DescriptionMap["end-step"] = "last or end step";
+  DescriptionMap["id-mapping"] = "whether the identity shall be used in mapping atoms onto atoms or some closest distance measure shall be used";
   DescriptionMap["input"] = "name of input file";
   DescriptionMap["length"] = "length in space";
@@ -124,5 +125,5 @@
   DescriptionMap["periodic"] = "system is constraint to periodic boundary conditions (y/n)";
   DescriptionMap["position"] = "position in R^3 space";
-  DescriptionMap["start-mol"] = "first or start step";
+  DescriptionMap["start-step"] = "first or start step";
 
   // short forms for the actions
@@ -177,5 +178,4 @@
   TypeMap["depth-first-search"] = Double;
   TypeMap["element-db"] = String;
-  TypeMap["end-mol"] = Molecule;
   TypeMap["fastparsing"] = Boolean;
   TypeMap["fill-molecule"] = String;
@@ -197,5 +197,4 @@
   TypeMap["scale-box"] = Vector;
   TypeMap["set-basis"] = String;
-  TypeMap["start-mol"] = Molecule;
   TypeMap["suspend-in-water"] = Double;
   TypeMap["translate-mol"] = Vector;
@@ -214,4 +213,6 @@
   TypeMap["element"] = Element;
   TypeMap["elements"] = ListOfElements;
+  TypeMap["end-step"] = Integer;
+  TypeMap["id-mapping"] = Boolean;
   TypeMap["length"] = Double;
   TypeMap["lengths"] = Vector;
@@ -223,4 +224,5 @@
   TypeMap["periodic"] = Boolean;
   TypeMap["position"] = Vector;
+  TypeMap["start-step"] = Integer;
 
   // default values for any action that needs one (always string!)
@@ -251,5 +253,5 @@
   generic.insert("fragment-mol");
   generic.insert("help");
-//	generic.insert("linear-interpolate");
+	generic.insert("linear-interpolate");
 //  generic.insert("molecular-volume");
 //  generic.insert("nonconvex-envelope");
@@ -276,8 +278,6 @@
 //  generic.insert("distances");
 //  generic.insert("element");
-//  generic.insert("end-mol");
     generic.insert("input");
 //  generic.insert("length");
-//  generic.insert("start-mol");
 
     // positional arguments
@@ -295,4 +295,6 @@
   generic.insert("element");
   generic.insert("elements");
+  generic.insert("end-step");
+  generic.insert("id-mapping");
   generic.insert("lengths");
   generic.insert("MaxDistance");
@@ -303,4 +305,5 @@
   generic.insert("periodic");
   generic.insert("position");
+  generic.insert("start-step");
 }
 
Index: src/Actions/MoleculeAction/LinearInterpolationofTrajectoriesAction.cpp
===================================================================
--- src/Actions/MoleculeAction/LinearInterpolationofTrajectoriesAction.cpp	(revision aacce839dff40761d1bbe945e9724e91fa2b50ea)
+++ src/Actions/MoleculeAction/LinearInterpolationofTrajectoriesAction.cpp	(revision a024627b6670da09d98bfc67ad4d3d28393f939c)
@@ -58,6 +58,6 @@
 
   dialog->queryString(NAME, &filename, MapOfActions::getInstance().getDescription(NAME));
-  dialog->queryInt("start-mol", &start, MapOfActions::getInstance().getDescription("start"));
-  dialog->queryInt("end-mol", &start, MapOfActions::getInstance().getDescription("end"));
+  dialog->queryInt("start-step", &start, MapOfActions::getInstance().getDescription("start-step"));
+  dialog->queryInt("end-step", &end, MapOfActions::getInstance().getDescription("end-step"));
   dialog->queryMolecule("molecule-by-id", &mol, MapOfActions::getInstance().getDescription("molecule-by-id"));
   dialog->queryBoolean("id-mapping", &IdMapping, MapOfActions::getInstance().getDescription("id-mapping"));
Index: src/builder.cpp
===================================================================
--- src/builder.cpp	(revision aacce839dff40761d1bbe945e9724e91fa2b50ea)
+++ src/builder.cpp	(revision a024627b6670da09d98bfc67ad4d3d28393f939c)
@@ -1966,18 +1966,20 @@
             case 'L':
               if (ExitFlag == 0) ExitFlag = 1;
-              if ((argptr >= argc) || (argv[argptr][0] == '-')) {
+              if ((argptr+8 >= argc) || (argv[argptr][0] == '-')) {
                 ExitFlag = 255;
-                DoeLog(0) && (eLog()<< Verbose(0) << "Not enough or invalid arguments given for linear interpolation: -L <step0> <step1> <prefix> <identity mapping?>" << endl);
+                DoeLog(0) && (eLog()<< Verbose(0) << "Not enough or invalid arguments given for linear interpolation: -L <prefix> --start-step <step0> --end-step <step1> --molecule-by-id 0 --id-mapping <0/1>" << endl);
                 performCriticalExit();
               } else {
-                SaveFlag = true;
-                DoLog(1) && (Log() << Verbose(1) << "Linear interpolation between configuration " << argv[argptr] << " and " << argv[argptr+1] << "." << endl);
-                if (atoi(argv[argptr+3]) == 1)
-                  DoLog(1) && (Log() << Verbose(1) << "Using Identity for the permutation map." << endl);
-                if (!mol->LinearInterpolationBetweenConfiguration(atoi(argv[argptr]), atoi(argv[argptr+1]), argv[argptr+2], configuration, atoi(argv[argptr+3])) == 1 ? true : false)
-                  DoLog(2) && (Log() << Verbose(2) << "Could not store " << argv[argptr+2] << " files." << endl);
-                else
-                  DoLog(2) && (Log() << Verbose(2) << "Steps created and " << argv[argptr+2] << " files stored." << endl);
-                argptr+=4;
+                ArgcList.insert(argptr-1);
+                ArgcList.insert(argptr);
+                ArgcList.insert(argptr+1);
+                ArgcList.insert(argptr+2);
+                ArgcList.insert(argptr+3);
+                ArgcList.insert(argptr+4);
+                ArgcList.insert(argptr+5);
+                ArgcList.insert(argptr+6);
+                ArgcList.insert(argptr+7);
+                ArgcList.insert(argptr+8);
+                argptr+=9;
               }
               break;
