anchor.diff:  -define(NOUSER, undefined).
   
   -define(NOHOOK, none).
  +
  +-define(TabWidth, 8).
   
   -record(ctxt,
   	{prec = 0,sub_indent = 2,break_indent = 4,
   	 clause = undefined,hook = ?NOHOOK,paper = ?PAPER,
   	 ribbon = ?RIBBON,user = ?NOUSER,
   	 tokens = [],
  +	 tabwidth=?TabWidth,
   	 format = unknown}).
  +
   
   %% Start of added by HL
   %% ====================================================================
   %% user-program guided pretty-printing of an abstract syntax tree which
   %% must be a form list.
  -print_ast(FileFmt, AST) -> 
  -    print_ast(FileFmt, AST,[]).
  -
  -print_ast(FileFmt, AST,Options) ->
  +
  +print_ast(FileFmt,AST) ->
  +    print_ast(FileFmt,AST, 8).
  +
  +print_ast(FileFmt, AST, TabWidth) ->
  +    print_ast(FileFmt, AST, [], TabWidth).
  +
  +print_ast(FileFmt, AST, Options, TabWidth) ->
       Fs = refac_syntax:form_list_elements(AST),
  -    vertical_concat(Fs, FileFmt, Options).
  +    vertical_concat(Fs, FileFmt, Options, TabWidth).
    
   print_form(F,Ctxt,Fun) ->
       {Paper,Ribbon} = get_paper_ribbon_width(F),
       best(Fun(F,Ctxt),Paper,Ribbon).
  - 
  -no_of_changed_funs(AST) ->
  -    Forms = refac_syntax:form_list_elements(AST),
  -    Res =[case form_not_changed(Form) of 
  -	      true -> 0;
  -	      false -> 1
  -	  end || Form <-Forms],
  -    lists:sum(Res).
  -
  -
  -vertical_concat(Forms, FileFmt, Options) -> 
  -    vertical_concat(Forms, FileFmt, Options,"").
  -
  -vertical_concat([], _FileFormat, _Options, Acc) -> 
  +
  +vertical_concat(Forms, FileFmt, Options, TabWidth) ->
  +    vertical_concat(Forms, FileFmt, Options, "", TabWidth).
  +
  +vertical_concat([], _FileFormat, _Options, Acc, _TabWidth) ->
       Acc;
  -vertical_concat([Form|T], FileFormat, Options, Acc) ->
  +vertical_concat([Form| T], FileFormat, Options, Acc, TabWidth) ->
       UseOriginalCode = form_not_changed(Form),
       Delimitor = case FileFormat of
   		    dos -> "\r\n";
  
positive.code: 		    false
  	    end
      end.
  
negative.code: 		_ ->
  		    try 
  			Str = refac_util:concat_toks(Toks),
  			{ok, Toks1, _} = refac_scan:string(Str, {1,1}, ?TabWidth, 'unix'),
  			OriginalForm = refac_epp_dodger:normal_parser(Toks1, []),
  			
  			NewStr = format(Form, []),
  			{ok, Toks2, _} = refac_scan:string(NewStr, {1,1}, ?TabWidth, 'unix'),
  			NewForm = refac_epp_dodger:normal_parser(Toks2, []),
  			best(OriginalForm) == best(NewForm)
  		    of
  