anchor.diff:              {ok, Regions, Cmd};
           eclipse -> {ok, {FunClauseDef, Candidates}};
           command ->
  -            do_fold_expression(FileName, Regions, SearchPaths, TabWidth, "")
  -    end.
  -
  -%%-spec(fold_expr_by_name/7::(filename(), string(), string(), string(), 
  -%%			    string(), [dir()], integer()) ->
  -%%	     {ok, [{integer(), integer(), integer(), integer(), syntaxTree(), 
  -%%		    {filename(), atom(), syntaxTree(), integer()}}], string()}).
  -fold_expr_by_name(FileName, ModName, FunName, Arity, ClauseIndex,
  -		  SearchPaths, TabWidth) ->
  +            do_fold_expression(FileName, Regions, SearchPaths, command, TabWidth, "");
  +        composite_emacs ->
  +            do_fold_expression(FileName, Regions, SearchPaths, composite_emacs, TabWidth, "")
  +    end.
  +
  +fold_expr_by_name(FileName, ModName, FunName, Arity, ClauseIndex,SearchPaths, Editor, TabWidth) ->
  +    ?wrangler_io("\nCMD: ~p:fold_expression_by_name(~p,~p,~p,~p,~p,~p, ~p, ~p).\n",
  +                    [?MODULE, FileName, ModName, FunName, Arity, ClauseIndex, SearchPaths, Editor,TabWidth]),
       fold_by_name_par_checking(ModName, FunName, Arity, ClauseIndex),
  -    fold_expr_by_name(FileName, list_to_atom(ModName), list_to_atom(FunName),
  -		      list_to_integer(Arity), list_to_integer(ClauseIndex),
  -		      SearchPaths, emacs, TabWidth).
  +    fold_expr_by_name_1(FileName, list_to_atom(ModName), list_to_atom(FunName),
  +		        list_to_integer(Arity), list_to_integer(ClauseIndex),
  +		        SearchPaths, Editor, TabWidth).
   
   %%-spec(fold_expr_by_name_eclipse/7::(filename(), string(), string(), integer(), integer(), [dir()], integer())
   %%				   -> {ok, {syntaxTree(), [{{{integer(), integer()}, {integer(), integer()}}, syntaxTree(),syntaxTree()}]}}).
   fold_expr_by_name_eclipse(FileName, ModName, FunName, Arity, ClauseIndex, SearchPaths, TabWidth) ->
  -    fold_expr_by_name(FileName, list_to_atom(ModName), list_to_atom(FunName), Arity, 
  -		      ClauseIndex, SearchPaths, eclipse, TabWidth).
  -
  -fold_expr_by_name(FileName, ModName, FunName, Arity, ClauseIndex, SearchPaths, Editor, TabWidth) ->
  -     ?wrangler_io("\nCMD: ~p:fold_expression(~p,~p,~p,~p,~p,~p).\n",
  -		  [?MODULE, FileName, ModName, FunName, Arity, ClauseIndex, TabWidth]),
  -     Cmd = "CMD: " ++ atom_to_list(?MODULE) ++ ":fold_expression(" ++ "\"" ++
  -	     FileName ++ "\", " ++ atom_to_list(ModName) ++ ", " ++ atom_to_list(FunName) ++
  -	       ", " ++ integer_to_list(Arity) ++ ", " ++ integer_to_list(ClauseIndex) ++ ", ["
  -											 ++ wrangler_misc:format_search_paths(SearchPaths) ++ "]," ++ integer_to_list(TabWidth) ++ ").",
  -     {ok, {AnnAST, Info}} = wrangler_ast_server:parse_annotate_file(FileName, true, SearchPaths, TabWidth),
  -     {value, {module, CurrentModName}} = lists:keysearch(module, 1, Info),
  -     FileName1 = get_file_name(ModName, SearchPaths),
  -     {ok, {AnnAST1, _Info1}} = wrangler_ast_server:parse_annotate_file(FileName1, true, SearchPaths, TabWidth),
  -     case get_fun_clause_def(AnnAST1, FunName, Arity, ClauseIndex) of
  -	 {ok, {Mod, _FunName, _Arity, FunClauseDef}} ->
  -	     side_condition_analysis(FunClauseDef),
  -	     Candidates = search_candidate_exprs(AnnAST, {Mod, CurrentModName}, FunName, FunClauseDef),
  -             fold_expression_0(FileName, Candidates, FunClauseDef, Cmd, Editor, SearchPaths, TabWidth);
  -         {error, _Reason} ->
  -	     throw({error, "The specified funcion clause does not exist!"})
  +    fold_expr_by_name_1(FileName, list_to_atom(ModName), list_to_atom(FunName), Arity,
  +		        ClauseIndex, SearchPaths, eclipse, TabWidth).
  +
  +fold_expr_by_name_1(FileName, ModName, FunName, Arity, ClauseIndex, SearchPaths, Editor, TabWidth) ->
  +    Cmd = "CMD: " ++ atom_to_list(?MODULE) ++ ":fold_expression(" ++ "\"" ++
  +        FileName ++ "\", " ++ atom_to_list(ModName) ++ ", " ++ atom_to_list(FunName) ++
  +        ", " ++ integer_to_list(Arity) ++ ", " ++ integer_to_list(ClauseIndex) ++ ", ["
  +        ++ wrangler_misc:format_search_paths(SearchPaths) ++ "]," ++ integer_to_list(TabWidth) ++ ").",
  +    {ok, {AnnAST, Info}} = wrangler_ast_server:parse_annotate_file(FileName, true, SearchPaths, TabWidth),
  +    {value, {module, CurrentModName}} = lists:keysearch(module, 1, Info),
  +    FileName1 = get_file_name(ModName, SearchPaths),
  +    {ok, {AnnAST1, _Info1}} = wrangler_ast_server:parse_annotate_file(FileName1, true, SearchPaths, TabWidth),
  +    case get_fun_clause_def(AnnAST1, FunName, Arity, ClauseIndex) of
  +        {ok, {Mod, _FunName, _Arity, FunClauseDef}} ->
  +            side_condition_analysis(FunClauseDef),
  +            Candidates = search_candidate_exprs(AnnAST, {Mod, CurrentModName}, FunName, FunClauseDef),
  +            fold_expression_0(FileName, Candidates, FunClauseDef, Cmd, Editor, SearchPaths, TabWidth);
  +        {error, _Reason} ->
  +            throw({error, "The specified funcion clause does not exist!"})
        end.
   
   get_file_name(ModName, SearchPaths) ->
  
positive.code: 					      AnnAST, {Body, Cand}),
      fold_expression_1_eclipse_1(AnnAST1, Body, Tail).
  
  do_fold_expression(FileName, CandidatesToFold, SearchPaths, TabWidth, LogMsg) ->
      {ok, {AnnAST, _Info}} = wrangler_ast_server:parse_annotate_file(FileName, true, SearchPaths, TabWidth),
      AnnAST1 = fold_expression_1_1(AnnAST, CandidatesToFold),
      wrangler_write_file:write_refactored_files_for_preview([{{FileName, FileName}, AnnAST1}], TabWidth, LogMsg),
      {ok, [FileName]}.
  
  fold_expression_1_1(AnnAST, []) ->
  
negative.code: 			    " following Wrangler's SearchPaths!"});
  	[FileName] -> FileName;
  	_ -> throw({error, "Wrangler found more than one file defining the module, " ++ atom_to_list(ModName)
                      ++ ", folloing the SearchPaths  specified!"})
      end.
  
  %%-spec(fold_expr_1_eclipse/5::(filename(), syntaxTree(),
  