anchor.diff:  	integer -> text(refac_syntax:integer_literal(Node));
   	float ->
   	    text(tidy_float(refac_syntax:float_literal(Node)));
  +	text -> text(refac_syntax:text_string(Node));
   	char ->
   	    V = refac_syntax:char_value(Node),
   	   case is_integer(V) and (V > 127) of
  
positive.code:     lay_elems_1(Fun, Ts, [[D]], ELn);
  lay_elems_1(Fun, [{D, {SLn, ELn}}| Ts], [H| T], LastLn) ->
      case SLn == 0 orelse LastLn == 0 orelse SLn < LastLn of
  	true -> lay_elems_1(Fun, Ts, [[D], H| T], ELn);
  	false ->
  	    case SLn - LastLn of
  		0 -> lay_elems_1(Fun, Ts, [H ++ [D]| T], ELn);
  
negative.code: lay_clauses(Cs,Type,Ctxt) ->   %%done.
      CsDocs = seq(Cs,floating(text(";")),
  		 Ctxt#ctxt{clause = Type},fun lay/2),
      lay_body_elems(fun vertical/1, CsDocs, Cs).
  
  %% Note that for the clause-making functions, the guard argument
  %% can be `none', which has different interpretations in different
  