needs more html maybe
Dear Nibby, this not a bug per se, but I wonder if you have considered building a web-page to represent Lish. Something with the basic things, e.g.
- Lish is a ...
- Mind blowing examples
- Distinguishing features
- Getting started
- Contributing, maybe community
I got a chance to re-eval my workflow and went looking for something better than bash. I tried all sorts of stuff starting with zsh, nushell, oil/osh, even powsershell on a macOS and was thinking I'd have to settle for elvish its bespoke interpreter in uh Golang, but I've been living in Lish now for several weeks and I think there's no doubt: you have a really cool, unique project that totally deserves at least some kind of landing/promotional page. Lish is totally up there with those new-wave shells, and of course even beyond because it sits on Common Lisp – like compiled code, standard language wtf? omg?! etc.
I would normally start something and create PR but wanted to check first since it's kind of an undertaking. I can't design a page, but I can totally copy and paste from the best :-) so I am volunteering to get something going at least. Perhaps GitHub pages? Maybe there's a cool static site generator for Lisp...
Anyway what do you think?
Thanks for your enthusiasm. I haven't publicized it because even though it has many advanced features, it doesn't yet do what is expected of even the simplest Unix shell. Even though it looks like it can do pipelines, job control, backgrounding, threads, etc. there are big problems. An example that's particularly bad is: ls -l | less doesn't work at all. And /bin/date | /bin/sed -e (dlib:s+ "s/2022/" (format nil "~@r" 2022) "/") doesn't wait properly. Although I run patched version that doesn't have that problem, the patch has other bad consequences.
Another thing I need to majorly fix is the command parser and completion. I intend to make it a fully general parser, which is extended by command definition, and have the completion use then generated parsers. Although I intend to keep in compatible with the current way, I can't be sure that it will. There are many other issues, but these two things comprise much of the core functionality, which needs to be majorly reworked.
Since for people who care about a shell, it's usually an all or nothing thing. Either it does enough to be used as a shell, or it doesn't. As you may know, switching shells, especially with different syntax, can be a bit of work. I wouldn't want to present it as usable as shell, only to have someone realize it's not viable. I've been using it for years, but I know that I step over the many pitfalls, which would likely stop most people.
But it could be reasonable to use if you consider it as a Lisp REPL that works well in a terminal, and can handle many shell commands.
Given that, I do have a many examples of use, customization, prompts, commands, etc. that might be interesting to share. Perhaps I can write something for the intrepid explorers, that will hopefully be useful as future documentation.