The last week was a bit chaotic. Our dog Triss had TPLO surgery, so my days mostly consisted of holding her paw in the morning, working while Jean holds her paw, and then going to sleep. But I could sneak some fun project time in and started implementing autocomplete in my shell. Which is not even remotely complete, but it works for paths, which is something.
Do you ever think about what exactly happens when you press the cursor left or arrow left key in a terminal? What happens when you press arrow up? What when you press the letter "e"? Well, raw mode in a terminal will make you think about all of this and much more. In the famous words of any Souls game: "beware, despair ahead".
Remember how six months ago we made fun of most companies during their CES keynote by counting how often the word AI was used? Want to play the same game with Apples WWDC keynote? I would strongly advise against making it a drinking game though, the alcohol poisoning would land you in a hospital.
Only calling os.Exec over and over again is not what I envisioned when I started building my own shell. So, in the spirit of first things first, I implemented a few of the commands I use on a daily basis to make the shell actually usable. This makes the whole thing immediately feel a bit more real and also provides some good learning opportunities.
I needed something light and simple to take my mind of work, side projects and have a break from dealing with AI all day long. So what is more logical than starting to build your own shell. Totally makes sense, right? Right?! I am not exactly sure where this will go, but I got a few ideas of what I am missing from most shells.