Скрипт за ежедневни бележки

Създател на ежедневни бележки

Това е прост скрипт на Python, който предоставя графичен потребителски интерфейс (GUI) за създаване на ежедневни бележки. Скриптът ви позволява да посочите заглавие, да изберете формат (txt, sh или py) и да въведете съдържанието на бележката. След това бележката се записва в папка по ваш избор.

Предпоставки

Трябва да имате инсталиран Python на вашата система. Скриптът използва библиотеката tkinter за създаване на GUI.

Как да започнете

Трябва да започнете със създаване на нов файл с разширение ".py". Отворете любимият си тестов редактор и добавете следният код:

import tkinter as tk
from tkinter import filedialog
from datetime import datetime
import os

paste_done = False  # Инициализация на булевата променлива

def create_note():
    global paste_done  # Обявяване на глобалната променлива

    note_title = title_entry.get()
    note_format = format_var.get()

    if not note_title:
        status_label.config(text="Въведете заглавие на бележката", fg="red")
        return

    current_time = datetime.now().strftime("%d-%m-%Y_%H-%M-%S")
    note_name = f"{note_title}.{note_format}"
    
    # Избиране на папка за съхранение на бележките
    folder_path = filedialog.askdirectory()
    if not folder_path:
        status_label.config(text="Изберете папка за съхранение на бележките", fg="red")
        return

    note_path = os.path.join(folder_path, note_name)
    
    if note_path:
        if not paste_done:  # Проверка дали текстът е поставен преди
            note_content = note_text.get("1.0", tk.END)
            paste_done = True  # Отбелязване, че текстът е поставен

        with open(note_path, 'w', encoding='utf-8') as file:
            file.write(f"Заглавие: {note_title}\nДата и час: {current_time}\n\n")
            file.write("Съдържание:\n")
            file.write(note_content)

        status_label.config(text=f"Бележката е създадена: {note_path}", fg="green")
        note_text.delete("1.0", tk.END)  # Изчистване на съдържанието на текстовото поле
        title_entry.delete(0, tk.END)  # Изчистване на съдържанието на полето за заглавие
        paste_done = False  # Нулиране на булевата променлива след създаване на бележката

    else:
        status_label.config(text="Бележката не беше създадена.", fg="red")

# Създаване на главното приложение
root = tk.Tk()
root.title("Създаване на бележка")

# Добавяне на елементи в интерфейса
title_label = tk.Label(root, text="Заглавие на бележката:")
title_label.pack()

title_entry = tk.Entry(root)
title_entry.pack()

format_label = tk.Label(root, text="Изберете формат:")
format_label.pack()

format_var = tk.StringVar()
format_var.set("txt")
format_radio_txt = tk.Radiobutton(root, text="txt", variable=format_var, value="txt")
format_radio_sh = tk.Radiobutton(root, text="sh", variable=format_var, value="sh")
format_radio_py = tk.Radiobutton(root, text="py", variable=format_var, value="py")
format_radio_txt.pack()
format_radio_sh.pack()
format_radio_py.pack()

content_label = tk.Label(root, text="Съдържание на бележката:")
content_label.pack()

# Увеличаване на размера на полето за писане
note_text = tk.Text(root, height=20, width=75)
note_text.configure(font=("Helvetica", 14))  # Променете шрифта и размера според нуждите си
note_text.pack()

# Добавяне на функционалност за поставяне (поставяне от буфера на обмен) на текст
note_text.bind("<Control-v>", lambda e: note_text.event_generate("<<Paste>>"))

create_button = tk.Button(root, text="Създай бележка", command=create_note)
create_button.pack()

status_label = tk.Label(root, text="", fg="black")
status_label.pack()

root.mainloop()

Запазете го и му дайте име, примерно: create-note.py

Отворете терминал или команден ред и отидете до папката, съдържаща скрипта.

Стартирайте скрипта, като изпълните следната команда:

python create_note.py

Ще се отвори прозорецът на GUI. Попълнете заглавието на бележката, изберете формата и въведете съдържанието на бележката в предоставеното текстово поле.

Кликнете върху бутона „Създаване на бележка“. Ще се появи диалогов прозорец за файл, който ви позволява да изберете папка, в която да запазите бележката.

След като изберете папката и запишете бележката, етикетът за състояние ще покаже дали бележката е създадена успешно или не.

Може да ви е по лесно да използвате github .

Благодарим ви за прочитането на статията! Ако намерихте информацията за полезна, можете да дарите посредством бутоните по-долу: