did some shi and finished two commands and a basic structure

This commit is contained in:
2026-04-23 14:29:15 -04:00
parent d73863a2b8
commit 74abef1b9f
9 changed files with 80 additions and 0 deletions

5
.gitignore vendored Normal file
View File

@@ -0,0 +1,5 @@
# Ignore every __pycache__ folder regardless of where it is
**/__pycache__/
# Ignore all compiled python files
*.pyc

50
bugpy-mos-0.py Normal file
View File

@@ -0,0 +1,50 @@
# BUGS-Python Mock Operating System Version 0 "Devvie"
from scripts.list_files import list_files
from scripts.say_greeting import say_greeting
from pathlib import Path
# Shitty test
# list_files.main()
def get_config_line(keyword):
# 1. Find the project root relative to this script
# Adjust the number of .parent calls based on where this function lives!
# If this is in main.py, it's just Path(__file__).parent
base_dir = Path(__file__).resolve().parent
config_file = base_dir / "config" / "pointerfile.txt"
if not config_file.exists():
return f"Error: {config_file} not found."
# 2. Open and search
with config_file.open("r") as f:
for line in f:
# .strip() removes whitespace/newlines
if line.strip().startswith(keyword):
parsed = line.strip().split(": ")
return [parsed[0], parsed[1]]
return None # Return None if keyword isn't found
def match_command(command):
if command == "list_files":
list_files.main()
elif command == "say_greeting":
say_greeting.main()
# use if else if else if else if to match the output
def cmdrun(keyword):
get_config_result = get_config_line(keyword)
if not get_config_result == None:
match_command(get_config_result[1])
else:
return False
print(get_config_line("dir"))
if __name__ == "__main__":
print("BUGPy-mOS 0 \"Devvie\"")
while True:
inputs = input("BUGS > ")
cmdrun(inputs)

8
config/pointerfile.txt Normal file
View File

@@ -0,0 +1,8 @@
dir: list_files
ls: list_files
list_files: list_files
hi: say_greeting
hello: say_greeting
greeting: say_greeting
greetings: say_greeting
say_greeting: say_greeting

0
scripts/__init__.py Normal file
View File

View File

View File

View File

@@ -0,0 +1,15 @@
from pathlib import Path
def main():
# Set the directory path
script_dir = Path(__file__).resolve().parent
dir_path = Path("")
# Use the current script's directory or specify a path
base_path = Path(__file__).resolve().parent
for entry in dir_path.iterdir():
if entry.is_dir():
print(f"[FOLDER] {entry.name}")
elif entry.is_file():
print(f"[FILE] {entry.name}")

View File

View File

@@ -0,0 +1,2 @@
def main():
print("Hi!")