anchor.diff:    MapItem: TATKeymapItem;
     StrId: string;
     NKeyIndex: integer;
  -  iCmd, iMap: integer;
  +  iCmd: integer;
   begin
     Result:= 0;
   
  
positive.code:     if AOverwriteAndSave then
      begin
        //clear item in ALL existing keymaps
        Keymap_ClearKey(AppKeymapMain, iCmd, NKeyIndex);
  
        for iMap:= 0 to AppKeymapLexers.Count-1 do
          Keymap_ClearKey(
            TATKeymap(AppKeymapLexers.Objects[iMap]),
            iCmd, NKeyIndex);
  
        StrId:= DoOps_CommandCode_To_HotkeyStringId(MapItem.Command);
  
  
negative.code:           Keys2.Clear;
  end;
  
  procedure Keymap_ClearKeyInAll(AItemIndex, AKeyIndex: integer);
  var
    iMap: integer;
  begin
    Keymap_ClearKey(AppKeymapMain, AItemIndex, AKeyIndex);
  
    for iMap:= 0 to AppKeymapLexers.Count-1 do
      Keymap_ClearKey(
        TATKeymap(AppKeymapLexers.Objects[iMap]),
        AItemIndex, AKeyIndex);
  end;
  
  function Keymap_CheckDuplicateForCommand(
    AKeymapItem: TATKeymapItem;
    const ALexerName: string;
  