diff --git a/versions/metatable-be-gone/404.html b/versions/metatable-be-gone/404.html new file mode 100644 index 0000000..2cabcd4 --- /dev/null +++ b/versions/metatable-be-gone/404.html @@ -0,0 +1,4 @@ +
Happy birthday Hilbish! As of last month, Hilbish is now 2 years old. +Unfortunately I missed the official date, but I will still make a more +focused post on the date (19st).
I decided to fix up this website and Hilbish’s logo, so that can +be thought of as something for the 2 years milestone?
Hilbish’s old logo was.. not that good. It definitely functioned +as a logo, but the yellow part of it looked ugly (sorry old logo).
You would have definitely seen the new logo, since it is currently +in use on the navigation bar and footer. Here it is in a bigger view:
Ever since this website was first made, from the release of v2.0, it has +been doing it’s job of being a website good enough, but there were a few issues.
Padding is very important! The edges of your screen need space to do nothing, +after all. On mobile or screens small enough, there would not be enough space +for the auto margin to fill, and since there was no padding besides that, +it means things would look a bit cramped. This was simple to fix.
Here it is before:
and after:
On the docs page, the pages are on the left on desktop. Since +phones are too small to have this content on the side, it stays at the top. +This is a bit counter intuitive since it brings in extra scrolling +when navigating to every page for docs and just doesn’t look that good.
A few months ago I made it collapse with the site wide navigation, but it +was not hidden by default. So a few improvements were made:
Here’s a before:
and after:
Looks a lot better now.
If you haven’t noticed, I have made other changes to the website. +This includes:
The release with full changelogs and prebuilt binaries can be seen at the v2.2.0 tag. +Welcome to a very long awaited release of Hilbish, and on Christmas. Just think of it as a long preparing, late Christmas gift. :) This release does not contain a whole lot of changes, but it is a new release with enhancements and bug fixes! +Documentation As is a trend, the documentation has been improved by ONE HUNDRED TIMES.
Happy birthday Hilbish! As of last month, Hilbish is now 2 years old. Unfortunately I missed the official date, but I will still make a more focused post on the date (19st). +I decided to fix up this website and Hilbish’s logo, so that can be thought of as something for the 2 years milestone? +Logo Hilbish’s old logo was.. not that good. It definitely functioned as a logo, but the yellow part of it looked ugly (sorry old logo).
The release with full changelogs and prebuilt binaries can be seen at the v2.1.2 tag. +This release reverts the April Fool’s code additions in v2.1.1. It is functionally equal to v2.1.0. Nice! +A real release will come possibly in a few days or next week, so stay tuned for the good and feature-filled release of v2.2!
The release with full changelogs and prebuilt binaries can be seen at the v2.1.1 tag. +Welcome to a fresh new release of Hilbish! Some people (or none) may be awaiting the long coming v2.2 release with lots of features, but I needed to push out this little bug fix (wink) release. +Bug Fixes Validation checks for command input When running this version, you may have noticed an odd message that sometimes comes up when running commands.
The release with full changelogs and prebuilt binaries can be seen at the v2.1.0 tag. +Oh look! A new release of Hilbish! This time is the v2.1 release, with a small amount of features and mainly documentation changes and bug fixes. +Documentation There have been a few documentation enhancements for this release. This includes: +Adding the return types for all functions that need them Documenting Hilbish types like job objects and timers properly.
Hilbish v2.0 has been released! Well actually, it was released a week ago, but I only wrote this Hilbish blog after that. +This is a big release, coming 9 months after the previous v1.2.0 and featuring over 40+ bug fixes and tons of new features and enhancements, so let’s see what is in this release. +Documentation When querying about the problems people have with Hilbish, one of the issues was its poor documentation.
Steps on how to install Hilbish on all the OSes and distros supported.
Hello! Welcome to the Hilbish blog. This will mainly contain release announcements and some other things relating to Hilbish (development).
Hilbish v2.0 has been released! +Well actually, it was released a week ago, but I only wrote this +Hilbish blog after that.
This is a big release, coming 9 months after the previous v1.2.0 and +featuring over 40+ bug fixes and tons of new features and enhancements, so +let’s see what is in this release.
When querying about the problems people have with Hilbish, one of the
+issues was its poor documentation. Hilbish had plain text, autogenerated
+documentation which only covered the module functions (bait, hilbish,
+commander, etc.) and did not include the interfaces (hilbish.timers
,
+hilbish.jobs
and all that).
I have tried to improve this by working on documenting all the
+interfaces (except for some functions of hilbish.runner
, that’s hard to do)
+and made the documentation markdown for use on this website. This means
+that users can look at documentation here or with the doc
command.
Hopefully this addresses documentation complaints, and if not, please open an issue.
As this is a piece of software with no unit testing that is maintained by me alone, +there is gonna be either some bug or something that I overlooked when +making a change. I make a lot of mistakes. There’s also the other fact that +sometimes there’s just bugs for any other reasosn. Good thing I fixed +more than 40 of those bugs in this release!
The pure Go readline library is good in some ways and bad in others. +A good portion of the bug fixes are for the readline library, and also +related to text input with east asian characters and the like (Korean, Japanese, +etc.)
A few of the fixes (and additions) include:
There are a lot more fixes, even more than the ones listed here, but these are the main ones: +- Don’t put alias expanded command in history (I’ve fixed this 5 times now….) +- Handle stdin being nonblocking +- Completion related fixes, like showing the full name, completing files with spaces
This release is a major version bump not only because there are tons of fixes, but because +there are breaking changes. This means that there are some changes done which would +cause errors with an old user config (breaking).
The most important is the use of a new Lua VM library. Previously, Hilbish +used gopher-lua, which implements Lua 5.1. This has been changed to +golua +, which implements Lua 5.4.
Moving from 5.1 to 5.4 does have breaking changes even if it doesn’t seem like it, +and since these are different Lua implementations, there may be some differences there too.
Previously, objects such as jobs or timers were represented by tables. +This has been changed to userdata to make more sense.
Runner functions are now required to return a table. +It can (at the moment) have 4 variables:
input
(user input)exitCode
(exit code)error
(error message)continue
(whether to prompt for more input)
+User input has been added to the return to account for runners wanting to
+prompt for continued input, and to add it properly to history. continue
+got added so that it would be easier for runners to get continued input
+without having to actually handle it at all.The MacOS config paths now match Linux, since it makes more sense for +a program like Hilbish.
The Hilbish greeting is now an opt, and is printed by default.
Besides fixes and changes, this release also includes a good portion of +new features! Users can now add handlers for syntax highlighting and +inline hinting.
Some new hooks have been added, like hilbish.cancel
and hilbish.init
.
+You can look at all the hooks via the doc hooks
command
Job management functions have also been added. You can now put jobs in the +foreground/background and disown them via the expected commands and also +via the Lua API.
The hilbish.timers
API interface was also added in this release!
Hilbish has gone from something small and simple for myself to a slightly +advanced shell with a decent amount of features, and a few users. It +still hasn’t reached levels of other alt shells in regards to literally +everything, but the goal is to get there!
If you want to check the FULL changelog, you can do so here. +This v2.0 release marks an advancement in Hilbish (and also how long +one of my projects hasn’t died) and I hope it can advance even further.
Thanks for reading, and I’ll be back for the v2.1 release notes, or maybe +something else in between.
The release with full changelogs and prebuilt binaries can be +seen at the v2.1.0 +tag.
Oh look! A new release of Hilbish! This time is the v2.1 release, +with a small amount of features and mainly documentation changes and +bug fixes.
There have been a few documentation enhancements for this release. +This includes:
A major addition is the new “sink” type for commanders to write
+their output to. This was the solution to pipes and other shell
+operators not working with builtins. If you wrote a commander
+and made it print
, use sinks.out:write
instead.
This is also documented at the commander docs +.
doc
command
+Since API documentation has been moved to an API folder and also includes
+interfaces, a change has been made to get the module name from the
+passed from the requested page. This means that
+doc api hilbish hilbish.jobs
is now shortened to doc api hilbish.jobs
Small release, small amount of bug fixes. Even though, this is the main +part of this release.
Previously Hilbish completions did not work with symlinks properly.
+This can be tested in the previous 2.0 release by attempting to
+path complete to /bin
. Since this is (or can be?) a symlink to
+/usr/bin
, it was not marked as a directory and therefore did not
+automatically add the ending slash. This has been fixed.
I found that when I updated my terminal of choice (Tym
+) for the new
+daemon feature, Hilbish would sometimes segfault on startup. This is due
+to it getting a resize event on startup while bait
was not initialized
+yet.
hilbish.which
function works with aliases.hilbish.completion.files
and hilbish.completion.bins
will no longer
+cause a panic with all empty arguments passed.Stay tuned for the v2.2 release, which will have a bigger set of features +and maybe some more bug fixes!
The release with full changelogs and prebuilt binaries can be +seen at the v2.1.1 +tag.
Welcome to a fresh new release of Hilbish! Some people (or none) may be awaiting +the long coming v2.2 release with lots of features, but I needed to push +out this little bug fix (wink) release.
When running this version, you may have noticed an odd message that sometimes +comes up when running commands. This is from the new TMOLI42SH +(The Meaning of Life is 42 String Hash) input validation scheme.
Commands now have a chance of taking exactly 2-3s more less time of running due to
+improvements in the code for shell runners!!!!!
Hilbish already threw an error when Lua code was not valid in syntax, but there was the +need for an extra validation scheme (called OpTTCLC - Opinion based Turing Test to Check Lua Code) +which results in less time wasted running invalid and TERRIBLE Lua code.
There is only 1 new feature in this glorious release.
If you run a command that does not exist, Hilbish will say goodbye.
Hope you enjoy this new release! It took a lot of effort to create this new version +while I was busy doing completely nothing. :)))
The release with full changelogs and prebuilt binaries can be +seen at the v2.1.2 +tag.
This release reverts the April Fool’s code additions in v2.1.1. It is +functionally equal to v2.1.0. Nice!
A real release will come possibly in a few days or next week, so stay tuned for +the good and feature-filled release of v2.2!
The release with full changelogs and prebuilt binaries can be +seen at the v2.2.0 +tag.
Welcome to a very long awaited release of Hilbish, and on Christmas. Just think +of it as a long preparing, late Christmas gift. :) +This release does not contain a whole lot of changes, but it is a new +release with enhancements and bug fixes!
As is a trend, the documentation has been improved by ONE HUNDRED TIMES.
+Okay, not quite, but they’ve definitely been given an uplift.
+Everything has been rewritten, new documentation has been added to both
+the website and the local docs accessible with the doc
command.
+Both the website and local docs are now in sync with each other.
This means that the doc
command has also been improved to consolidate
+the documentation changes. It looks a lot better, has pagination, etc!
Speaking of pagination…
The first new added feature is the Greenhouse pager! It is a library and
+command accessible via greenhouse
. It will have better integration with
+Hilbish things, like notifications and can be used as a base for displaying
+multi-line text output instead of paging to less. The usage of Greenhouse is
+more efficient and better in Hibish!
Wait… notifications? Yes! All new in the 2.2 release is a generic notification +interface for things in Hilbish to alert the user of things going on. Stuff like +background jobs finishing, simple alarms, actual messages, whatever you like.
Users can now use fuzzy search for command history and completion search.
+Enable it with hilbish.opts.fuzzy = true
!
Did you know of the cdr
command? I personally don’t use it, but I’ve made
+it look slightly better for ease of use. That simple change is adding the indexes
+next to the directory so you’ll know to type cdr 2
.
Users can now add aliases with numbered substitutions. In shell script,
+some people have to make functions for certain things that are actually
+just aliases. A simple example: nix run nixpkgs#package
cannot be aliased
+because if it was aliased to something like run
normally there would be a space after.
Simple fix:
1hilbish.alias('run', 'nix run nixpkgs#%1')
+
Rejoice!
There are a small amount of bug fixes but they’re still fixes!
In some cases Hilbish will panic if:
An infinite loop has been patched out if someone navigates without +having any prior history. Imagine pressing the up key on a fresh Hilbish +install and you shell no longer working… that’s gone now.
Something else that’s gone… is still Windows support, but I added a fix +which will make file completion work now. Job management commands work as +well now too due to an oversight when changing up the job functions.
For the next release, I’m hoping that it won’t take as long to deliver on +what is realistically a small amount of changes. So v2.3 will be coming +in a short time with some good changes, promise! See you in the +next blog post.
Hello! Welcome to the Hilbish blog. This will mainly contain release +announcements and some other things relating to Hilbish (development).
The release with full changelogs and prebuilt binaries can be seen at the v2.2.0 tag. +Welcome to a very long awaited release of Hilbish, and on Christmas. Just think of it as a long preparing, late Christmas gift. :) This release does not contain a whole lot of changes, but it is a new release with enhancements and bug fixes! +Documentation As is a trend, the documentation has been improved by ONE HUNDRED TIMES.
Happy birthday Hilbish! As of last month, Hilbish is now 2 years old. Unfortunately I missed the official date, but I will still make a more focused post on the date (19st). +I decided to fix up this website and Hilbish’s logo, so that can be thought of as something for the 2 years milestone? +Logo Hilbish’s old logo was.. not that good. It definitely functioned as a logo, but the yellow part of it looked ugly (sorry old logo).
The release with full changelogs and prebuilt binaries can be seen at the v2.1.2 tag. +This release reverts the April Fool’s code additions in v2.1.1. It is functionally equal to v2.1.0. Nice! +A real release will come possibly in a few days or next week, so stay tuned for the good and feature-filled release of v2.2!
The release with full changelogs and prebuilt binaries can be seen at the v2.1.1 tag. +Welcome to a fresh new release of Hilbish! Some people (or none) may be awaiting the long coming v2.2 release with lots of features, but I needed to push out this little bug fix (wink) release. +Bug Fixes Validation checks for command input When running this version, you may have noticed an odd message that sometimes comes up when running commands.
The release with full changelogs and prebuilt binaries can be seen at the v2.1.0 tag. +Oh look! A new release of Hilbish! This time is the v2.1 release, with a small amount of features and mainly documentation changes and bug fixes. +Documentation There have been a few documentation enhancements for this release. This includes: +Adding the return types for all functions that need them Documenting Hilbish types like job objects and timers properly.
Hilbish v2.0 has been released! Well actually, it was released a week ago, but I only wrote this Hilbish blog after that. +This is a big release, coming 9 months after the previous v1.2.0 and featuring over 40+ bug fixes and tons of new features and enhancements, so let’s see what is in this release. +Documentation When querying about the problems people have with Hilbish, one of the issues was its poor documentation.
Steps on how to install Hilbish on all the OSes and distros supported.
Hello! Welcome to the Hilbish blog. This will mainly contain release announcements and some other things relating to Hilbish (development).
🌺 Hilbish is the new Moon-powered interactive shell for Lua fans!
Extensible, scriptable, configurable: All in Lua. ✨
Hilbish is configured and scripted in the +Lua programming language. This removes all the old, ugly things +about Shell script and introduces everything good about Lua, +including other languages (Fennel, Lua derivatives).
Hilbish provides the user with proper menus +for completions and history usage. Want to see your previous commands? +Hit Ctrl-R.
Hilbish offers a bunch of features to make your +interactive shell experience rich. Things like syntax highlighting +and hinting available via the Lua API.
Want to change the language used for interactive input? +Or maybe monitor and notify for the output of background jobs? +Have a real-time updating prompt? All this can be done in Hilbish!
Hilbish is your interactive shell as well as a just a Lua interpreter
+and enhanced REPL.
Hilbish is known to run on the 3 major platforms (Windows, MacOS, Linux) +but likely builds on other Unixes! Windows doesn't work as well as it should, +so if you're a Windows user, +say something!
The best way to get Hilbish is to get a build directly from GitHub. +At any time, there are 2 versions of Hilbish recommended for download: +the latest stable release, and development builds from the master branch.
You can download both at any time, but note that the development builds may +have breaking changes.
For the latest stable release, check here: https://github.com/Rosettea/Hilbish/releases/latest
For a development build: https://nightly.link/Rosettea/Hilbish/workflows/build/master
To read the steps for compiling Hilbish, head over to the GitHub repository.
Methods of installing Hilbish for your Linux distro.
An official COPR is offered to install Hilbish easily on Fedora. +Enable the repo:
1sudo dnf copr enable sammyette/Hilbish
+
And install Hilbish:
1sudo dnf install hilbish
+
Or for the latest development build from master:
1sudo dnf install hilbish-git
+
Hilbish is on the AUR. Setup an AUR helper, and install. +Example with yay:
1yay -S hilbish
+
Or, from master branch:
1yay -S hilbish-git
+
Hilbish is currentlty in the testing/edge repository for Alpine. +Follow the steps here +(Using testing repositories) and install:
1apk add hilbish
+
The release with full changelogs and prebuilt binaries can be seen at the v2.2.0 tag. +Welcome to a very long awaited release of Hilbish, and on Christmas. Just think of it as a long preparing, late Christmas gift. :) This release does not contain a whole lot of changes, but it is a new release with enhancements and bug fixes! +Documentation As is a trend, the documentation has been improved by ONE HUNDRED TIMES.
Happy birthday Hilbish! As of last month, Hilbish is now 2 years old. Unfortunately I missed the official date, but I will still make a more focused post on the date (19st). +I decided to fix up this website and Hilbish’s logo, so that can be thought of as something for the 2 years milestone? +Logo Hilbish’s old logo was.. not that good. It definitely functioned as a logo, but the yellow part of it looked ugly (sorry old logo).
The release with full changelogs and prebuilt binaries can be seen at the v2.1.2 tag. +This release reverts the April Fool’s code additions in v2.1.1. It is functionally equal to v2.1.0. Nice! +A real release will come possibly in a few days or next week, so stay tuned for the good and feature-filled release of v2.2!
The release with full changelogs and prebuilt binaries can be seen at the v2.1.1 tag. +Welcome to a fresh new release of Hilbish! Some people (or none) may be awaiting the long coming v2.2 release with lots of features, but I needed to push out this little bug fix (wink) release. +Bug Fixes Validation checks for command input When running this version, you may have noticed an odd message that sometimes comes up when running commands.
The release with full changelogs and prebuilt binaries can be seen at the v2.1.0 tag. +Oh look! A new release of Hilbish! This time is the v2.1 release, with a small amount of features and mainly documentation changes and bug fixes. +Documentation There have been a few documentation enhancements for this release. This includes: +Adding the return types for all functions that need them Documenting Hilbish types like job objects and timers properly.
Hilbish v2.0 has been released! Well actually, it was released a week ago, but I only wrote this Hilbish blog after that. +This is a big release, coming 9 months after the previous v1.2.0 and featuring over 40+ bug fixes and tons of new features and enhancements, so let’s see what is in this release. +Documentation When querying about the problems people have with Hilbish, one of the issues was its poor documentation.
Steps on how to install Hilbish on all the OSes and distros supported.
Hello! Welcome to the Hilbish blog. This will mainly contain release announcements and some other things relating to Hilbish (development).