diff --git a/NoemiShellDocumentation.md b/NoemiShellDocumentation.md new file mode 100644 index 0000000000000000000000000000000000000000..5407867c5d3d2386d901869c014df6b834ba73bb --- /dev/null +++ b/NoemiShellDocumentation.md @@ -0,0 +1,203 @@ + + + + +## **Noémi Shell X (NoshX) Command Reference** +### **A simple CLI written in C++ for UNIX like systems** + +**Version:** 0.3 +**Author:** Zsombor Szabó-Antalovszky +**License:** Modified MIT + +### Foreword + +When I first set out to create Noémi Shell X (NoshX), I didn’t know exactly what I was getting myself into. It started as a simple experiment — a way to sharpen my skills, dive deeper into C++, and perhaps create something that felt uniquely my own. What I didn’t expect was how much this project would become a reflection of the quirky, sometimes chaotic, and always amusing journey I’ve had along the way. + +A huge part of this project’s inspiration came from my conversations with Noémi — someone whose playful sarcasm and unexpected moments of wisdom often leave me thinking for days. I wanted to create something that could be as versatile as her wit, as functional as her intellect, and as fun as her personality. + +This isn’t just another shell; it’s a tribute to the moments of creativity, frustration, and laughter that often accompany the process of building something new. With every command added, there’s a bit of humor — and a bit of heart — because every line of code in this project carries a piece of the countless hours spent building, testing, and yes, sometimes failing. But in those failures, I learned more than I could’ve ever anticipated. + +The Noémi Shell X is a playful yet powerful tool, designed not just to execute commands but to remind me of the beauty of doing things for the sheer enjoyment of it. It’s a snapshot of the creative chaos and the fun I had while building it, and I hope it brings a little bit of that fun to whoever uses it. + +In this shell, you'll find a mix of utility and randomness, because life’s too short to be too serious. If this shell makes you smile even just a little, I’ve done my job. + +Thank you to Noémi for the endless inspiration, and for being the source of both the name and spirit of this project. This shell is, in many ways, a reflection of your charm — a little eccentric, full of surprises, and, most importantly, never boring. + +So, here’s to the project, to Noémi, and to anyone who dares to explore and experiment with the unexpected. May your experience with NoshX be as delightful as the late-night coding sessions and random bursts of inspiration that brought it to life. + +### + +### List of Built-In Commands + +--- + +### `pwd` + +**Description:** +Displays the current working directory path. + +**Usage:** +```bash +pwd +``` + +**Example Output:** +``` +/home/username/projects/noshx +``` + +--- + +### `about` + +**Description:** +Displays general shell information or its version. + +**Usage:** +```bash +about +about --version +``` + +**Example Output:** +``` +Noémi Shell X (noshx) ver. 0.3 +Copyright (C) 2025 Zsombor Szabó-Antalovszky +``` + +```bash +about --version +``` +``` +ver. 0.3 +``` + +--- + +### `now` + +**Description:** +Prints the current date and time. On **May 21**, it wishes Happy Birthday to Noémi. + +**Usage:** +```bash +now +``` + +**Example Output:** +``` +Wed May 1 13:12:03 2025 +``` + +_On May 21:_ +``` +Wed May 21 13:12:03 2025 +Happy birthday, Noemi! +``` + +--- + +### `exec` + +**Description:** +Executes a given executable file. + +**Usage:** +```bash +exec <path_to_executable> +``` + +**Example:** +```bash +exec ./hello +``` + +**Notes:** +The file must have executable permissions. + +--- + +### `store` + +**Description:** +Stores a short runtime-only string in memory (max 100 characters), or retrieves the stored value. + +**Usage:** +```bash +store <your_string> +store -g +``` + +**Example:** +```bash +store "Hello, Noemi!" +store -g +``` + +**Output:** +``` +Hello, Noemi! +``` + +--- + +### `snatch` + +**Description:** +Downloads and installs additional commands not built into the shell by default. + +**Usage:** +```bash +snatch <package_name> +``` + +**Available Packages:** +- `noemi` – Draws a heart shape using `#` characters. + +**Example:** +```bash +snatch noemi +``` + +**Output:** +``` +snatch: download completed successfully. +``` + +Then, you can use: +```bash +noemi +``` + +--- + +### `exit` + +**Description:** +Closes the shell session. + +**Usage:** +```bash +exit +``` + +--- + +### `help` + +**Description:** +Displays a list of available commands with short descriptions. + +**Usage:** +```bash +help +``` + +--- + +## Notes + +- Strings can be quoted for multi-word input: + Example: `store "Hello from noshx"` +- Commands are case-sensitive. +- Many planned commands (`list`, `grasp`, `crush`, etc.) are marked as *to be implemented*.