| import argparse | |
| from datetime import datetime | |
| from tools.storage import Storage | |
| storage = Storage() | |
| def add_entry(): | |
| print("Введите вашу запись (завершите пустой строкой):") | |
| lines = [] | |
| try: | |
| while True: | |
| line = input() | |
| if line.strip() == "": | |
| break | |
| lines.append(line) | |
| except KeyboardInterrupt: | |
| print("\n[⚠️] Ввод прерван.") | |
| return | |
| text = "\n".join(lines).strip() | |
| if text: | |
| storage.write_note(text, tags=[]) | |
| print("[💾] Запись сохранена в блокнот.") | |
| else: | |
| print("[⚠️] Пустая запись не сохранена.") | |
| def list_entries(limit=10): | |
| notes = storage.read_notes(limit=limit) | |
| for note in notes: | |
| note_id, text, tags, source, read, timestamp = note | |
| title = text.split("\n")[0] | |
| print(f"[{timestamp}] ({source}) {title}") | |
| def main(): | |
| parser = argparse.ArgumentParser(description="Интерфейс пользователя для записи мыслей") | |
| parser.add_argument("--list", action="store_true", help="Показать последние записи") | |
| parser.add_argument("--limit", type=int, default=10, help="Сколько записей показать при --list") | |
| args = parser.parse_args() | |
| if args.list: | |
| list_entries(limit=args.limit) | |
| else: | |
| add_entry() | |
| if __name__ == "__main__": | |
| main() | |