class VimModel: def __init__(self): self.displayBuffer = [] # буфер для хранения всех строк self.currentLine = 0 # текущий индекс строки self.currentCol = 0 # текущий индекс колонки self.scrollY = 0 # вертикальная прокрутка self.scrollX = 0 # горизонтальная прокрутка self.file_path = "" # путь к файлу def load_file(self, file_path): """Загрузка файла для редактирования""" self.file_path = file_path try: with open(file_path, "r") as file: self.displayBuffer = [list(line.rstrip('\n')) for line in file.readlines()] except FileNotFoundError: print(f"File {file_path} not found. Starting with empty buffer.") self.displayBuffer = [] def save_file(self): """Сохранение файла""" try: with open(self.file_path, "w") as file: for line in self.displayBuffer: file.write(''.join(line) + '\n') return True except Exception as e: return str(e)