w filename - запись в filename

master
serr 2025-02-05 01:23:06 +03:00
parent cffa12f07e
commit 06f2e59dd3
1 changed files with 11 additions and 4 deletions

View File

@ -145,6 +145,9 @@ class VimModel:
filename = cmd[2:] filename = cmd[2:]
self.LoadFile(filename) self.LoadFile(filename)
return ReturnCode.SET_BASIC_MODE return ReturnCode.SET_BASIC_MODE
elif len(cmd) > 2 and cmd[:2] == 'w ':
filename = cmd[2:]
self.WriteFile(filename)
return ReturnCode.GOOD return ReturnCode.GOOD
@ -220,14 +223,18 @@ class VimModel:
self.displayBuffer = [] self.displayBuffer = []
def SaveFile(self) -> None: def SaveFile(self) -> None:
"""Сохранение файла""" """Сохранение текущего файла"""
self.WriteFile(self.file_path)
def WriteFile(self, file_path) -> None:
"""Запись в файл по указанному пути"""
try: try:
with open(self.file_path, "w") as file: with open(file_path, "w") as file:
for line in self.displayBuffer: for line in self.displayBuffer:
file.write(''.join(line) + '\n') file.write(''.join(line) + '\n')
print(f"File {self.file_path} saved successfully.") print(f"In file {file_path} written successfully.")
except Exception as e: except Exception as e:
print(f"Error saving file: {str(e)}") print(f"Error writing file: {str(e)}")
def Reset(self) -> None: def Reset(self) -> None:
self.displayBuffer = [] self.displayBuffer = []