aboutsummaryrefslogtreecommitdiffstats
path: root/manage_translations.py
diff options
context:
space:
mode:
Diffstat (limited to 'manage_translations.py')
-rw-r--r--manage_translations.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/manage_translations.py b/manage_translations.py
index ce1e160..6d0c843 100644
--- a/manage_translations.py
+++ b/manage_translations.py
@@ -12,10 +12,28 @@ import sys
import os
import subprocess
+# Ensure we use the Python from the virtual environment if available
+if hasattr(sys, 'real_prefix') or (hasattr(sys, 'base_prefix') and sys.base_prefix != sys.prefix):
+ # Already in venv
+ pass
+else:
+ # Try to activate venv
+ venv_path = os.path.join(os.path.dirname(os.path.dirname(os.path.abspath(__file__))), 'venv')
+ if os.path.exists(venv_path):
+ venv_bin = os.path.join(venv_path, 'bin')
+ if os.path.exists(venv_bin):
+ os.environ['PATH'] = venv_bin + os.pathsep + os.environ['PATH']
+
def run_command(cmd):
"""Run a shell command and print output"""
print(f"Running: {' '.join(cmd)}")
+ # Use the pybabel from the same directory as our Python executable
+ if cmd[0] == 'pybabel':
+ import os
+ pybabel_path = os.path.join(os.path.dirname(sys.executable), 'pybabel')
+ if os.path.exists(pybabel_path):
+ cmd = [pybabel_path] + cmd[1:]
result = subprocess.run(cmd, capture_output=True, text=True)
if result.stdout:
print(result.stdout)