anchor.diff:  %% - ^d in posix/icanon mode: eof, delete-forward in edlin
   %% - ^r in posix/icanon mode: reprint (silly in echo-off mode :-))
   %% - ^w in posix/icanon mode: word-erase (produces a beep in edlin)
  +edit_line(eof, []) ->
  +    eof;
   edit_line(eof, Chars) ->
  -    {Chars,done};
  +    {Chars,eof};
   edit_line([],Chars) ->
       {Chars,[]};
   edit_line([$\r,$\n|Cs],Chars) ->
  
positive.code: 	{'EXIT',Shell,R} ->
  	    exit(R)
      end;
  get_line_echo_off1({Chars,Rest}, _Drv, _Shell) ->
      {done,lists:reverse(Chars),case Rest of done -> []; _ -> Rest end}.
  
  
negative.code: 
  get_chars_apply(Pbs, M, F, Xa, Drv, Shell, Buf, State0, Line, Encoding) ->
      case catch M:F(State0, cast(Line,get(read_mode), Encoding), Encoding, Xa) of
          {stop,Result,eof} ->
              {ok,Result,eof};
          {stop,Result,Rest} ->
              {ok,Result,append(Rest, Buf, Encoding)};
          {'EXIT',_} ->
  