2025-01-12 19:54:41 -06:00

43 lines
1020 B
Python

import re
import subprocess
from utils import (
colors,
status_indicators,
)
BASH_PATH: str = fr"{colors.CYAN}{colors.BOLD}\w"
POINTER: str = f"{colors.YELLOW}-> {colors.RESET}"
def prompt() -> None:
git_status: subprocess.CompletedProcess[str] = subprocess.run(
['git', 'status'],
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
text=True,
)
if not git_status.stderr.strip():
git_branch: str = re.findall( r'([a-zA-Z0-9-\/()]+)', git_status.stdout.strip())[2]
for key in status_indicators.keys():
if key in git_status.stdout.strip():
color: str = status_indicators[key]['color']
icon: str = status_indicators[key]['icon']
git_branch_color: str = f"{color}({git_branch}{icon})"
print(f"{BASH_PATH} {git_branch_color} {POINTER}")
exit(0)
print(f"{BASH_PATH} {POINTER}")
exit(0)
def main():
prompt()
if __name__ == '__main__':
main()