import curses from mvc.views import CursesAdapter from mvc.models import VimModel class EditController: def __init__(self, model: VimModel, view: CursesAdapter): self.model = model self.view = view def HandleInput(self, symbolCode): """Обработка ввода пользователя""" match symbolCode: case 27: return False # escape case curses.KEY_LEFT: self.model.MoveLeft() case curses.KEY_RIGHT: self.model.MoveRight() case curses.KEY_UP: self.model.MoveUp() case curses.KEY_DOWN: self.model.MoveDown() case 127 | 8: self.model.Backspace() case 10: self.model.Enter() case 19: self.model.SaveFile() case _: self.model.InsertSymbol(symbolCode) self.model.Scroll(self.view.lines, self.view.cols) return True