From 48920125e59f3a453ec83573c657e96877cf54e0 Mon Sep 17 00:00:00 2001 From: Hamed Date: Mon, 11 Aug 2025 00:22:07 +0330 Subject: [PATCH] fixed the config.py file and the running on startup function --- .gitignore | 1 + config&run.bat | 3 +-- config.json | 4 ++++ run.bat | 10 +++------- src/config.py | 10 +++++++--- src/main.pyw | 2 +- src/startup.py | 1 + 7 files changed, 18 insertions(+), 13 deletions(-) create mode 100644 config.json diff --git a/.gitignore b/.gitignore index 7b1819b..f076bdd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ .vscode/settings.json shortcut.txt src/__pycache__/config.cpython-313.pyc +src/__pycache__/startup.cpython-313.pyc diff --git a/config&run.bat b/config&run.bat index 2e00b21..d21be38 100644 --- a/config&run.bat +++ b/config&run.bat @@ -1,6 +1,5 @@ @echo off -REM run.bat -REM Activates the virtual environment and runs your main Python script. +cd /d "%~dp0" REM Activate the virtual environment call venv\Scripts\activate.bat diff --git a/config.json b/config.json new file mode 100644 index 0000000..9632656 --- /dev/null +++ b/config.json @@ -0,0 +1,4 @@ +{ + "run_on_startup": true, + "shortcut": "ctrl+shift+B" +} \ No newline at end of file diff --git a/run.bat b/run.bat index f159447..fc8ffbf 100644 --- a/run.bat +++ b/run.bat @@ -1,11 +1,7 @@ @echo off -REM run.bat -REM Activates the virtual environment and runs your main Python script. +cd /d "%~dp0" -REM Activate the virtual environment call venv\Scripts\activate.bat +echo Starting the application... -REM Run your main Python script (replace main.py with your script name if different) -start "OopsWrongLang" /B pythonw src\main.pyw -echo application is running in the background. you can close this window. -pause \ No newline at end of file +start "OopsWrongLang" /B pythonw src\main.pyw \ No newline at end of file diff --git a/src/config.py b/src/config.py index e9da6d1..71adc06 100644 --- a/src/config.py +++ b/src/config.py @@ -2,6 +2,7 @@ import os import json import keyboard import time +import msvcrt CONFIG_FILE = "config.json" SHORTCUT_FILE = "shortcut.txt" # For migrating old config @@ -66,7 +67,11 @@ if __name__ == "__main__": print("Please press the key combination you want to use as a shortcut and then press ESC.") new_shortcut = keyboard.read_hotkey(suppress=False) print(f"You pressed: {new_shortcut}") - time.sleep(0.5) + time.sleep(0.01) + # Clear the input buffer + while msvcrt.kbhit(): + msvcrt.getch() + confirm = input("Is this correct? (y/n): ").lower() if confirm.lower() == 'y': config['shortcut'] = new_shortcut @@ -77,6 +82,5 @@ if __name__ == "__main__": print("Let's try again.") else: print("No changes made to the shortcut.") - - print("Exiting without changes.") + print("Exiting without changes.") input("Press Enter to exit.") diff --git a/src/main.pyw b/src/main.pyw index 5d02414..d56cd1c 100644 --- a/src/main.pyw +++ b/src/main.pyw @@ -161,7 +161,7 @@ def main(): # Register the keyboard shortcut shortcut = get_shortcut() - keyboard.add_hotkey(shortcut, on_shortcut) + keyboard.add_hotkey(shortcut, on_shortcut, suppress=True) print(f"Press {shortcut} to convert text to Persian.") # Keep the script running diff --git a/src/startup.py b/src/startup.py index 9e66093..c77f124 100644 --- a/src/startup.py +++ b/src/startup.py @@ -11,6 +11,7 @@ def add_to_startup(): try: key = winreg.HKEY_CURRENT_USER sub_key = r"Software\Microsoft\Windows\CurrentVersion\Run" + print(f'bat file path: {RUN_BAT_PATH}') with winreg.OpenKey(key, sub_key, 0, winreg.KEY_SET_VALUE) as registry_key: winreg.SetValueEx(registry_key, APP_NAME, 0, winreg.REG_SZ, f'"{RUN_BAT_PATH}"') except OSError as e: