anchor.diff:      function OnKeyPress( ch : char ) : boolean; override;
       procedure Draw; override;
     public { cursor movement commands }
  -    procedure arrowup;
  -    procedure arrowdown;
  -    procedure home;
  -    procedure _end;
  -    procedure pageup;
  -    procedure pagedown;
  +    procedure PrevLine;
  +    procedure NextLine;
  +    procedure ToTop;
  +    procedure ToEnd;
  +    procedure PrevPage;
  +    procedure NextPage;
     public { line manipulation commands }
  -    procedure newline;
  -    procedure delete;
  +    procedure Newline;
  +    procedure DeleteNextChar;
     private { misc internal methods }
       procedure updateCamera;
       procedure grabLine;
  
positive.code:   public { basic interface }
      constructor Create;
      function Load( path : string ) : boolean;
      function Save_as( path : string ) : boolean;
      function Save : boolean;
      procedure Init;
      function Done : boolean;
  
negative.code:     message := filename + ' saved.';
    end;
  
  function TEditor.SaveAs( path : string ) : boolean;
    var oldname : string;
    begin
      oldname := self.filename;
      self.filename := path;
      result := self.Save;
      if not result then self.filename := oldname
    end;
  
  