2
2
mirror of https://github.com/Hilbis/Hilbish synced 2025-06-06 04:22:03 +00:00

deploy: ff87578b770ea97b1cc603de7237b93f18136729

This commit is contained in:
sammy-ette 2025-06-04 02:52:04 +00:00
parent 6544fe78a0
commit 0d1bf0bfd7
51 changed files with 1885 additions and 3216 deletions

View File

@ -1,50 +1,35 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Improving Hilbish&#39;s Branding</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Improving Hilbish&#39;s Branding</h1><Tag xmlns="namespace"><p>Happy birthday Hilbish! As of last month, Hilbish is now 2 years old.
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Improving Hilbish&#39;s Branding</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Improving Hilbish&#39;s Branding</h1><p>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).</p>
<p>I decided to fix up this website and Hilbishs logo, so that can
be thought of as something for the 2 years milestone?</p>
<h1>Logo</h1>
<p>Hilbishs old logo was.. not that good. It definitely functioned
as a logo, but the yellow part of it looked ugly (sorry old logo).</p>
<img src="https://safe.kashima.moe/4c6e9q484pcy.png" width="256">
<br>
<p>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:</p>
<img src="https://safe.kashima.moe/oy72vpev2yi4.png" width="256">
<br>
<h1>Website</h1>
<p>Ever since this website was first made, from the release of v2.0, it has
been doing its job of being a website good enough, but there were a few issues.</p>
<h1>Padding</h1>
<p>Padding is very important! The edges of your screen need space to do nothing,
focused post on the date (19st).</p><p>I decided to fix up this website and Hilbish&#39;s logo, so that can
be thought of as something for the 2 years milestone?</p><h1 class="font-bold text-4xl" id="Logo-Hilbish&#39;s-old-logo-was..-not-that-good.-It-definitely-functioned-as-a-logo-but-the-yellow-part-of-it-looked-ugly-(sorry-old-logo).">Logo
Hilbish&#39;s old logo was.. not that good. It definitely functioned
as a logo, but the yellow part of it looked ugly (sorry old logo).</h1><p>&lt;img src=&quot;https://safe.kashima.moe/4c6e9q484pcy.png&quot; width=256&gt;
&lt;br&gt;</p><p>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:
&lt;img src=&quot;https://safe.kashima.moe/oy72vpev2yi4.png&quot; width=256&gt;
&lt;br&gt;
# Website
Ever since this website was first made, from the release of v2.0, it has
been doing it&#39;s job of being a website good enough, but there were a few issues.</p><h1 class="font-bold text-4xl" id="Padding-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.">Padding
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.</p>
<p>Here it is before:<br>
<img src="https://safe.kashima.moe/nupzzalt2oa4.png" alt="Before"></p>
<p>and after:<br>
<img src="https://safe.kashima.moe/r0ox4nazfi0q.png" alt="After"></p>
<h1>Docs Navigation</h1>
<p>On the docs page, the pages are on the left on desktop. Since
it means things would look a bit cramped. This was simple to fix.</h1><p>Here it is before:
<img alt="Before" src="https://safe.kashima.moe/nupzzalt2oa4.png"></p><p>and after:
<img alt="After" src="https://safe.kashima.moe/r0ox4nazfi0q.png"></p><h1 class="font-bold text-4xl" id="Docs-Navigation-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&#39;t-look-that-good.">Docs Navigation
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 doesnt look that good.</p>
<p>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:</p>
<ul>
<li>Make the doc navigation hidden by default on mobile, just like site wide navigation</li>
<li>Make doc navigation have the same look as site wide navigation</li>
</ul>
<p>Heres a before:<br>
<img src="https://safe.kashima.moe/krn0a6qwegdj.png" alt=""></p>
<p>and after:<br>
<img src="https://safe.kashima.moe/sk11ighz47yb.png" alt=""></p>
<p>Looks a lot better now.</p>
<h1>Other Changes</h1>
<p>If you havent noticed, I have made other changes to the website.
This includes:</p>
<ul>
<li>Borders! Something this simple makes the website look a lot better, especially on mobile.</li>
<li>More padding and margin everywhere. Home, doc pages, blog post listing.</li>
</ul></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
when navigating to every page for docs and just doesn&#39;t look that good.</h1><p>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:
- Make the doc navigation hidden by default on mobile, just like site wide navigation
- Make doc navigation have the same look as site wide navigation</p><p>Here&#39;s a before:
<img alt src="https://safe.kashima.moe/krn0a6qwegdj.png"></p><p>and after:
<img alt src="https://safe.kashima.moe/sk11ighz47yb.png"></p><p>Looks a lot better now.</p><h1 class="font-bold text-4xl" id="Other-Changes-If-you-haven&#39;t-noticed-I-have-made-other-changes-to-the-website.-This-includes:---Borders-Something-this-simple-makes-the-website-look-a-lot-better-especially-on-mobile.---More-padding-and-margin-everywhere.-Home-doc-pages-blog-post-listing.">Other Changes
If you haven&#39;t noticed, I have made other changes to the website.
This includes:
- Borders! Something this simple makes the website look a lot better, especially on mobile.
- More padding and margin everywhere. Home, doc pages, blog post listing.</h1></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,91 +1,62 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Hilbish v2.0 Release</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Hilbish v2.0 Release</h1><Tag xmlns="namespace"><p>Hilbish v2.0 has been released!
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Hilbish v2.0 Release</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Hilbish v2.0 Release</h1><p>Hilbish v2.0 has been released!
Well actually, it was released a week ago, but I only wrote this
Hilbish blog <em>after</em> that.</p>
<p>This is a <strong>big</strong> release, coming 9 months after the previous v1.2.0 and
Hilbish blog <strong>after</strong> that.</p><p>This is a *<strong>big</strong>* release, coming 9 months after the previous v1.2.0 and
featuring over 40+ bug fixes and tons of new features and enhancements, so
lets see what is in this release.</p>
<h1>Documentation</h1>
<p>When querying about the problems people have with Hilbish, one of the
let&#39;s see what is in this release.</p><h1 class="font-bold text-4xl" id="Documentation-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).">Documentation
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 (<code>hilbish.timers</code>,
<code>hilbish.jobs</code> and all that).</p>
<p>I have tried to improve this by working on documenting all the
interfaces (except for some functions of <code>hilbish.runner</code>, thats hard to do)
<code>hilbish.jobs</code> and all that).</h1><p>I have tried to improve this by working on documenting all the
interfaces (except for some functions of <code>hilbish.runner</code>, that&#39;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 <code>doc</code> command.</p>
<p>Hopefully this addresses documentation complaints, and if not, please open an issue.</p>
<h1>Main Bug Fixes</h1>
<p>As this is a piece of software with no unit testing that is maintained by me alone,
that users can look at documentation here or with the <code>doc</code> command.</p><p>Hopefully this addresses documentation complaints, and if not, please open an issue.</p><h1 class="font-bold text-4xl" id="Main-Bug-Fixes-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&#39;s-also-the-other-fact-that-sometimes-there&#39;s-just-bugs-for-any-other-reasosn.-Good-thing-I-fixed-more-than-40-of-those-bugs-in-this-release">Main Bug Fixes
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. Theres also the other fact that
sometimes theres just bugs for any other reasosn. Good thing I fixed
more than 40 of those bugs in this release!</p>
<h2>Readline Bug Fixes</h2>
<p>The pure Go readline library is good in some ways and bad in others.
making a change. I make a lot of mistakes. There&#39;s also the other fact that
sometimes there&#39;s just bugs for any other reasosn. Good thing I fixed
more than 40 of those bugs in this release!</h1><h2 class="font-bold text-3xl" id="Readline-Bug-Fixes-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.)">Readline Bug Fixes
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.)</p>
<p>A few of the fixes (and additions) include:</p>
<ul>
<li>Fixing various crashes, including when there is a “stray” newline at the end of text</li>
<li>Grid completion menu causing spam and duplicate text when there are items longer than
the terminal and/or contain Japanese or other characters.</li>
<li>Cursor positioning with CJK characters</li>
<li>Adding new keybinds and fixing others</li>
</ul>
<h2>Other fixes</h2>
<p>There are a lot more fixes, even more than the ones listed here, but these are the main ones:
- Dont put alias expanded command in history (Ive fixed this 5 times now….)
- Handle stdin being nonblocking
- Completion related fixes, like showing the full name, completing files with spaces</p>
<h1>Breaking changes</h1>
<p>This release is a major version bump not only because there are tons of fixes, but because
etc.)</h2><p>A few of the fixes (and additions) include:</p><ul style="list-style-type:&#39;-&#39;;"><li><p>Fixing various crashes, including when there is a &quot;stray&quot; newline at the end of text</p></li><li><p>Grid completion menu causing spam and duplicate text when there are items longer than</p></li></ul><p>the terminal and/or contain Japanese or other characters.
- Cursor positioning with CJK characters
- Adding new keybinds and fixing others</p><h2 class="font-bold text-3xl" id="Other-fixes-There-are-a-lot-more-fixes-even-more-than-the-ones-listed-here-but-these-are-the-main-ones:- --Don&#39;t-put-alias-expanded-command-in-history-(I&#39;ve-fixed-this-5-times-now....)- --Handle-stdin-being-nonblocking- --Completion-related-fixes-like-showing-the-full-name-completing-files-with-spaces">Other fixes
There are a lot more fixes, even more than the ones listed here, but these are the main ones:
- Don&#39;t put alias expanded command in history (I&#39;ve fixed this 5 times now....)
- Handle stdin being nonblocking
- Completion related fixes, like showing the full name, completing files with spaces</h2><h1 class="font-bold text-4xl" id="Breaking-changes-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).">Breaking changes
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).</p>
<h2>Lua 5.4</h2>
<p>The most important is the use of a new Lua VM library. Previously, Hilbish
cause errors with an old user config (breaking).</h1><h2 class="font-bold text-3xl" id="Lua-5.4-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.">Lua 5.4
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
<a href="https://github.com/arnodel/golua/" rel="noopener noreferrer">golua</a>, which implements Lua 5.4.</p>
<p>Moving from 5.1 to 5.4 does have breaking changes even if it doesnt seem like it,
and since these are different Lua implementations, there may be some differences there too.</p>
<h2>Userdata</h2>
<p>Previously, objects such as jobs or timers were represented by tables.
This has been changed to userdata to make more sense.</p>
<h2>Other changes</h2>
<p>Runner functions are now required to return a table.
It can (at the moment) have 4 variables:</p>
<ul>
<li><code>input</code> (user input)</li>
<li><code>exitCode</code> (exit code)</li>
<li><code>error</code> (error message)</li>
<li><code>continue</code> (whether to prompt for more input)
<a href="https://github.com/arnodel/golua/">golua</a>, which implements Lua 5.4.</h2><p>Moving from 5.1 to 5.4 does have breaking changes even if it doesn&#39;t seem like it,
and since these are different Lua implementations, there may be some differences there too.</p><h2 class="font-bold text-3xl" id="Userdata-Previously-objects-such-as-jobs-or-timers-were-represented-by-tables.-This-has-been-changed-to-userdata-to-make-more-sense.">Userdata
Previously, objects such as jobs or timers were represented by tables.
This has been changed to userdata to make more sense.</h2><h2 class="font-bold text-3xl" id="Other-changes-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.">Other changes
Runner functions are now required to return a table.
It can (at the moment) have 4 variables:
- <code>input</code> (user input)
- <code>exitCode</code> (exit code)
- <code>error</code> (error message)
- <code>continue</code> (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. <code>continue</code>
got added so that it would be easier for runners to get continued input
without having to actually handle it at all.</li>
</ul>
<p>The MacOS config paths now match Linux, since it makes more sense for
a program like Hilbish.</p>
<p>The Hilbish greeting is now an <em>opt</em>, and is printed by default.</p>
<h1>Feature Additions</h1>
<p>Besides fixes and changes, this release also includes a good portion of
without having to actually handle it at all.</h2><p>The MacOS config paths now match Linux, since it makes more sense for
a program like Hilbish.</p><p>The Hilbish greeting is now an <strong>opt</strong>, and is printed by default.</p><h1 class="font-bold text-4xl" id="Feature-Additions-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.">Feature Additions
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.</p>
<p>Some new hooks have been added, like <code>hilbish.cancel</code> and <code>hilbish.init</code>.
You can look at all the hooks via the <code>doc hooks</code> command</p>
<p>Job management functions have also been added. You can now put jobs in the
inline hinting.</h1><p>Some new hooks have been added, like <code>hilbish.cancel</code> and <code>hilbish.init</code>.
You can look at all the hooks via the <code>doc hooks</code> command</p><p>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.</p>
<p>The <code>hilbish.timers</code> API interface was also added in this release!</p>
<h1>Closing Off</h1>
<p>Hilbish has gone from something small and simple for myself to a slightly
via the Lua API.</p><p>The <code>hilbish.timers</code> API interface was also added in this release!</p><h1 class="font-bold text-4xl" id="Closing-Off-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&#39;t-reached-levels-of-other-alt-shells-in-regards-to-literally-everything-but-the-goal-is-to-get-there">Closing Off
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 hasnt reached levels of other alt shells in regards to literally
everything, but the goal is to get there!</p>
<p>If you want to check the FULL changelog, you can <a href="https://github.com/Rosettea/Hilbish/releases/tag/v2.0.0" rel="noopener noreferrer">do so here.</a>
still hasn&#39;t reached levels of other alt shells in regards to literally
everything, but the goal is to get there!</h1><p>If you want to check the FULL changelog, you can <a href="https://github.com/Rosettea/Hilbish/releases/tag/v2.0.0">do so here.</a>
This v2.0 release marks an advancement in Hilbish (and also how long
one of my projects hasnt died) and I hope it can advance even further.</p>
<p>Thanks for reading, and Ill be back for the v2.1 release notes, or maybe
something else in between.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
one of my projects hasn&#39;t died) and I hope it can advance even further.</p><p>Thanks for reading, and I&#39;ll be back for the v2.1 release notes, or maybe
something else in between.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,53 +1,36 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>v2.1 Release</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>v2.1 Release</h1><Tag xmlns="namespace"><blockquote>
<p>The release with full changelogs and prebuilt binaries can be
seen at the <a href="https://github.com/Rosettea/Hilbish/releases/tag/v2.1.0" rel="noopener noreferrer">v2.1.0</a>
tag.</p>
</blockquote>
<p>Oh look! A new release of Hilbish! This time is the v2.1 release,
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>v2.1 Release</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">v2.1 Release</h1><p>&gt; The release with full changelogs and prebuilt binaries can be
seen at the <a href="https://github.com/Rosettea/Hilbish/releases/tag/v2.1.0">v2.1.0</a>
tag.</p><p>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.</p>
<h1>Documentation</h1>
<p>There have been a few documentation enhancements for this release.
This includes:</p>
<ul>
<li>Adding the return types for all functions that need them</li>
<li>Documenting Hilbish types like job objects and timers properly.
They now have a separate heading and listing of properties and methods.</li>
<li>Fixing outdated documentation</li>
</ul>
<h1>Features</h1>
<h2>Sinks</h2>
<p>A major addition is the new “sink” type for commanders to write
bug fixes.</p><h1 class="font-bold text-4xl" id="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.-They-now-have-a-separate-heading-and-listing-of-properties-and-methods.---Fixing-outdated-documentation">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.
They now have a separate heading and listing of properties and methods.
- Fixing outdated documentation</h1><h1 class="font-bold text-4xl" id="Features">Features</h1><h2 class="font-bold text-3xl" id="Sinks-A-major-addition-is-the-new-&quot;sink&quot;-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.">Sinks
A major addition is the new &quot;sink&quot; 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 <code>print</code>, use <code>sinks.out:write</code> instead.</p>
<p>This is also documented at the <a href="./docs/api/commander" rel="noopener noreferrer">commander docs</a>.</p>
<h2><code>doc</code> command</h2>
<p>Since API documentation has been moved to an API folder and also includes
and made it <code>print</code>, use <code>sinks.out:write</code> instead.</h2><p>This is also documented at the <a href="./docs/api/commander">commander docs</a>.</p><h2 class="font-bold text-3xl" id="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"><code>doc</code> 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
<code>doc api hilbish hilbish.jobs</code> is now shortened to <code>doc api hilbish.jobs</code></p>
<h1>Bug Fixes</h1>
<p>Small release, small amount of bug fixes. Even though, this is the main
part of this release.</p>
<h2>Completions and Symlinks</h2>
<p>Previously Hilbish completions did not work with symlinks properly.
<code>doc api hilbish hilbish.jobs</code> is now shortened to <code>doc api hilbish.jobs</code></h2><h1 class="font-bold text-4xl" id="Bug-Fixes-Small-release-small-amount-of-bug-fixes.-Even-though-this-is-the-main-part-of-this-release.">Bug Fixes
Small release, small amount of bug fixes. Even though, this is the main
part of this release.</h1><h2 class="font-bold text-3xl" id="Completions-and-Symlinks-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.">Completions and Symlinks
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 <code>/bin</code>. Since this is (or can be?) a symlink to
<code>/usr/bin</code>, it was not marked as a directory and therefore did not
automatically add the ending slash. This has been fixed.</p>
<h2>Segfaults</h2>
<p>I found that when I updated my terminal of choice (<a href="https://github.com/endaaman/tym" rel="noopener noreferrer">Tym</a>) for the new
automatically add the ending slash. This has been fixed.</h2><h2 class="font-bold text-3xl" id="Segfaults-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.">Segfaults
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 <code>bait</code> was not initialized
yet.</p>
<h2>API Fixes</h2>
<ul>
<li>The <code>hilbish.which</code> function works with aliases.</li>
<li><code>hilbish.completion.files</code> and <code>hilbish.completion.bins</code> will no longer
cause a panic with all empty arguments passed.</li>
</ul>
<h1>Next Release</h1>
<p>Stay tuned for the v2.2 release, which will have a bigger set of features
and maybe some more bug fixes!</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
yet.</h2><h2 class="font-bold text-3xl" id="API-Fixes---The-hilbish.which-function-works-with-aliases.---hilbish.completion.files-and-hilbish.completion.bins-will-no-longer-cause-a-panic-with-all-empty-arguments-passed.">API Fixes
- The <code>hilbish.which</code> function works with aliases.
- <code>hilbish.completion.files</code> and <code>hilbish.completion.bins</code> will no longer
cause a panic with all empty arguments passed.</h2><h1 class="font-bold text-4xl" id="Next-Release-Stay-tuned-for-the-v2.2-release-which-will-have-a-bigger-set-of-features-and-maybe-some-more-bug-fixes">Next Release
Stay tuned for the v2.2 release, which will have a bigger set of features
and maybe some more bug fixes!</h1></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,28 +1,18 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>v2.1.1 Release</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>v2.1.1 Release</h1><Tag xmlns="namespace"><blockquote>
<p>The release with full changelogs and prebuilt binaries can be
seen at the <a href="https://github.com/Rosettea/Hilbish/releases/tag/v2.1.1" rel="noopener noreferrer">v2.1.1</a>
tag.</p>
</blockquote>
<p>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 <em>needed</em> to push
out this little bug fix (wink) release.</p>
<h1>Bug Fixes</h1>
<h2>Validation checks for command input</h2>
<p>When running this version, you may have noticed an odd message that sometimes
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>v2.1.1 Release</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">v2.1.1 Release</h1><p>&gt; The release with full changelogs and prebuilt binaries can be
seen at the <a href="https://github.com/Rosettea/Hilbish/releases/tag/v2.1.1">v2.1.1</a>
tag.</p><p>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 <strong>needed</strong> to push
out this little bug fix (wink) release.</p><h1 class="font-bold text-4xl" id="Bug-Fixes">Bug Fixes</h1><h2 class="font-bold text-3xl" id="Validation-checks-for-command-input-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.">Validation checks for command input
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.</p>
<h2>Improved runtime code</h2>
<p>Commands now have a chance of taking exactly 2-3s <del>more</del> less time of running due to
improvements in the code for shell runners!!!!!</p>
<h2>Validate lua code</h2>
<p>Hilbish already threw an error when Lua code was not valid in syntax, but there was the
(The Meaning of Life is 42 String Hash) input validation scheme.</h2><h2 class="font-bold text-3xl" id="Improved-runtime-code-Commands-now-have-a-chance-of-taking-exactly-2-3s-~~more~~-less-time-of-running-due-to-improvements-in-the-code-for-shell-runners">Improved runtime code
Commands now have a chance of taking exactly 2-3s ~~more~~ less time of running due to
improvements in the code for shell runners!!!!!</h2><h2 class="font-bold text-3xl" id="Validate-lua-code-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.">Validate lua code
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.</p>
<h1>Features</h1>
<p>There is only 1 new feature in this glorious release.</p>
<h2>Fix your mistakes for the future</h2>
<p>If you run a command that does not exist, Hilbish will say goodbye.</p>
<h1>Closing</h1>
<p>Hope you enjoy this new release! It took a lot of effort to create this new version
while I was busy doing completely nothing. :)))</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
which results in less time wasted running invalid and TERRIBLE Lua code.</h2><h1 class="font-bold text-4xl" id="Features-There-is-only-1-new-feature-in-this-glorious-release.">Features
There is only 1 new feature in this glorious release.</h1><h2 class="font-bold text-3xl" id="Fix-your-mistakes-for-the-future-If-you-run-a-command-that-does-not-exist-Hilbish-will-say-goodbye.">Fix your mistakes for the future
If you run a command that does not exist, Hilbish will say goodbye.</h2><h1 class="font-bold text-4xl" id="Closing-Hope-you-enjoy-this-new-release-It-took-a-lot-of-effort-to-create-this-new-version-while-I-was-busy-doing-completely-nothing.-:)))">Closing
Hope you enjoy this new release! It took a lot of effort to create this new version
while I was busy doing completely nothing. :)))</h1></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,10 +1,6 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>v2.1.2 Release</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>v2.1.2 Release</h1><Tag xmlns="namespace"><blockquote>
<p>The release with full changelogs and prebuilt binaries can be
seen at the <a href="https://github.com/Rosettea/Hilbish/releases/tag/v2.1.2" rel="noopener noreferrer">v2.1.2</a>
tag.</p>
</blockquote>
<p>This release reverts the April Fools code additions in v2.1.1. It is
functionally equal to v2.1.0. Nice!</p>
<p>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!</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>v2.1.2 Release</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">v2.1.2 Release</h1><p>&gt; The release with full changelogs and prebuilt binaries can be
seen at the <a href="https://github.com/Rosettea/Hilbish/releases/tag/v2.1.2">v2.1.2</a>
tag.</p><p>This release reverts the April Fool&#39;s code additions in v2.1.1. It is
functionally equal to v2.1.0. Nice!</p><p>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!</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,64 +1,46 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>v2.2 Release</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>v2.2 Release</h1><Tag xmlns="namespace"><blockquote>
<p>The release with full changelogs and prebuilt binaries can be
seen at the <a href="https://github.com/Rosettea/Hilbish/releases/tag/v2.2.0" rel="noopener noreferrer">v2.2.0</a>
tag.</p>
</blockquote>
<p>Welcome to a very long awaited release of Hilbish, and on Christmas. Just think
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>v2.2 Release</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">v2.2 Release</h1><p>&gt; The release with full changelogs and prebuilt binaries can be
seen at the <a href="https://github.com/Rosettea/Hilbish/releases/tag/v2.2.0">v2.2.0</a>
tag.</p><p>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!</p>
<h1>Documentation</h1>
<p>As is a trend, the documentation has been improved by ONE HUNDRED TIMES.
Okay, not quite, but theyve definitely been given an uplift.
release with enhancements and bug fixes!</p><h1 class="font-bold text-4xl" id="Documentation-As-is-a-trend-the-documentation-has-been-improved-by-ONE-HUNDRED-TIMES.-Okay-not-quite-but-they&#39;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.">Documentation
As is a trend, the documentation has been improved by ONE HUNDRED TIMES.
Okay, not quite, but they&#39;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 <code>doc</code> command.
Both the website and local docs are now in sync with each other.</p>
<p>This means that the <code>doc</code> command has also been improved to consolidate
the documentation changes. It looks a lot better, has pagination, etc!</p>
<p>Speaking of pagination…</p>
<h1>Features</h1>
<h2>Greenhouse</h2>
<p>The first new added feature is the Greenhouse pager! It is a library and
Both the website and local docs are now in sync with each other.</h1><p>This means that the <code>doc</code> command has also been improved to consolidate
the documentation changes. It looks a lot better, has pagination, etc!</p><p>Speaking of pagination...
# Features
## Greenhouse
The first new added feature is the Greenhouse pager! It is a library and
command accessible via <code>greenhouse</code>. 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!</p>
<h2>Notifications</h2>
<p>Wait… notifications? Yes! All new in the 2.2 release is a generic notification
more efficient and better in Hibish!</p><h2 class="font-bold text-3xl" id="Notifications-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.">Notifications
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, <em>actual messages</em>, whatever you like.</p>
<h2>Fuzzy Searching</h2>
<p>Users can now use fuzzy search for command history and completion search.
Enable it with <code>hilbish.opts.fuzzy = true</code>!</p>
<h3>Smaller Enhancements</h3>
<p>Did you know of the <code>cdr</code> command? I personally dont use it, but Ive made
background jobs finishing, simple alarms, <strong>actual messages</strong>, whatever you like.</h2><h2 class="font-bold text-3xl" id="Fuzzy-Searching-Users-can-now-use-fuzzy-search-for-command-history-and-completion-search.-Enable-it-with-hilbish.opts.fuzzy-=-true">Fuzzy Searching
Users can now use fuzzy search for command history and completion search.
Enable it with <code>hilbish.opts.fuzzy = true</code>!</h2><h3 class="font-bold text-2xl" id="Smaller-Enhancements-Did-you-know-of-the-cdr-command-I-personally-don&#39;t-use-it-but-I&#39;ve-made-it-look-slightly-better-for-ease-of-use.-That-simple-change-is-adding-the-indexes-next-to-the-directory-so-you&#39;ll-know-to-type-cdr-2.">Smaller Enhancements
Did you know of the <code>cdr</code> command? I personally don&#39;t use it, but I&#39;ve made
it look slightly better for ease of use. That simple change is adding the indexes
next to the directory so youll know to type <code>cdr 2</code>.</p>
<p>Users can now add aliases with numbered substitutions. In shell script,
next to the directory so you&#39;ll know to type <code>cdr 2</code>.</h3><p>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: <code>nix run nixpkgs#package</code> cannot be aliased
because if it was aliased to something like <code>run</code> normally there would be a space after.</p>
<p>Simple fix:</p>
<pre><code><span><span>hilbish</span><span>.</span><span>alias</span><span>(</span><span>'run'</span><span>,</span> <span>'nix run nixpkgs#%1'</span><span>)</span>
</span></code></pre>
<p>Rejoice!</p>
<h1>Bug Fixes</h1>
<p>There are a small amount of bug fixes but theyre still fixes!</p>
<p>In some cases Hilbish will panic if:</p>
<ul>
<li>Alias resolution results in something empty</li>
<li>A user does not return a table in a runner functions
These are both fixed.</li>
</ul>
<p>An infinite loop has been patched out if someone navigates without
because if it was aliased to something like <code>run</code> normally there would be a space after.</p><p>Simple fix:
<code>lua
hilbish.alias(&#39;run&#39;, &#39;nix run nixpkgs#%1&#39;)
</code></p><p>Rejoice!</p><h1 class="font-bold text-4xl" id="Bug-Fixes-There-are-a-small-amount-of-bug-fixes-but-they&#39;re-still-fixes">Bug Fixes
There are a small amount of bug fixes but they&#39;re still fixes!</h1><p>In some cases Hilbish will panic if:
- Alias resolution results in something empty
- A user does not return a table in a runner functions
These are both fixed.</p><p>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… thats gone now.</p>
<p>Something else thats gone… is still Windows support, but I added a fix
install and you shell no longer working... that&#39;s gone now.</p><p>Something else that&#39;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.</p>
<h1>Towards v2.3</h1>
<p>For the next release, Im hoping that it wont take as long to deliver on
well now too due to an oversight when changing up the job functions.</p><h1 class="font-bold text-4xl" id="Towards-v2.3-For-the-next-release-I&#39;m-hoping-that-it-won&#39;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.">Towards v2.3
For the next release, I&#39;m hoping that it won&#39;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.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
next blog post.</h1></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,39 +1,27 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>v2.3 Release</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>v2.3 Release</h1><Tag xmlns="namespace"><blockquote>
<p>The release with full changelogs and prebuilt binaries can be
seen at the <a href="https://github.com/Rosettea/Hilbish/releases/tag/v2.3.0" rel="noopener noreferrer">v2.3.0</a>
tag.</p>
</blockquote>
<p>Hilbish v2.3 has now been released! This is small feature and bug fix release
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>v2.3 Release</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">v2.3 Release</h1><p>&gt; The release with full changelogs and prebuilt binaries can be
seen at the <a href="https://github.com/Rosettea/Hilbish/releases/tag/v2.3.0">v2.3.0</a>
tag.</p><p>Hilbish v2.3 has now been released! This is small feature and bug fix release
which took a while to cme ut since I took a long break from programming in general.
The next release will be great, so stay tuned for that.</p>
<h1>Features</h1>
<h2>Pipes (via Lua)</h2>
<p>Commands can now be piped to each other via the Lua API with the <code>hilbish.run</code>
function and an <code>fs.pipe</code>.</p>
<p>Here is a minimal example of the new usage which allows users to now pipe commands
directly via Lua functions:</p>
<pre><code><span><span>local</span> <span>fs</span> <span>=</span> <span>require</span> <span>'fs'</span>
</span><span><span>local</span> <span>pr</span><span>,</span> <span>pw</span> <span>=</span> <span>fs</span><span>.</span><span>pipe</span><span>(</span><span>)</span>
</span><span><span>hilbish</span><span>.</span><span>run</span><span>(</span><span>'ls -l'</span><span>,</span> <span>&lbrace;</span>
</span><span> <span>stdout</span> <span>=</span> <span>pw</span><span>,</span>
</span><span> <span>stderr</span> <span>=</span> <span>pw</span><span>,</span>
</span><span><span>&rbrace;</span><span>)</span>
</span><span>
</span><span><span>pw</span><span>:</span><span>close</span><span>(</span><span>)</span>
</span><span>
</span><span><span>hilbish</span><span>.</span><span>run</span><span>(</span><span>'wc -l'</span><span>,</span> <span>&lbrace;</span>
</span><span> <span>stdin</span> <span>=</span> <span>pr</span>
</span><span><span>&rbrace;</span><span>)</span>
</span></code></pre>
<p>This also means its easier to make commands output to any stream output,
including in commanders.</p>
<h1>Bug Fixes</h1>
<ul>
<li>Commanders can now be cancelled with Ctrl-C, which means if they froze for some reason
they can now be exited.</li>
<li>The shell script interpreter now keeps its environment, and this also fixes the
current working directory being wrong with some commands.</li>
<li>Some greenhouse bugs have been fixed, like randomly appearing when resizing the terminal
and some text attributes like color appearing where they werent supposed to.</li>
</ul></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
The next release will be great, so stay tuned for that.</p><h1 class="font-bold text-4xl" id="Features">Features</h1><h2 class="font-bold text-3xl" id="Pipes-(via-Lua)-Commands-can-now-be-piped-to-each-other-via-the-Lua-API-with-the-hilbish.run-function-and-an-fs.pipe.">Pipes (via Lua)
Commands can now be piped to each other via the Lua API with the <code>hilbish.run</code>
function and an <code>fs.pipe</code>.</h2><p>Here is a minimal example of the new usage which allows users to now pipe commands
directly via Lua functions:
<code>lua
local fs = require &#39;fs&#39;
local pr, pw = fs.pipe()
hilbish.run(&#39;ls -l&#39;, {
stdout = pw,
stderr = pw,
})</code></p><p>pw:close()</p><p>hilbish.run(&#39;wc -l&#39;, {
stdin = pr
})
<code></code></p><p>This also means it&#39;s easier to make commands output to any stream output,
including in commanders.</p><h1 class="font-bold text-4xl" id="Bug-Fixes---Commanders-can-now-be-cancelled-with-Ctrl-C-which-means-if-they-froze-for-some-reason-they-can-now-be-exited.---The-shell-script-interpreter-now-keeps-its-environment-and-this-also-fixes-the-current-working-directory-being-wrong-with-some-commands.---Some-greenhouse-bugs-have-been-fixed-like-randomly-appearing-when-resizing-the-terminal-and-some-text-attributes-like-color-appearing-where-they-weren&#39;t-supposed-to.">Bug Fixes
- Commanders can now be cancelled with Ctrl-C, which means if they froze for some reason
they can now be exited.
- The shell script interpreter now keeps its environment, and this also fixes the
current working directory being wrong with some commands.
- Some greenhouse bugs have been fixed, like randomly appearing when resizing the terminal
and some text attributes like color appearing where they weren&#39;t supposed to.</h1></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,3 +1,3 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Welcome to the Hilbish blog</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Welcome to the Hilbish blog</h1><Tag xmlns="namespace"><p>Hello! Welcome to the Hilbish blog. This will mainly contain release
announcements and some other things relating to Hilbish (development).</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Welcome to the Hilbish blog</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Welcome to the Hilbish blog</h1><p>Hello! Welcome to the Hilbish blog. This will mainly contain release
announcements and some other things relating to Hilbish (development).</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,148 +1,94 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module bait</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module bait</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>Bait is the event emitter for Hilbish. Much like Node.js and
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module bait</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module bait</h1><h2 class="font-bold text-3xl" id="Introduction">Introduction</h2><p>Bait is the event emitter for Hilbish. Much like Node.js and
its <code>events</code> system, many actions in Hilbish emit events.
Unlike Node.js, Hilbish events are global. So make sure to
pick a unique name!</p>
<p>Usage of the Bait module consists of userstanding
event-driven architecture, but its pretty simple:
pick a unique name!</p><p>Usage of the Bait module consists of userstanding
event-driven architecture, but it&#39;s pretty simple:
If you want to act on a certain event, you can <code>catch</code> it.
You can act on events via callback functions.</p>
<p>Examples of this are in the Hilbish default config!
Consider this part of it:</p>
<pre><code><span><span>bait</span><span>.</span><span>catch</span><span>(</span><span>'command.exit'</span><span>,</span> <span>function</span><span>(</span><span>code</span><span>)</span>
</span><span> <span>running</span> <span>=</span> <span>false</span>
</span><span> <span>doPrompt</span><span>(</span><span>code</span> <span>~=</span> <span>0</span><span>)</span>
</span><span> <span>doNotifyPrompt</span><span>(</span><span>)</span>
</span><span><span>end</span><span>)</span>
</span></code></pre>
<p>What this does is, whenever the <code>command.exit</code> event is thrown,
this function will set the user prompt.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#catch" rel="noopener noreferrer">catch(name, cb)</a></td>
<td>Catches an event. This function can be used to act on events.</td>
</tr>
<tr>
<td><a href="#catchOnce" rel="noopener noreferrer">catchOnce(name, cb)</a></td>
<td>Catches an event, but only once. This will remove the hook immediately after it runs for the first time.</td>
</tr>
<tr>
<td><a href="#hooks" rel="noopener noreferrer">hooks(name) -&gt; table</a></td>
<td>Returns a table of functions that are hooked on an event with the corresponding <code>name</code>.</td>
</tr>
<tr>
<td><a href="#release" rel="noopener noreferrer">release(name, catcher)</a></td>
<td>Removes the <code>catcher</code> for the event with <code>name</code>.</td>
</tr>
<tr>
<td><a href="#throw" rel="noopener noreferrer">throw(name, …args)</a></td>
<td>Throws a hook with <code>name</code> with the provided <code>args</code>.</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
You can act on events via callback functions.</p><p>Examples of this are in the Hilbish default config!
Consider this part of it:
<code>lua
bait.catch(&#39;command.exit&#39;, function(code)
running = false
doPrompt(code ~= 0)
doNotifyPrompt()
end)
</code></p><p>What this does is, whenever the <code>command.exit</code> event is thrown,
this function will set the user prompt.</p><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;catch&quot;&gt;catch(name-cb)&lt;/a&gt;|Catches-an-event.-This-function-can-be-used-to-act-on-events.|-|&lt;a-href=&quot;catchOnce&quot;&gt;catchOnce(name-cb)&lt;/a&gt;|Catches-an-event-but-only-once.-This-will-remove-the-hook-immediately-after-it-runs-for-the-first-time.|-|&lt;a-href=&quot;hooks&quot;&gt;hooks(name)--&gt;-table&lt;/a&gt;|Returns-a-table-of-functions-that-are-hooked-on-an-event-with-the-corresponding-name.|-|&lt;a-href=&quot;release&quot;&gt;release(name-catcher)&lt;/a&gt;|Removes-the-catcher-for-the-event-with-name.|-|&lt;a-href=&quot;throw&quot;&gt;throw(name-...args)&lt;/a&gt;|Throws-a-hook-with-name-with-the-provided-args.|">Functions
|||
|----|----|
|&lt;a href=&quot;#catch&quot;&gt;catch(name, cb)&lt;/a&gt;|Catches an event. This function can be used to act on events.|
|&lt;a href=&quot;#catchOnce&quot;&gt;catchOnce(name, cb)&lt;/a&gt;|Catches an event, but only once. This will remove the hook immediately after it runs for the first time.|
|&lt;a href=&quot;#hooks&quot;&gt;hooks(name) -&gt; table&lt;/a&gt;|Returns a table of functions that are hooked on an event with the corresponding <code>name</code>.|
|&lt;a href=&quot;#release&quot;&gt;release(name, catcher)&lt;/a&gt;|Removes the <code>catcher</code> for the event with <code>name</code>.|
|&lt;a href=&quot;#throw&quot;&gt;throw(name, ...args)&lt;/a&gt;|Throws a hook with <code>name</code> with the provided <code>args</code>.|</h2><p>&lt;hr&gt;
&lt;div id=&#39;catch&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
bait.catch(name, cb)
<a href="#catch" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Catches an event. This function can be used to act on events.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>name</code></strong><br>
The name of the hook.</p>
<p><code>function</code> <strong><code>cb</code></strong><br>
The function that will be called when the hook is thrown.</p>
<h4>Example</h4>
<pre><code><span><span>bait</span><span>.</span><span>catch</span><span>(</span><span>'hilbish.exit'</span><span>,</span> <span>function</span><span>(</span><span>)</span>
</span><span> <span>print</span> <span>'Goodbye Hilbish!'</span>
</span><span><span>end</span><span>)</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#catch&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Catches an event. This function can be used to act on events. </p><p class="font-bold text-xl" id="Parameters-string-**name**---The-name-of-the-hook.">Parameters
<code>string</code> **<code>name</code>**
The name of the hook.</p><p><code>function</code> **<code>cb</code>**
The function that will be called when the hook is thrown.</p><p class="font-bold text-xl" id="Example-lua-bait.catch(&#39;hilbish.exit&#39;-function()- print-&#39;Goodbye-Hilbish&#39;-end)--&lt;/div&gt;">Example
<code>lua
bait.catch(&#39;hilbish.exit&#39;, function()
print &#39;Goodbye Hilbish!&#39;
end)
</code>
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;catchOnce&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
bait.catchOnce(name, cb)
<a href="#catchOnce" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Catches an event, but only once. This will remove the hook immediately after it runs for the first time.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>name</code></strong><br>
The name of the event</p>
<p><code>function</code> <strong><code>cb</code></strong><br>
The function that will be called when the event is thrown.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#catchOnce&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Catches an event, but only once. This will remove the hook immediately after it runs for the first time. </p><p class="font-bold text-xl" id="Parameters-string-**name**---The-name-of-the-event">Parameters
<code>string</code> **<code>name</code>**
The name of the event</p><p><code>function</code> **<code>cb</code>**
The function that will be called when the event is thrown.</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;hooks&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
bait.hooks(name) -&gt; table
<a href="#hooks" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns a table of functions that are hooked on an event with the corresponding <code>name</code>.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>name</code></strong><br>
The name of the hook</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#hooks&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns a table of functions that are hooked on an event with the corresponding <code>name</code>. </p><p class="font-bold text-xl" id="Parameters-string-**name**---The-name-of-the-hook">Parameters
<code>string</code> **<code>name</code>**
The name of the hook</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;release&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
bait.release(name, catcher)
<a href="#release" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Removes the <code>catcher</code> for the event with <code>name</code>.<br>
For this to work, <code>catcher</code> has to be the same function used to catch<br>
an event, like one saved to a variable.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>name</code></strong><br>
Name of the event the hook is on</p>
<p><code>function</code> <strong><code>catcher</code></strong><br>
Hook function to remove</p>
<h4>Example</h4>
<pre><code><span><span>local</span> <span>hookCallback</span> <span>=</span> <span>function</span><span>(</span><span>)</span> <span>print</span> <span>'hi'</span> <span>end</span>
</span><span>
</span><span><span>bait</span><span>.</span><span>catch</span><span>(</span><span>'event'</span><span>,</span> <span>hookCallback</span><span>)</span>
</span><span>
</span><span><span>-- a little while later....</span>
</span><span><span>bait</span><span>.</span><span>release</span><span>(</span><span>'event'</span><span>,</span> <span>hookCallback</span><span>)</span>
</span><span><span>-- and now hookCallback will no longer be ran for the event.</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#release&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Removes the <code>catcher</code> for the event with <code>name</code>.
For this to work, <code>catcher</code> has to be the same function used to catch
an event, like one saved to a variable. </p><p class="font-bold text-xl" id="Parameters-string-**name**---Name-of-the-event-the-hook-is-on">Parameters
<code>string</code> **<code>name</code>**
Name of the event the hook is on</p><p><code>function</code> **<code>catcher</code>**
Hook function to remove</p><p class="font-bold text-xl" id="Example-lua-local-hookCallback-=-function()-print-&#39;hi&#39;-end">Example
<code>lua
local hookCallback = function() print &#39;hi&#39; end</code></p><p>bait.catch(&#39;event&#39;, hookCallback)</p><p>-- a little while later....
bait.release(&#39;event&#39;, hookCallback)
-- and now hookCallback will no longer be ran for the event.
<code>
&lt;/div&gt;</code></p><p>&lt;hr&gt;
&lt;div id=&#39;throw&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
bait.throw(name, ...args)
<a href="#throw" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Throws a hook with <code>name</code> with the provided <code>args</code>.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>name</code></strong><br>
The name of the hook.</p>
<p><code>any</code> <strong><code>args</code></strong> (This type is variadic. You can pass an infinite amount of parameters with this type.)<br>
The arguments to pass to the hook.</p>
<h4>Example</h4>
<pre><code><span><span>bait</span><span>.</span><span>throw</span><span>(</span><span>'greeting'</span><span>,</span> <span>'world'</span><span>)</span>
</span><span>
</span><span><span>-- This can then be listened to via</span>
</span><span><span>bait</span><span>.</span><span>catch</span><span>(</span><span>'gretting'</span><span>,</span> <span>function</span><span>(</span><span>greetTo</span><span>)</span>
</span><span> <span>print</span><span>(</span><span>'Hello '</span> <span>..</span> <span>greetTo</span><span>)</span>
</span><span><span>end</span><span>)</span>
</span></code></pre>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#throw&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Throws a hook with <code>name</code> with the provided <code>args</code>. </p><p class="font-bold text-xl">Parameters
<code>string</code> **<code>name</code>**
The name of the hook.</p><p><code>any</code> **<code>args</code>** (This type is variadic. You can pass an infinite amount of parameters with this type.)
The arguments to pass to the hook.</p><p class="font-bold text-xl" id="Example-lua-bait.throw(&#39;greeting&#39;-&#39;world&#39;)">Example
<code>lua
bait.throw(&#39;greeting&#39;, &#39;world&#39;)</code></p><p>-- This can then be listened to via
bait.catch(&#39;gretting&#39;, function(greetTo)
print(&#39;Hello &#39; .. greetTo)
end)
<code>
&lt;/div&gt;</code></p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,105 +1,64 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module commander</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module commander</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>Commander is the library which handles Hilbish commands. This makes
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module commander</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module commander</h1><h2 class="font-bold text-3xl" id="Introduction">Introduction</h2><p>Commander is the library which handles Hilbish commands. This makes
the user able to add Lua-written commands to their shell without making
a separate script in a bin folder. Instead, you may simply use the Commander
library in your Hilbish config.</p>
<pre><code><span><span>local</span> <span>commander</span> <span>=</span> <span>require</span> <span>'commander'</span>
</span><span>
</span><span><span>commander</span><span>.</span><span>register</span><span>(</span><span>'hello'</span><span>,</span> <span>function</span><span>(</span><span>args</span><span>,</span> <span>sinks</span><span>)</span>
</span><span> <span>sinks</span><span>.</span><span>out</span><span>:</span><span>writeln</span> <span>'Hello world!'</span>
</span><span><span>end</span><span>)</span>
</span></code></pre>
<p>In this example, a command with the name of <code>hello</code> is created
library in your Hilbish config.</p><pre><code data-lang="lua">local commander = require &#39;commander&#39;
commander.register(&#39;hello&#39;, function(args, sinks)
sinks.out:writeln &#39;Hello world!&#39;
end)
</code></pre><p>In this example, a command with the name of <code>hello</code> is created
that will print <code>Hello world!</code> to output. One question you may
have is: What is the <code>sinks</code> parameter?</p>
<p>The <code>sinks</code> parameter is a table with 3 keys: <code>input</code>, <code>out</code>, and <code>err</code>.
There is an <code>in</code> alias to <code>input</code>, but it requires using the string accessor syntax (<code>sinks['in']</code>)
have is: What is the <code>sinks</code> parameter?</p><p>The <code>sinks</code> parameter is a table with 3 keys: <code>input</code>, <code>out</code>, and <code>err</code>.
There is an <code>in</code> alias to <code>input</code>, but it requires using the string accessor syntax (<code>sinks[&#39;in&#39;]</code>)
as <code>in</code> is also a Lua keyword, so <code>input</code> is preferred for use.
All of them are a <a href="/Hilbish/docs/api/hilbish/#sink" rel="noopener noreferrer">Sink</a>.
In the future, <code>sinks.in</code> will be removed.</p>
<ul>
<li><code>in</code> is the standard input.
You may use the read functions on this sink to get input from the user.</li>
<li><code>out</code> is standard output.
This is usually where command output should go.</li>
<li><code>err</code> is standard error.
This sink is for writing errors, as the name would suggest.</li>
</ul>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#deregister" rel="noopener noreferrer">deregister(name)</a></td>
<td>Removes the named command. Note that this will only remove Commander-registered commands.</td>
</tr>
<tr>
<td><a href="#register" rel="noopener noreferrer">register(name, cb)</a></td>
<td>Adds a new command with the given <code>name</code>. When Hilbish has to run a command with a name,</td>
</tr>
<tr>
<td><a href="#registry" rel="noopener noreferrer">registry() -&gt; table</a></td>
<td>Returns all registered commanders. Returns a list of tables with the following keys:</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
All of them are a &lt;a href=&quot;/Hilbish/docs/api/hilbish/#sink&quot; style=&quot;text-decoration: none;&quot;&gt;Sink&lt;/a&gt;.
In the future, <code>sinks.in</code> will be removed.</p><ul style="list-style-type:&#39;-&#39;;"><li><p><code>in</code> is the standard input.</p></li></ul><p>You may use the read functions on this sink to get input from the user.
- <code>out</code> is standard output.
This is usually where command output should go.
- <code>err</code> is standard error.
This sink is for writing errors, as the name would suggest.</p><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;deregister&quot;&gt;deregister(name)&lt;/a&gt;|Removes-the-named-command.-Note-that-this-will-only-remove-Commander-registered-commands.|-|&lt;a-href=&quot;register&quot;&gt;register(name-cb)&lt;/a&gt;|Adds-a-new-command-with-the-given-name.-When-Hilbish-has-to-run-a-command-with-a-name|-|&lt;a-href=&quot;registry&quot;&gt;registry()--&gt;-table&lt;/a&gt;|Returns-all-registered-commanders.-Returns-a-list-of-tables-with-the-following-keys:|">Functions
|||
|----|----|
|&lt;a href=&quot;#deregister&quot;&gt;deregister(name)&lt;/a&gt;|Removes the named command. Note that this will only remove Commander-registered commands.|
|&lt;a href=&quot;#register&quot;&gt;register(name, cb)&lt;/a&gt;|Adds a new command with the given <code>name</code>. When Hilbish has to run a command with a name,|
|&lt;a href=&quot;#registry&quot;&gt;registry() -&gt; table&lt;/a&gt;|Returns all registered commanders. Returns a list of tables with the following keys:|</h2><p>&lt;hr&gt;
&lt;div id=&#39;deregister&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
commander.deregister(name)
<a href="#deregister" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Removes the named command. Note that this will only remove Commander-registered commands.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>name</code></strong><br>
Name of the command to remove.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#deregister&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Removes the named command. Note that this will only remove Commander-registered commands. </p><p class="font-bold text-xl" id="Parameters-string-**name**---Name-of-the-command-to-remove.">Parameters
<code>string</code> **<code>name</code>**
Name of the command to remove.</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;register&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
commander.register(name, cb)
<a href="#register" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Adds a new command with the given <code>name</code>. When Hilbish has to run a command with a name,<br>
it will run the function providing the arguments and sinks.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>name</code></strong><br>
Name of the command</p>
<p><code>function</code> <strong><code>cb</code></strong><br>
Callback to handle command invocation</p>
<h4>Example</h4>
<pre><code><span><span>-- When you run the command `hello` in the shell, it will print `Hello world`.</span>
</span><span><span>-- If you run it with, for example, `hello Hilbish`, it will print 'Hello Hilbish'</span>
</span><span><span>commander</span><span>.</span><span>register</span><span>(</span><span>'hello'</span><span>,</span> <span>function</span><span>(</span><span>args</span><span>,</span> <span>sinks</span><span>)</span>
</span><span> <span>local</span> <span>name</span> <span>=</span> <span>'world'</span>
</span><span> <span>if</span> <span>#</span><span>args</span> <span>&gt;</span> <span>0</span> <span>then</span> <span>name</span> <span>=</span> <span>args</span><span>[</span><span>1</span><span>]</span> <span>end</span>
</span><span>
</span><span> <span>sinks</span><span>.</span><span>out</span><span>:</span><span>writeln</span><span>(</span><span>'Hello '</span> <span>..</span> <span>name</span><span>)</span>
</span><span><span>end</span><span>)</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#register&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Adds a new command with the given <code>name</code>. When Hilbish has to run a command with a name,
it will run the function providing the arguments and sinks. </p><p class="font-bold text-xl" id="Parameters-string-**name**---Name-of-the-command">Parameters
<code>string</code> **<code>name</code>**
Name of the command</p><p><code>function</code> **<code>cb</code>**
Callback to handle command invocation</p><p class="font-bold text-xl" id="Example-lua----When-you-run-the-command-`hello`-in-the-shell-it-will-print-`Hello-world`.----If-you-run-it-with-for-example-`hello-Hilbish`-it-will-print-&#39;Hello-Hilbish&#39;-commander.register(&#39;hello&#39;-function(args-sinks)- local-name-=-&#39;world&#39;- if-args-&gt;-0-then-name-=-args[1]-end">Example
<code>lua
-- When you run the command `hello` in the shell, it will print `Hello world`.
-- If you run it with, for example, `hello Hilbish`, it will print &#39;Hello Hilbish&#39;
commander.register(&#39;hello&#39;, function(args, sinks)
local name = &#39;world&#39;
if #args &gt; 0 then name = args[1] end</code></p><p> sinks.out:writeln(&#39;Hello &#39; .. name)
end)
<code>
&lt;/div&gt;</code></p><p>&lt;hr&gt;
&lt;div id=&#39;registry&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
commander.registry() -&gt; table
<a href="#registry" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns all registered commanders. Returns a list of tables with the following keys:</p>
<ul>
<li><code>exec</code>: The function used to run the commander. Commanders require args and sinks to be passed.</li>
</ul>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#registry&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns all registered commanders. Returns a list of tables with the following keys:
- <code>exec</code>: The function used to run the commander. Commanders require args and sinks to be passed. </p><p class="font-bold text-xl" id="Parameters-This-function-has-no-parameters.---&lt;/div&gt;">Parameters
This function has no parameters.
&lt;/div&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,247 +1,157 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module fs</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module fs</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The fs module provides filesystem functions to Hilbish. While Luas standard
library has some I/O functions, theyre missing a lot of the basics. The <code>fs</code>
library offers more functions and will work on any operating system Hilbish does.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#abs" rel="noopener noreferrer">abs(path) -&gt; string</a></td>
<td>Returns an absolute version of the <code>path</code>.</td>
</tr>
<tr>
<td><a href="#basename" rel="noopener noreferrer">basename(path) -&gt; string</a></td>
<td>Returns the “basename,” or the last part of the provided <code>path</code>. If path is empty,</td>
</tr>
<tr>
<td><a href="#cd" rel="noopener noreferrer">cd(dir)</a></td>
<td>Changes Hilbishs directory to <code>dir</code>.</td>
</tr>
<tr>
<td><a href="#dir" rel="noopener noreferrer">dir(path) -&gt; string</a></td>
<td>Returns the directory part of <code>path</code>. If a file path like</td>
</tr>
<tr>
<td><a href="#glob" rel="noopener noreferrer">glob(pattern) -&gt; matches (table)</a></td>
<td>Match all files based on the provided <code>pattern</code>.</td>
</tr>
<tr>
<td><a href="#join" rel="noopener noreferrer">join(…path) -&gt; string</a></td>
<td>Takes any list of paths and joins them based on the operating systems path separator.</td>
</tr>
<tr>
<td><a href="#mkdir" rel="noopener noreferrer">mkdir(name, recursive)</a></td>
<td>Creates a new directory with the provided <code>name</code>.</td>
</tr>
<tr>
<td><a href="#pipe" rel="noopener noreferrer">fpipe() -&gt; File, File</a></td>
<td>Returns a pair of connected files, also known as a pipe.</td>
</tr>
<tr>
<td><a href="#readdir" rel="noopener noreferrer">readdir(path) -&gt; table[string]</a></td>
<td>Returns a list of all files and directories in the provided path.</td>
</tr>
<tr>
<td><a href="#stat" rel="noopener noreferrer">stat(path) -&gt; {}</a></td>
<td>Returns the information about a given <code>path</code>.</td>
</tr>
</tbody>
</table>
<h2>Static module fields</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>pathSep</td>
<td>The operating systems path separator.</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module fs</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module fs</h1><h2 class="font-bold text-3xl" id="Introduction">Introduction</h2><p>The fs module provides filesystem functions to Hilbish. While Lua&#39;s standard
library has some I/O functions, they&#39;re missing a lot of the basics. The <code>fs</code>
library offers more functions and will work on any operating system Hilbish does.</p><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;abs&quot;&gt;abs(path)--&gt;-string&lt;/a&gt;|Returns-an-absolute-version-of-the-path.|-|&lt;a-href=&quot;basename&quot;&gt;basename(path)--&gt;-string&lt;/a&gt;|Returns-the-&quot;basename&quot;-or-the-last-part-of-the-provided-path.-If-path-is-empty|-|&lt;a-href=&quot;cd&quot;&gt;cd(dir)&lt;/a&gt;|Changes-Hilbish&#39;s-directory-to-dir.|-|&lt;a-href=&quot;dir&quot;&gt;dir(path)--&gt;-string&lt;/a&gt;|Returns-the-directory-part-of-path.-If-a-file-path-like|-|&lt;a-href=&quot;glob&quot;&gt;glob(pattern)--&gt;-matches-(table)&lt;/a&gt;|Match-all-files-based-on-the-provided-pattern.|-|&lt;a-href=&quot;join&quot;&gt;join(...path)--&gt;-string&lt;/a&gt;|Takes-any-list-of-paths-and-joins-them-based-on-the-operating-system&#39;s-path-separator.|-|&lt;a-href=&quot;mkdir&quot;&gt;mkdir(name-recursive)&lt;/a&gt;|Creates-a-new-directory-with-the-provided-name.|-|&lt;a-href=&quot;pipe&quot;&gt;fpipe()--&gt;-File-File&lt;/a&gt;|Returns-a-pair-of-connected-files-also-known-as-a-pipe.|-|&lt;a-href=&quot;readdir&quot;&gt;readdir(path)--&gt;-table[string]&lt;/a&gt;|Returns-a-list-of-all-files-and-directories-in-the-provided-path.|-|&lt;a-href=&quot;stat&quot;&gt;stat(path)--&gt;-{}&lt;/a&gt;|Returns-the-information-about-a-given-path.|">Functions
|||
|----|----|
|&lt;a href=&quot;#abs&quot;&gt;abs(path) -&gt; string&lt;/a&gt;|Returns an absolute version of the <code>path</code>.|
|&lt;a href=&quot;#basename&quot;&gt;basename(path) -&gt; string&lt;/a&gt;|Returns the &quot;basename,&quot; or the last part of the provided <code>path</code>. If path is empty,|
|&lt;a href=&quot;#cd&quot;&gt;cd(dir)&lt;/a&gt;|Changes Hilbish&#39;s directory to <code>dir</code>.|
|&lt;a href=&quot;#dir&quot;&gt;dir(path) -&gt; string&lt;/a&gt;|Returns the directory part of <code>path</code>. If a file path like|
|&lt;a href=&quot;#glob&quot;&gt;glob(pattern) -&gt; matches (table)&lt;/a&gt;|Match all files based on the provided <code>pattern</code>.|
|&lt;a href=&quot;#join&quot;&gt;join(...path) -&gt; string&lt;/a&gt;|Takes any list of paths and joins them based on the operating system&#39;s path separator.|
|&lt;a href=&quot;#mkdir&quot;&gt;mkdir(name, recursive)&lt;/a&gt;|Creates a new directory with the provided <code>name</code>.|
|&lt;a href=&quot;#pipe&quot;&gt;fpipe() -&gt; File, File&lt;/a&gt;|Returns a pair of connected files, also known as a pipe.|
|&lt;a href=&quot;#readdir&quot;&gt;readdir(path) -&gt; table[string]&lt;/a&gt;|Returns a list of all files and directories in the provided path.|
|&lt;a href=&quot;#stat&quot;&gt;stat(path) -&gt; {}&lt;/a&gt;|Returns the information about a given <code>path</code>.|</h2><h2 class="font-bold text-3xl" id="Static-module-fields-|||-|----|----|-|pathSep|The-operating-system&#39;s-path-separator.|">Static module fields
|||
|----|----|
|pathSep|The operating system&#39;s path separator.|</h2><p>&lt;hr&gt;
&lt;div id=&#39;abs&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
fs.abs(path) -&gt; string
<a href="#abs" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns an absolute version of the <code>path</code>.<br>
This can be used to resolve short paths like <code>..</code> to <code>/home/user</code>.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>path</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#abs&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns an absolute version of the <code>path</code>.
This can be used to resolve short paths like <code>..</code> to <code>/home/user</code>. </p><p class="font-bold text-xl" id="Parameters-string-**path**">Parameters
<code>string</code> **<code>path</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;basename&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
fs.basename(path) -&gt; string
<a href="#basename" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns the “basename,” or the last part of the provided <code>path</code>. If path is empty,<br>
<code>.</code> will be returned.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>path</code></strong><br>
Path to get the base name of.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#basename&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns the &quot;basename,&quot; or the last part of the provided <code>path</code>. If path is empty,
<code>.</code> will be returned. </p><p class="font-bold text-xl" id="Parameters-string-**path**---Path-to-get-the-base-name-of.">Parameters
<code>string</code> **<code>path</code>**
Path to get the base name of.</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;cd&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
fs.cd(dir)
<a href="#cd" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Changes Hilbishs directory to <code>dir</code>.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>dir</code></strong><br>
Path to change directory to.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#cd&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Changes Hilbish&#39;s directory to <code>dir</code>. </p><p class="font-bold text-xl" id="Parameters-string-**dir**---Path-to-change-directory-to.">Parameters
<code>string</code> **<code>dir</code>**
Path to change directory to.</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;dir&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
fs.dir(path) -&gt; string
<a href="#dir" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns the directory part of <code>path</code>. If a file path like<br>
<code>~/Documents/doc.txt</code> then this function will return <code>~/Documents</code>.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>path</code></strong><br>
Path to get the directory for.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#dir&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns the directory part of <code>path</code>. If a file path like
<code>~/Documents/doc.txt</code> then this function will return <code>~/Documents</code>. </p><p class="font-bold text-xl" id="Parameters-string-**path**---Path-to-get-the-directory-for.">Parameters
<code>string</code> **<code>path</code>**
Path to get the directory for.</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;glob&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
fs.glob(pattern) -&gt; matches (table)
<a href="#glob" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Match all files based on the provided <code>pattern</code>.<br>
For the syntax refer to Gos filepath.Match function: <a href="https://pkg.go.dev/path/filepath#Match" rel="noopener noreferrer">https://pkg.go.dev/path/filepath#Match</a></p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>pattern</code></strong><br>
Pattern to compare files with.</p>
<h4>Example</h4>
<pre><code><span><span>--[[</span>
</span><span><span> Within a folder that contains the following files:</span>
</span><span><span> a.txt</span>
</span><span><span> init.lua</span>
</span><span><span> code.lua</span>
</span><span><span> doc.pdf</span>
</span><span><span>]]</span><span>--</span>
</span><span><span>local</span> <span>matches</span> <span>=</span> <span>fs</span><span>.</span><span>glob</span> <span>'./*.lua'</span>
</span><span><span>print</span><span>(</span><span>matches</span><span>)</span>
</span><span><span>-- -&gt; &lbrace;'init.lua', 'code.lua'&rbrace;</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#glob&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Match all files based on the provided <code>pattern</code>.
For the syntax&#39; refer to Go&#39;s filepath.Match function: https://pkg.go.dev/path/filepath#Match </p><p class="font-bold text-xl" id="Parameters-string-**pattern**---Pattern-to-compare-files-with.">Parameters
<code>string</code> **<code>pattern</code>**
Pattern to compare files with.</p><p class="font-bold text-xl" id="Example-lua---[[- Within-a-folder-that-contains-the-following-files:- a.txt- init.lua- code.lua- doc.pdf-]]---local-matches-=-fs.glob-&#39;./*.lua&#39;-print(matches)-----&gt;-{&#39;init.lua&#39;-&#39;code.lua&#39;}--&lt;/div&gt;">Example
<code>lua
--[[
Within a folder that contains the following files:
a.txt
init.lua
code.lua
doc.pdf
]]--
local matches = fs.glob &#39;./*.lua&#39;
print(matches)
-- -&gt; {&#39;init.lua&#39;, &#39;code.lua&#39;}
</code>
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;join&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
fs.join(...path) -&gt; string
<a href="#join" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Takes any list of paths and joins them based on the operating systems path separator.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>path</code></strong> (This type is variadic. You can pass an infinite amount of parameters with this type.)<br>
Paths to join together</p>
<h4>Example</h4>
<pre><code><span><span>-- This prints the directory for Hilbish's config!</span>
</span><span><span>print</span><span>(</span><span>fs</span><span>.</span><span>join</span><span>(</span><span>hilbish</span><span>.</span><span>userDir</span><span>.</span><span>config</span><span>,</span> <span>'hilbish'</span><span>)</span><span>)</span>
</span><span><span>-- -&gt; '/home/user/.config/hilbish' on Linux</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#join&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Takes any list of paths and joins them based on the operating system&#39;s path separator. </p><p class="font-bold text-xl" id="Parameters-string-**path**-(This-type-is-variadic.-You-can-pass-an-infinite-amount-of-parameters-with-this-type.)---Paths-to-join-together">Parameters
<code>string</code> **<code>path</code>** (This type is variadic. You can pass an infinite amount of parameters with this type.)
Paths to join together</p><p class="font-bold text-xl" id="Example-lua----This-prints-the-directory-for-Hilbish&#39;s-config-print(fs.join(hilbish.userDir.config-&#39;hilbish&#39;))-----&gt;-&#39;/home/user/.config/hilbish&#39;-on-Linux--&lt;/div&gt;">Example
<code>lua
-- This prints the directory for Hilbish&#39;s config!
print(fs.join(hilbish.userDir.config, &#39;hilbish&#39;))
-- -&gt; &#39;/home/user/.config/hilbish&#39; on Linux
</code>
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;mkdir&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
fs.mkdir(name, recursive)
<a href="#mkdir" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Creates a new directory with the provided <code>name</code>.<br>
With <code>recursive</code>, mkdir will create parent directories.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>name</code></strong><br>
Name of the directory</p>
<p><code>boolean</code> <strong><code>recursive</code></strong><br>
Whether to create parent directories for the provided name</p>
<h4>Example</h4>
<pre><code><span><span>-- This will create the directory foo, then create the directory bar in the</span>
</span><span><span>-- foo directory. If recursive is false in this case, it will fail.</span>
</span><span><span>fs</span><span>.</span><span>mkdir</span><span>(</span><span>'./foo/bar'</span><span>,</span> <span>true</span><span>)</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#mkdir&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Creates a new directory with the provided <code>name</code>.
With <code>recursive</code>, mkdir will create parent directories. </p><p class="font-bold text-xl" id="Parameters-string-**name**---Name-of-the-directory">Parameters
<code>string</code> **<code>name</code>**
Name of the directory</p><p><code>boolean</code> **<code>recursive</code>**
Whether to create parent directories for the provided name</p><p class="font-bold text-xl" id="Example-lua----This-will-create-the-directory-foo-then-create-the-directory-bar-in-the----foo-directory.-If-recursive-is-false-in-this-case-it-will-fail.-fs.mkdir(&#39;./foo/bar&#39;-true)--&lt;/div&gt;">Example
<code>lua
-- This will create the directory foo, then create the directory bar in the
-- foo directory. If recursive is false in this case, it will fail.
fs.mkdir(&#39;./foo/bar&#39;, true)
</code>
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;pipe&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
fs.fpipe() -&gt; File, File
<a href="#pipe" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns a pair of connected files, also known as a pipe.<br>
The type returned is a Lua file, same as returned from <code>io</code> functions.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#pipe&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns a pair of connected files, also known as a pipe.
The type returned is a Lua file, same as returned from <code>io</code> functions. </p><p class="font-bold text-xl" id="Parameters-This-function-has-no-parameters.---&lt;/div&gt;">Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;readdir&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
fs.readdir(path) -&gt; table[string]
<a href="#readdir" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns a list of all files and directories in the provided path.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>dir</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#readdir&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns a list of all files and directories in the provided path. </p><p class="font-bold text-xl" id="Parameters-string-**dir**">Parameters
<code>string</code> **<code>dir</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;stat&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
fs.stat(path) -&gt; {}
<a href="#stat" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns the information about a given <code>path</code>.<br>
The returned table contains the following values:<br>
name (string) - Name of the path<br>
size (number) - Size of the path in bytes<br>
mode (string) - Unix permission mode in an octal format string (with leading 0)<br>
isDir (boolean) - If the path is a directory</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>path</code></strong></p>
<h4>Example</h4>
<pre><code><span><span>local</span> <span>inspect</span> <span>=</span> <span>require</span> <span>'inspect'</span>
</span><span>
</span><span><span>local</span> <span>stat</span> <span>=</span> <span>fs</span><span>.</span><span>stat</span> <span>'~'</span>
</span><span><span>print</span><span>(</span><span>inspect</span><span>(</span><span>stat</span><span>)</span><span>)</span>
</span><span><span>--[[</span>
</span><span><span>Would print the following:</span>
</span><span><span>&lbrace;</span>
</span><span><span> isDir = true,</span>
</span><span><span> mode = "0755",</span>
</span><span><span> name = "username",</span>
</span><span><span> size = 12288</span>
</span><span><span>&rbrace;</span>
</span><span><span>]]</span><span>--</span>
</span></code></pre>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#stat&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns the information about a given <code>path</code>.
The returned table contains the following values:
name (string) - Name of the path
size (number) - Size of the path in bytes
mode (string) - Unix permission mode in an octal format string (with leading 0)
isDir (boolean) - If the path is a directory </p><p class="font-bold text-xl">Parameters
<code>string</code> **<code>path</code>** </p><p class="font-bold text-xl" id="Example-lua-local-inspect-=-require-&#39;inspect&#39;">Example
<code>lua
local inspect = require &#39;inspect&#39;</code></p><p>local stat = fs.stat &#39;~&#39;
print(inspect(stat))
--[[
Would print the following:
{
isDir = true,
mode = &quot;0755&quot;,
name = &quot;username&quot;,
size = 12288
}
]]--
<code>
&lt;/div&gt;</code></p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,59 +1,37 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.abbr</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish.abbr</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The abbr module manages Hilbish abbreviations. These are words that can be replaced
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.abbr</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish.abbr</h1><h2 class="font-bold text-3xl" id="Introduction-The-abbr-module-manages-Hilbish-abbreviations.-These-are-words-that-can-be-replaced-with-longer-command-line-strings-when-entered.-As-an-example-git-push-can-be-abbreviated-to-gp.-When-the-user-types-gp-into-the-command-line-after-hitting-space-or-enter-it-will-expand-to-git-push.-Abbreviations-can-be-used-as-an-alternative-to-aliases.-They-are-saved-entirely-in-the-history-Instead-of-the-aliased-form-of-the-same-command.">Introduction
The abbr module manages Hilbish abbreviations. These are words that can be replaced
with longer command line strings when entered.
As an example, <code>git push</code> can be abbreviated to <code>gp</code>. When the user types
<code>gp</code> into the command line, after hitting space or enter, it will expand to <code>git push</code>.
Abbreviations can be used as an alternative to aliases. They are saved entirely in the history
Instead of the aliased form of the same command.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#remove" rel="noopener noreferrer">remove(abbr)</a></td>
<td>Removes the named <code>abbr</code>.</td>
</tr>
<tr>
<td><a href="#add" rel="noopener noreferrer">add(abbr, expanded</a></td>
<td>function, opts)</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
Instead of the aliased form of the same command.</h2><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;remove&quot;&gt;remove(abbr)&lt;/a&gt;|Removes-the-named-abbr.|-|&lt;a-href=&quot;add&quot;&gt;add(abbr-expanded|function-opts)&lt;/a&gt;|Adds-an-abbreviation.-The-abbr-is-the-abbreviation-itself|-&lt;hr&gt;-&lt;div-id=&#39;add&#39;&gt;-&lt;h4-class=&#39;heading&#39;&gt;-hilbish.abbr.add(abbr-expanded|function-opts)-&lt;a-href=&quot;add&quot;-class=&#39;heading-link&#39;&gt;- &lt;i-class=&quot;fas-fa-paperclip&quot;&gt;&lt;/i&gt;-&lt;/a&gt;-&lt;/h4&gt;">Functions
|||
|----|----|
|&lt;a href=&quot;#remove&quot;&gt;remove(abbr)&lt;/a&gt;|Removes the named <code>abbr</code>.|
|&lt;a href=&quot;#add&quot;&gt;add(abbr, expanded|function, opts)&lt;/a&gt;|Adds an abbreviation. The <code>abbr</code> is the abbreviation itself,|
&lt;hr&gt;
&lt;div id=&#39;add&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.abbr.add(abbr, expanded|function, opts)
<a href="#add" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Adds an abbreviation. The <code>abbr</code> is the abbreviation itself,
&lt;a href=&quot;#add&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</h2><p>Adds an abbreviation. The <code>abbr</code> is the abbreviation itself,
while <code>expanded</code> is what the abbreviation should expand to.
It can be either a function or a string. If it is a function, it will expand to what
the function returns.
<code>opts</code> is a table that accepts 1 key: <code>anywhere</code>.
<code>opts.anywhere</code> defines whether the abbr expands anywhere in the command line or not,
whereas the default behavior is only at the beginning of the line</p>
<h4>Parameters</h4>
<p><code>abbr</code> <strong><code>string</code></strong></p>
<p><code>expanded|function</code> <strong><code>string</code></strong></p>
<p><code>opts</code> <strong><code>table</code></strong></p>
</div>
<hr>
<div>
<h4>
whereas the default behavior is only at the beginning of the line
#### Parameters
<code>abbr</code> **<code>string</code>** </p><p><code>expanded|function</code> **<code>string</code>** </p><p><code>opts</code> **<code>table</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;remove&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.abbr.remove(abbr)
<a href="#remove" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Removes the named <code>abbr</code>.</p>
<h4>Parameters</h4>
<p><code>abbr</code> <strong><code>string</code></strong></p>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#remove&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Removes the named <code>abbr</code>.
#### Parameters
<code>abbr</code> **<code>string</code>** </p><p>&lt;/div&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,84 +1,48 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.aliases</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish.aliases</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The alias interface deals with all command aliases in Hilbish.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#aliases.add" rel="noopener noreferrer">add(alias, cmd)</a></td>
<td>This is an alias (ha) for the <a href="../#alias" rel="noopener noreferrer">hilbish.alias</a> function.</td>
</tr>
<tr>
<td><a href="#aliases.delete" rel="noopener noreferrer">delete(name)</a></td>
<td>Removes an alias.</td>
</tr>
<tr>
<td><a href="#aliases.list" rel="noopener noreferrer">list() -&gt; table[string, string]</a></td>
<td>Get a table of all aliases, with string keys as the alias and the value as the command.</td>
</tr>
<tr>
<td><a href="#aliases.resolve" rel="noopener noreferrer">resolve(alias) -&gt; string?</a></td>
<td>Resolves an alias to its original command. Will thrown an error if the alias doesnt exist.</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.aliases</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish.aliases</h1><h2 class="font-bold text-3xl" id="Introduction-The-alias-interface-deals-with-all-command-aliases-in-Hilbish.">Introduction
The alias interface deals with all command aliases in Hilbish.</h2><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;aliases.add&quot;&gt;add(alias-cmd)&lt;/a&gt;|This-is-an-alias-(ha)-for-the-hilbish.alias-function.|-|&lt;a-href=&quot;aliases.delete&quot;&gt;delete(name)&lt;/a&gt;|Removes-an-alias.|-|&lt;a-href=&quot;aliases.list&quot;&gt;list()--&gt;-table[string-string]&lt;/a&gt;|Get-a-table-of-all-aliases-with-string-keys-as-the-alias-and-the-value-as-the-command.|-|&lt;a-href=&quot;aliases.resolve&quot;&gt;resolve(alias)--&gt;-string&lt;/a&gt;|Resolves-an-alias-to-its-original-command.-Will-thrown-an-error-if-the-alias-doesn&#39;t-exist.|">Functions
|||
|----|----|
|&lt;a href=&quot;#aliases.add&quot;&gt;add(alias, cmd)&lt;/a&gt;|This is an alias (ha) for the <a href="../#alias">hilbish.alias</a> function.|
|&lt;a href=&quot;#aliases.delete&quot;&gt;delete(name)&lt;/a&gt;|Removes an alias.|
|&lt;a href=&quot;#aliases.list&quot;&gt;list() -&gt; table[string, string]&lt;/a&gt;|Get a table of all aliases, with string keys as the alias and the value as the command.|
|&lt;a href=&quot;#aliases.resolve&quot;&gt;resolve(alias) -&gt; string?&lt;/a&gt;|Resolves an alias to its original command. Will thrown an error if the alias doesn&#39;t exist.|</h2><p>&lt;hr&gt;
&lt;div id=&#39;aliases.add&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.aliases.add(alias, cmd)
<a href="#aliases.add" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>This is an alias (ha) for the <a href="../#alias" rel="noopener noreferrer">hilbish.alias</a> function.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#aliases.add&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>This is an alias (ha) for the <a href="../#alias">hilbish.alias</a> function. </p><p class="font-bold text-xl" id="Parameters-This-function-has-no-parameters.---&lt;/div&gt;">Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;aliases.delete&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.aliases.delete(name)
<a href="#aliases.delete" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Removes an alias.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>name</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#aliases.delete&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Removes an alias. </p><p class="font-bold text-xl" id="Parameters-string-**name**">Parameters
<code>string</code> **<code>name</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;aliases.list&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.aliases.list() -&gt; table[string, string]
<a href="#aliases.list" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Get a table of all aliases, with string keys as the alias and the value as the command.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
<h4>Example</h4>
<pre><code><span><span>hilbish</span><span>.</span><span>aliases</span><span>.</span><span>add</span><span>(</span><span>'hi'</span><span>,</span> <span>'echo hi'</span><span>)</span>
</span><span>
</span><span><span>local</span> <span>aliases</span> <span>=</span> <span>hilbish</span><span>.</span><span>aliases</span><span>.</span><span>list</span><span>(</span><span>)</span>
</span><span><span>-- -&gt; &lbrace;hi = 'echo hi'&rbrace;</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#aliases.list&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Get a table of all aliases, with string keys as the alias and the value as the command. </p><p class="font-bold text-xl" id="Parameters-This-function-has-no-parameters.---Example-lua-hilbish.aliases.add(&#39;hi&#39;-&#39;echo-hi&#39;)">Parameters
This function has no parameters.
Example
<code>lua
hilbish.aliases.add(&#39;hi&#39;, &#39;echo hi&#39;)</code></p><p>local aliases = hilbish.aliases.list()
-- -&gt; {hi = &#39;echo hi&#39;}
<code>
&lt;/div&gt;</code></p><p>&lt;hr&gt;
&lt;div id=&#39;aliases.resolve&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.aliases.resolve(alias) -&gt; string?
<a href="#aliases.resolve" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Resolves an alias to its original command. Will thrown an error if the alias doesnt exist.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>alias</code></strong></p>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#aliases.resolve&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Resolves an alias to its original command. Will thrown an error if the alias doesn&#39;t exist. </p><p class="font-bold text-xl" id="Parameters-string-**alias**">Parameters
<code>string</code> **<code>alias</code>** </p><p>&lt;/div&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,123 +1,74 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.completion</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish.completion</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The completions interface deals with tab completions.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#completion.bins" rel="noopener noreferrer">bins(query, ctx, fields) -&gt; entries (table), prefix (string)</a></td>
<td>Return binaries/executables based on the provided parameters.</td>
</tr>
<tr>
<td><a href="#completion.call" rel="noopener noreferrer">call(name, query, ctx, fields) -&gt; completionGroups (table), prefix (string)</a></td>
<td>Calls a completer function. This is mainly used to call a command completer, which will have a <code>name</code></td>
</tr>
<tr>
<td><a href="#completion.files" rel="noopener noreferrer">files(query, ctx, fields) -&gt; entries (table), prefix (string)</a></td>
<td>Returns file matches based on the provided parameters.</td>
</tr>
<tr>
<td><a href="#completion.handler" rel="noopener noreferrer">handler(line, pos)</a></td>
<td>This function contains the general completion handler for Hilbish. This function handles</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.completion</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish.completion</h1><h2 class="font-bold text-3xl" id="Introduction-The-completions-interface-deals-with-tab-completions.">Introduction
The completions interface deals with tab completions.</h2><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;completion.bins&quot;&gt;bins(query-ctx-fields)--&gt;-entries-(table)-prefix-(string)&lt;/a&gt;|Return-binaries/executables-based-on-the-provided-parameters.|-|&lt;a-href=&quot;completion.call&quot;&gt;call(name-query-ctx-fields)--&gt;-completionGroups-(table)-prefix-(string)&lt;/a&gt;|Calls-a-completer-function.-This-is-mainly-used-to-call-a-command-completer-which-will-have-a-name|-|&lt;a-href=&quot;completion.files&quot;&gt;files(query-ctx-fields)--&gt;-entries-(table)-prefix-(string)&lt;/a&gt;|Returns-file-matches-based-on-the-provided-parameters.|-|&lt;a-href=&quot;completion.handler&quot;&gt;handler(line-pos)&lt;/a&gt;|This-function-contains-the-general-completion-handler-for-Hilbish.-This-function-handles|">Functions
|||
|----|----|
|&lt;a href=&quot;#completion.bins&quot;&gt;bins(query, ctx, fields) -&gt; entries (table), prefix (string)&lt;/a&gt;|Return binaries/executables based on the provided parameters.|
|&lt;a href=&quot;#completion.call&quot;&gt;call(name, query, ctx, fields) -&gt; completionGroups (table), prefix (string)&lt;/a&gt;|Calls a completer function. This is mainly used to call a command completer, which will have a <code>name</code>|
|&lt;a href=&quot;#completion.files&quot;&gt;files(query, ctx, fields) -&gt; entries (table), prefix (string)&lt;/a&gt;|Returns file matches based on the provided parameters.|
|&lt;a href=&quot;#completion.handler&quot;&gt;handler(line, pos)&lt;/a&gt;|This function contains the general completion handler for Hilbish. This function handles|</h2><p>&lt;hr&gt;
&lt;div id=&#39;completion.bins&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.completion.bins(query, ctx, fields) -&gt; entries (table), prefix (string)
<a href="#completion.bins" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Return binaries/executables based on the provided parameters.<br>
This function is meant to be used as a helper in a command completion handler.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>query</code></strong></p>
<p><code>string</code> <strong><code>ctx</code></strong></p>
<p><code>table</code> <strong><code>fields</code></strong></p>
<h4>Example</h4>
<pre><code><span><span>-- an extremely simple completer for sudo.</span>
</span><span><span>hilbish</span><span>.</span><span>complete</span><span>(</span><span>'command.sudo'</span><span>,</span> <span>function</span><span>(</span><span>query</span><span>,</span> <span>ctx</span><span>,</span> <span>fields</span><span>)</span>
</span><span> <span>table</span><span>.</span><span>remove</span><span>(</span><span>fields</span><span>,</span> <span>1</span><span>)</span>
</span><span> <span>if</span> <span>#</span><span>fields</span><span>[</span><span>1</span><span>]</span> <span>then</span>
</span><span> <span>-- return commands because sudo runs a command as root..!</span>
</span><span>
</span><span> <span>local</span> <span>entries</span><span>,</span> <span>pfx</span> <span>=</span> <span>hilbish</span><span>.</span><span>completion</span><span>.</span><span>bins</span><span>(</span><span>query</span><span>,</span> <span>ctx</span><span>,</span> <span>fields</span><span>)</span>
</span><span> <span>return</span> <span>&lbrace;</span>
</span><span> <span>type</span> <span>=</span> <span>'grid'</span><span>,</span>
</span><span> <span>items</span> <span>=</span> <span>entries</span>
</span><span> <span>&rbrace;</span><span>,</span> <span>pfx</span>
</span><span> <span>end</span>
</span><span>
</span><span> <span>-- ... else suggest files or anything else ..</span>
</span><span><span>end</span><span>)</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#completion.bins&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Return binaries/executables based on the provided parameters.
This function is meant to be used as a helper in a command completion handler. </p><p class="font-bold text-xl" id="Parameters-string-**query**">Parameters
<code>string</code> **<code>query</code>** </p><p><code>string</code> **<code>ctx</code>** </p><p><code>table</code> **<code>fields</code>** </p><p class="font-bold text-xl" id="Example-lua----an-extremely-simple-completer-for-sudo.-hilbish.complete(&#39;command.sudo&#39;-function(query-ctx-fields)- table.remove(fields-1)- if-fields[1]-then- ---return-commands-because-sudo-runs-a-command-as-root..">Example
<code>lua
-- an extremely simple completer for sudo.
hilbish.complete(&#39;command.sudo&#39;, function(query, ctx, fields)
table.remove(fields, 1)
if #fields[1] then
-- return commands because sudo runs a command as root..!</code></p><p> local entries, pfx = hilbish.completion.bins(query, ctx, fields)
return {
type = &#39;grid&#39;,
items = entries
}, pfx
end</p><p> -- ... else suggest files or anything else ..
end)
<code>
&lt;/div&gt;</code></p><p>&lt;hr&gt;
&lt;div id=&#39;completion.call&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.completion.call(name, query, ctx, fields) -&gt; completionGroups (table), prefix (string)
<a href="#completion.call" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Calls a completer function. This is mainly used to call a command completer, which will have a <code>name</code><br>
in the form of <code>command.name</code>, example: <code>command.git</code>.<br>
You can check the Completions doc or <code>doc completions</code> for info on the <code>completionGroups</code> return value.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>name</code></strong></p>
<p><code>string</code> <strong><code>query</code></strong></p>
<p><code>string</code> <strong><code>ctx</code></strong></p>
<p><code>table</code> <strong><code>fields</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#completion.call&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Calls a completer function. This is mainly used to call a command completer, which will have a <code>name</code>
in the form of <code>command.name</code>, example: <code>command.git</code>.
You can check the Completions doc or <code>doc completions</code> for info on the <code>completionGroups</code> return value. </p><p class="font-bold text-xl" id="Parameters-string-**name**">Parameters
<code>string</code> **<code>name</code>** </p><p><code>string</code> **<code>query</code>** </p><p><code>string</code> **<code>ctx</code>** </p><p><code>table</code> **<code>fields</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;completion.files&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.completion.files(query, ctx, fields) -&gt; entries (table), prefix (string)
<a href="#completion.files" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns file matches based on the provided parameters.<br>
This function is meant to be used as a helper in a command completion handler.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>query</code></strong></p>
<p><code>string</code> <strong><code>ctx</code></strong></p>
<p><code>table</code> <strong><code>fields</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#completion.files&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns file matches based on the provided parameters.
This function is meant to be used as a helper in a command completion handler. </p><p class="font-bold text-xl">Parameters
<code>string</code> **<code>query</code>** </p><p><code>string</code> **<code>ctx</code>** </p><p><code>table</code> **<code>fields</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;completion.handler&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.completion.handler(line, pos)
<a href="#completion.handler" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>This function contains the general completion handler for Hilbish. This function handles<br>
completion of everything, which includes calling other command handlers, binaries, and files.<br>
This function can be overriden to supply a custom handler. Note that alias resolution is required to be done in this function.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>line</code></strong><br>
The current Hilbish command line</p>
<p><code>number</code> <strong><code>pos</code></strong><br>
Numerical position of the cursor</p>
<h4>Example</h4>
<pre><code><span><span>-- stripped down version of the default implementation</span>
</span><span><span>function</span> <span>hilbish</span><span>.</span><span>completion</span><span>.</span><span>handler</span><span>(</span><span>line</span><span>,</span> <span>pos</span><span>)</span>
</span><span> <span>local</span> <span>query</span> <span>=</span> <span>fields</span><span>[</span><span>#</span><span>fields</span><span>]</span>
</span><span>
</span><span> <span>if</span> <span>#</span><span>fields</span> <span>==</span> <span>1</span> <span>then</span>
</span><span> <span>-- call bins handler here</span>
</span><span> <span>else</span>
</span><span> <span>-- call command completer or files completer here</span>
</span><span> <span>end</span>
</span><span><span>end</span>
</span></code></pre>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#completion.handler&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>This function contains the general completion handler for Hilbish. This function handles
completion of everything, which includes calling other command handlers, binaries, and files.
This function can be overriden to supply a custom handler. Note that alias resolution is required to be done in this function. </p><p class="font-bold text-xl" id="Parameters-string-**line**---The-current-Hilbish-command-line">Parameters
<code>string</code> **<code>line</code>**
The current Hilbish command line</p><p><code>number</code> **<code>pos</code>**
Numerical position of the cursor</p><p class="font-bold text-xl" id="Example-lua----stripped-down-version-of-the-default-implementation-function-hilbish.completion.handler(line-pos)- local-query-=-fields[fields]">Example
<code>lua
-- stripped down version of the default implementation
function hilbish.completion.handler(line, pos)
local query = fields[#fields]</code></p><p> if #fields == 1 then
-- call bins handler here
else
-- call command completer or files completer here
end
end
<code>
&lt;/div&gt;</code></p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,112 +1,62 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.editor</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish.editor</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The hilbish.editor interface provides functions to
directly interact with the line editor in use.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#editor.deleteByAmount" rel="noopener noreferrer">deleteByAmount(amount)</a></td>
<td>Deletes characters in the line by the given amount.</td>
</tr>
<tr>
<td><a href="#editor.getLine" rel="noopener noreferrer">getLine() -&gt; string</a></td>
<td>Returns the current input line.</td>
</tr>
<tr>
<td><a href="#editor.getVimRegister" rel="noopener noreferrer">getVimRegister(register) -&gt; string</a></td>
<td>Returns the text that is at the register.</td>
</tr>
<tr>
<td><a href="#editor.insert" rel="noopener noreferrer">insert(text)</a></td>
<td>Inserts text into the Hilbish command line.</td>
</tr>
<tr>
<td><a href="#editor.getChar" rel="noopener noreferrer">getChar() -&gt; string</a></td>
<td>Reads a keystroke from the user. This is in a format of something like Ctrl-L.</td>
</tr>
<tr>
<td><a href="#editor.setVimRegister" rel="noopener noreferrer">setVimRegister(register, text)</a></td>
<td>Sets the vim register at <code>register</code> to hold the passed text.</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.editor</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish.editor</h1><h2 class="font-bold text-3xl" id="Introduction-The-hilbish.editor-interface-provides-functions-to-directly-interact-with-the-line-editor-in-use.">Introduction
The hilbish.editor interface provides functions to
directly interact with the line editor in use.</h2><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;editor.deleteByAmount&quot;&gt;deleteByAmount(amount)&lt;/a&gt;|Deletes-characters-in-the-line-by-the-given-amount.|-|&lt;a-href=&quot;editor.getLine&quot;&gt;getLine()--&gt;-string&lt;/a&gt;|Returns-the-current-input-line.|-|&lt;a-href=&quot;editor.getVimRegister&quot;&gt;getVimRegister(register)--&gt;-string&lt;/a&gt;|Returns-the-text-that-is-at-the-register.|-|&lt;a-href=&quot;editor.insert&quot;&gt;insert(text)&lt;/a&gt;|Inserts-text-into-the-Hilbish-command-line.|-|&lt;a-href=&quot;editor.getChar&quot;&gt;getChar()--&gt;-string&lt;/a&gt;|Reads-a-keystroke-from-the-user.-This-is-in-a-format-of-something-like-Ctrl-L.|-|&lt;a-href=&quot;editor.setVimRegister&quot;&gt;setVimRegister(register-text)&lt;/a&gt;|Sets-the-vim-register-at-register-to-hold-the-passed-text.|">Functions
|||
|----|----|
|&lt;a href=&quot;#editor.deleteByAmount&quot;&gt;deleteByAmount(amount)&lt;/a&gt;|Deletes characters in the line by the given amount.|
|&lt;a href=&quot;#editor.getLine&quot;&gt;getLine() -&gt; string&lt;/a&gt;|Returns the current input line.|
|&lt;a href=&quot;#editor.getVimRegister&quot;&gt;getVimRegister(register) -&gt; string&lt;/a&gt;|Returns the text that is at the register.|
|&lt;a href=&quot;#editor.insert&quot;&gt;insert(text)&lt;/a&gt;|Inserts text into the Hilbish command line.|
|&lt;a href=&quot;#editor.getChar&quot;&gt;getChar() -&gt; string&lt;/a&gt;|Reads a keystroke from the user. This is in a format of something like Ctrl-L.|
|&lt;a href=&quot;#editor.setVimRegister&quot;&gt;setVimRegister(register, text)&lt;/a&gt;|Sets the vim register at <code>register</code> to hold the passed text.|</h2><p>&lt;hr&gt;
&lt;div id=&#39;editor.deleteByAmount&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.editor.deleteByAmount(amount)
<a href="#editor.deleteByAmount" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Deletes characters in the line by the given amount.</p>
<h4>Parameters</h4>
<p><code>number</code> <strong><code>amount</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#editor.deleteByAmount&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Deletes characters in the line by the given amount. </p><p class="font-bold text-xl" id="Parameters-number-**amount**">Parameters
<code>number</code> **<code>amount</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;editor.getLine&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.editor.getLine() -&gt; string
<a href="#editor.getLine" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns the current input line.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#editor.getLine&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns the current input line. </p><p class="font-bold text-xl" id="Parameters-This-function-has-no-parameters.---&lt;/div&gt;">Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;editor.getVimRegister&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.editor.getVimRegister(register) -&gt; string
<a href="#editor.getVimRegister" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns the text that is at the register.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>register</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#editor.getVimRegister&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns the text that is at the register. </p><p class="font-bold text-xl" id="Parameters-string-**register**">Parameters
<code>string</code> **<code>register</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;editor.insert&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.editor.insert(text)
<a href="#editor.insert" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Inserts text into the Hilbish command line.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>text</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#editor.insert&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Inserts text into the Hilbish command line. </p><p class="font-bold text-xl" id="Parameters-string-**text**">Parameters
<code>string</code> **<code>text</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;editor.getChar&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.editor.getChar() -&gt; string
<a href="#editor.getChar" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Reads a keystroke from the user. This is in a format of something like Ctrl-L.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#editor.getChar&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Reads a keystroke from the user. This is in a format of something like Ctrl-L. </p><p class="font-bold text-xl">Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;editor.setVimRegister&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.editor.setVimRegister(register, text)
<a href="#editor.setVimRegister" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Sets the vim register at <code>register</code> to hold the passed text.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>register</code></strong></p>
<p><code>string</code> <strong><code>text</code></strong></p>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#editor.setVimRegister&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Sets the vim register at <code>register</code> to hold the passed text. </p><p class="font-bold text-xl">Parameters
<code>string</code> **<code>register</code>** </p><p><code>string</code> **<code>text</code>** </p><p>&lt;/div&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,96 +1,55 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.history</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish.history</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The history interface deals with command history.
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.history</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish.history</h1><h2 class="font-bold text-3xl" id="Introduction-The-history-interface-deals-with-command-history.-This-includes-the-ability-to-override-functions-to-change-the-main-method-of-saving-history.">Introduction
The history interface deals with command history.
This includes the ability to override functions to change the main
method of saving history.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#history.add" rel="noopener noreferrer">add(cmd)</a></td>
<td>Adds a command to the history.</td>
</tr>
<tr>
<td><a href="#history.all" rel="noopener noreferrer">all() -&gt; table</a></td>
<td>Retrieves all history as a table.</td>
</tr>
<tr>
<td><a href="#history.clear" rel="noopener noreferrer">clear()</a></td>
<td>Deletes all commands from the history.</td>
</tr>
<tr>
<td><a href="#history.get" rel="noopener noreferrer">get(index)</a></td>
<td>Retrieves a command from the history based on the <code>index</code>.</td>
</tr>
<tr>
<td><a href="#history.size" rel="noopener noreferrer">size() -&gt; number</a></td>
<td>Returns the amount of commands in the history.</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
method of saving history.</h2><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;history.add&quot;&gt;add(cmd)&lt;/a&gt;|Adds-a-command-to-the-history.|-|&lt;a-href=&quot;history.all&quot;&gt;all()--&gt;-table&lt;/a&gt;|Retrieves-all-history-as-a-table.|-|&lt;a-href=&quot;history.clear&quot;&gt;clear()&lt;/a&gt;|Deletes-all-commands-from-the-history.|-|&lt;a-href=&quot;history.get&quot;&gt;get(index)&lt;/a&gt;|Retrieves-a-command-from-the-history-based-on-the-index.|-|&lt;a-href=&quot;history.size&quot;&gt;size()--&gt;-number&lt;/a&gt;|Returns-the-amount-of-commands-in-the-history.|">Functions
|||
|----|----|
|&lt;a href=&quot;#history.add&quot;&gt;add(cmd)&lt;/a&gt;|Adds a command to the history.|
|&lt;a href=&quot;#history.all&quot;&gt;all() -&gt; table&lt;/a&gt;|Retrieves all history as a table.|
|&lt;a href=&quot;#history.clear&quot;&gt;clear()&lt;/a&gt;|Deletes all commands from the history.|
|&lt;a href=&quot;#history.get&quot;&gt;get(index)&lt;/a&gt;|Retrieves a command from the history based on the <code>index</code>.|
|&lt;a href=&quot;#history.size&quot;&gt;size() -&gt; number&lt;/a&gt;|Returns the amount of commands in the history.|</h2><p>&lt;hr&gt;
&lt;div id=&#39;history.add&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.history.add(cmd)
<a href="#history.add" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Adds a command to the history.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>cmd</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#history.add&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Adds a command to the history. </p><p class="font-bold text-xl" id="Parameters-string-**cmd**">Parameters
<code>string</code> **<code>cmd</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;history.all&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.history.all() -&gt; table
<a href="#history.all" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Retrieves all history as a table.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#history.all&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Retrieves all history as a table. </p><p class="font-bold text-xl" id="Parameters-This-function-has-no-parameters.---&lt;/div&gt;">Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;history.clear&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.history.clear()
<a href="#history.clear" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Deletes all commands from the history.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#history.clear&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Deletes all commands from the history. </p><p class="font-bold text-xl">Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;history.get&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.history.get(index)
<a href="#history.get" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Retrieves a command from the history based on the <code>index</code>.</p>
<h4>Parameters</h4>
<p><code>number</code> <strong><code>index</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#history.get&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Retrieves a command from the history based on the <code>index</code>. </p><p class="font-bold text-xl" id="Parameters-number-**index**">Parameters
<code>number</code> **<code>index</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;history.size&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.history.size() -&gt; number
<a href="#history.size" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns the amount of commands in the history.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#history.size&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns the amount of commands in the history. </p><p class="font-bold text-xl">Parameters
This function has no parameters.
&lt;/div&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,158 +1,78 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.jobs</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish.jobs</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>Manage interactive jobs in Hilbish via Lua.</p>
<p>Jobs are the name of background tasks/commands. A job can be started via
interactive usage or with the functions defined below for use in external runners.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#jobs.add" rel="noopener noreferrer">add(cmdstr, args, execPath)</a></td>
<td>Creates a new job. This function does not run the job. This function is intended to be</td>
</tr>
<tr>
<td><a href="#jobs.all" rel="noopener noreferrer">all() -&gt; table[@Job]</a></td>
<td>Returns a table of all job objects.</td>
</tr>
<tr>
<td><a href="#jobs.disown" rel="noopener noreferrer">disown(id)</a></td>
<td>Disowns a job. This simply deletes it from the list of jobs without stopping it.</td>
</tr>
<tr>
<td><a href="#jobs.get" rel="noopener noreferrer">get(id) -&gt; @Job</a></td>
<td>Get a job object via its ID.</td>
</tr>
<tr>
<td><a href="#jobs.last" rel="noopener noreferrer">last() -&gt; @Job</a></td>
<td>Returns the last added job to the table.</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.jobs</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish.jobs</h1><h2 class="font-bold text-3xl" id="Introduction">Introduction</h2><p>Manage interactive jobs in Hilbish via Lua.</p><p>Jobs are the name of background tasks/commands. A job can be started via
interactive usage or with the functions defined below for use in external runners.</p><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;jobs.add&quot;&gt;add(cmdstr-args-execPath)&lt;/a&gt;|Creates-a-new-job.-This-function-does-not-run-the-job.-This-function-is-intended-to-be|-|&lt;a-href=&quot;jobs.all&quot;&gt;all()--&gt;-table[@Job]&lt;/a&gt;|Returns-a-table-of-all-job-objects.|-|&lt;a-href=&quot;jobs.disown&quot;&gt;disown(id)&lt;/a&gt;|Disowns-a-job.-This-simply-deletes-it-from-the-list-of-jobs-without-stopping-it.|-|&lt;a-href=&quot;jobs.get&quot;&gt;get(id)--&gt;-@Job&lt;/a&gt;|Get-a-job-object-via-its-ID.|-|&lt;a-href=&quot;jobs.last&quot;&gt;last()--&gt;-@Job&lt;/a&gt;|Returns-the-last-added-job-to-the-table.|">Functions
|||
|----|----|
|&lt;a href=&quot;#jobs.add&quot;&gt;add(cmdstr, args, execPath)&lt;/a&gt;|Creates a new job. This function does not run the job. This function is intended to be|
|&lt;a href=&quot;#jobs.all&quot;&gt;all() -&gt; table[@Job]&lt;/a&gt;|Returns a table of all job objects.|
|&lt;a href=&quot;#jobs.disown&quot;&gt;disown(id)&lt;/a&gt;|Disowns a job. This simply deletes it from the list of jobs without stopping it.|
|&lt;a href=&quot;#jobs.get&quot;&gt;get(id) -&gt; @Job&lt;/a&gt;|Get a job object via its ID.|
|&lt;a href=&quot;#jobs.last&quot;&gt;last() -&gt; @Job&lt;/a&gt;|Returns the last added job to the table.|</h2><p>&lt;hr&gt;
&lt;div id=&#39;jobs.add&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.jobs.add(cmdstr, args, execPath)
<a href="#jobs.add" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Creates a new job. This function does not run the job. This function is intended to be<br>
used by runners, but can also be used to create jobs via Lua. Commanders cannot be ran as jobs.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>cmdstr</code></strong><br>
String that a user would write for the job</p>
<p><code>table</code> <strong><code>args</code></strong><br>
Arguments for the commands. Has to include the name of the command.</p>
<p><code>string</code> <strong><code>execPath</code></strong><br>
Binary to use to run the command. Needs to be an absolute path.</p>
<h4>Example</h4>
<pre><code><span><span>hilbish</span><span>.</span><span>jobs</span><span>.</span><span>add</span><span>(</span><span>'go build'</span><span>,</span> <span>&lbrace;</span><span>'go'</span><span>,</span> <span>'build'</span><span>&rbrace;</span><span>,</span> <span>'/usr/bin/go'</span><span>)</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
hilbish.jobs.all() -&gt; table[<a href="/Hilbish/docs/api/hilbish/hilbish.jobs/#job" rel="noopener noreferrer">Job</a>]
<a href="#jobs.all" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns a table of all job objects.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#jobs.add&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Creates a new job. This function does not run the job. This function is intended to be
used by runners, but can also be used to create jobs via Lua. Commanders cannot be ran as jobs. </p><p class="font-bold text-xl" id="Parameters-string-**cmdstr**---String-that-a-user-would-write-for-the-job">Parameters
<code>string</code> **<code>cmdstr</code>**
String that a user would write for the job</p><p><code>table</code> **<code>args</code>**
Arguments for the commands. Has to include the name of the command.</p><p><code>string</code> **<code>execPath</code>**
Binary to use to run the command. Needs to be an absolute path.</p><p class="font-bold text-xl" id="Example-lua-hilbish.jobs.add(&#39;go-build&#39;-{&#39;go&#39;-&#39;build&#39;}-&#39;/usr/bin/go&#39;)--&lt;/div&gt;">Example
<code>lua
hilbish.jobs.add(&#39;go build&#39;, {&#39;go&#39;, &#39;build&#39;}, &#39;/usr/bin/go&#39;)
</code>
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;jobs.all&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.jobs.all() -&gt; table[&lt;a href=&quot;/Hilbish/docs/api/hilbish/hilbish.jobs/#job&quot; style=&quot;text-decoration: none;&quot; id=&quot;lol&quot;&gt;Job&lt;/a&gt;]
&lt;a href=&quot;#jobs.all&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns a table of all job objects. </p><p class="font-bold text-xl" id="Parameters-This-function-has-no-parameters.---&lt;/div&gt;">Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;jobs.disown&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.jobs.disown(id)
<a href="#jobs.disown" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Disowns a job. This simply deletes it from the list of jobs without stopping it.</p>
<h4>Parameters</h4>
<p><code>number</code> <strong><code>id</code></strong></p>
</div>
<hr>
<div>
<h4>
hilbish.jobs.get(id) -&gt; <a href="/Hilbish/docs/api/hilbish/hilbish.jobs/#job" rel="noopener noreferrer">Job</a>
<a href="#jobs.get" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Get a job object via its ID.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
hilbish.jobs.last() -&gt; <a href="/Hilbish/docs/api/hilbish/hilbish.jobs/#job" rel="noopener noreferrer">Job</a>
<a href="#jobs.last" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns the last added job to the table.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<h2>Types</h2>
<hr>
<h2>Job</h2>
<p>The Job type describes a Hilbish job.</p>
<h2>Object properties</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>cmd</td>
<td>The user entered command string for the job.</td>
</tr>
<tr>
<td>running</td>
<td>Whether the job is running or not.</td>
</tr>
<tr>
<td>id</td>
<td>The ID of the job in the job table</td>
</tr>
<tr>
<td>pid</td>
<td>The Process ID</td>
</tr>
<tr>
<td>exitCode</td>
<td>The last exit code of the job.</td>
</tr>
<tr>
<td>stdout</td>
<td>The standard output of the job. This just means the normal logs of the process.</td>
</tr>
<tr>
<td>stderr</td>
<td>The standard error stream of the process. This (usually) includes error messages of the job.</td>
</tr>
</tbody>
</table>
<h3>Methods</h3>
<h4>background()</h4>
<p>Puts a job in the background. This acts the same as initially running a job.</p>
<h4>foreground()</h4>
<p>Puts a job in the foreground. This will cause it to run like it was
executed normally and wait for it to complete.</p>
<h4>start()</h4>
<p>Starts running the job.</p>
<h4>stop()</h4>
<p>Stops the job from running.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#jobs.disown&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Disowns a job. This simply deletes it from the list of jobs without stopping it. </p><p class="font-bold text-xl" id="Parameters-number-**id**">Parameters
<code>number</code> **<code>id</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;jobs.get&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.jobs.get(id) -&gt; &lt;a href=&quot;/Hilbish/docs/api/hilbish/hilbish.jobs/#job&quot; style=&quot;text-decoration: none;&quot; id=&quot;lol&quot;&gt;Job&lt;/a&gt;
&lt;a href=&quot;#jobs.get&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Get a job object via its ID. </p><p class="font-bold text-xl">Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;jobs.last&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.jobs.last() -&gt; &lt;a href=&quot;/Hilbish/docs/api/hilbish/hilbish.jobs/#job&quot; style=&quot;text-decoration: none;&quot; id=&quot;lol&quot;&gt;Job&lt;/a&gt;
&lt;a href=&quot;#jobs.last&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns the last added job to the table. </p><p class="font-bold text-xl">Parameters
This function has no parameters.
&lt;/div&gt;</p><h2 class="font-bold text-3xl" id="Types-&lt;hr&gt;">Types
&lt;hr&gt;</h2><h2 class="font-bold text-3xl" id="Job-The-Job-type-describes-a-Hilbish-job.-Object-properties-|||-|----|----|-|cmd|The-user-entered-command-string-for-the-job.|-|running|Whether-the-job-is-running-or-not.|-|id|The-ID-of-the-job-in-the-job-table|-|pid|The-Process-ID|-|exitCode|The-last-exit-code-of-the-job.|-|stdout|The-standard-output-of-the-job.-This-just-means-the-normal-logs-of-the-process.|-|stderr|The-standard-error-stream-of-the-process.-This-(usually)-includes-error-messages-of-the-job.|">Job
The Job type describes a Hilbish job.
Object properties
|||
|----|----|
|cmd|The user entered command string for the job.|
|running|Whether the job is running or not.|
|id|The ID of the job in the job table|
|pid|The Process ID|
|exitCode|The last exit code of the job.|
|stdout|The standard output of the job. This just means the normal logs of the process.|
|stderr|The standard error stream of the process. This (usually) includes error messages of the job.|</h2><h3 class="font-bold text-2xl" id="Methods">Methods</h3><p class="font-bold text-xl" id="background()-Puts-a-job-in-the-background.-This-acts-the-same-as-initially-running-a-job.">background()
Puts a job in the background. This acts the same as initially running a job.</p><p class="font-bold text-xl" id="foreground()-Puts-a-job-in-the-foreground.-This-will-cause-it-to-run-like-it-was-executed-normally-and-wait-for-it-to-complete.">foreground()
Puts a job in the foreground. This will cause it to run like it was
executed normally and wait for it to complete.</p><p class="font-bold text-xl" id="start()-Starts-running-the-job.">start()
Starts running the job.</p><p class="font-bold text-xl" id="stop()-Stops-the-job-from-running.">stop()
Stops the job from running.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,6 +1,6 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.messages</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish.messages</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The messages interface defines a way for Hilbish-integrated commands,
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.messages</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish.messages</h1><h2 class="font-bold text-3xl" id="Introduction-The-messages-interface-defines-a-way-for-Hilbish-integrated-commands-user-config-and-other-tasks-to-send-notifications-to-alert-the-user.z-The-hilbish.message-type-is-a-table-with-the-following-keys:-title-(string):-A-title-for-the-message-notification.-text-(string):-The-contents-of-the-message.-channel-(string):-States-the-origin-of-the-message-hilbish.*-is-reserved-for-Hilbish-tasks.-summary-(string):-A-short-summary-of-the-text.-icon-(string):-Unicode-(preferably-standard-emoji)-icon-for-the-message-notification-read-(boolean):-Whether-the-full-message-has-been-read-or-not.">Introduction
The messages interface defines a way for Hilbish-integrated commands,
user config and other tasks to send notifications to alert the user.z
The <code>hilbish.message</code> type is a table with the following keys:
<code>title</code> (string): A title for the message notification.
@ -8,127 +8,81 @@ The <code>hilbish.message</code> type is a table with the following keys:
<code>channel</code> (string): States the origin of the message, <code>hilbish.*</code> is reserved for Hilbish tasks.
<code>summary</code> (string): A short summary of the <code>text</code>.
<code>icon</code> (string): Unicode (preferably standard emoji) icon for the message notification
<code>read</code> (boolean): Whether the full message has been read or not.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#unreadCount" rel="noopener noreferrer">unreadCount()</a></td>
<td>Returns the amount of unread messages.</td>
</tr>
<tr>
<td><a href="#send" rel="noopener noreferrer">send(message)</a></td>
<td>Sends a message.</td>
</tr>
<tr>
<td><a href="#readAll" rel="noopener noreferrer">readAll()</a></td>
<td>Marks all messages as read.</td>
</tr>
<tr>
<td><a href="#read" rel="noopener noreferrer">read(idx)</a></td>
<td>Marks a message at <code>idx</code> as read.</td>
</tr>
<tr>
<td><a href="#delete" rel="noopener noreferrer">delete(idx)</a></td>
<td>Deletes the message at <code>idx</code>.</td>
</tr>
<tr>
<td><a href="#clear" rel="noopener noreferrer">clear()</a></td>
<td>Deletes all messages.</td>
</tr>
<tr>
<td><a href="#all" rel="noopener noreferrer">all()</a></td>
<td>Returns all messages.</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
<code>read</code> (boolean): Whether the full message has been read or not.</h2><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;unreadCount&quot;&gt;unreadCount()&lt;/a&gt;|Returns-the-amount-of-unread-messages.|-|&lt;a-href=&quot;send&quot;&gt;send(message)&lt;/a&gt;|Sends-a-message.|-|&lt;a-href=&quot;readAll&quot;&gt;readAll()&lt;/a&gt;|Marks-all-messages-as-read.|-|&lt;a-href=&quot;read&quot;&gt;read(idx)&lt;/a&gt;|Marks-a-message-at-idx-as-read.|-|&lt;a-href=&quot;delete&quot;&gt;delete(idx)&lt;/a&gt;|Deletes-the-message-at-idx.|-|&lt;a-href=&quot;clear&quot;&gt;clear()&lt;/a&gt;|Deletes-all-messages.|-|&lt;a-href=&quot;all&quot;&gt;all()&lt;/a&gt;|Returns-all-messages.|-&lt;hr&gt;-&lt;div-id=&#39;all&#39;&gt;-&lt;h4-class=&#39;heading&#39;&gt;-hilbish.messages.all()-&lt;a-href=&quot;all&quot;-class=&#39;heading-link&#39;&gt;- &lt;i-class=&quot;fas-fa-paperclip&quot;&gt;&lt;/i&gt;-&lt;/a&gt;-&lt;/h4&gt;">Functions
|||
|----|----|
|&lt;a href=&quot;#unreadCount&quot;&gt;unreadCount()&lt;/a&gt;|Returns the amount of unread messages.|
|&lt;a href=&quot;#send&quot;&gt;send(message)&lt;/a&gt;|Sends a message.|
|&lt;a href=&quot;#readAll&quot;&gt;readAll()&lt;/a&gt;|Marks all messages as read.|
|&lt;a href=&quot;#read&quot;&gt;read(idx)&lt;/a&gt;|Marks a message at <code>idx</code> as read.|
|&lt;a href=&quot;#delete&quot;&gt;delete(idx)&lt;/a&gt;|Deletes the message at <code>idx</code>.|
|&lt;a href=&quot;#clear&quot;&gt;clear()&lt;/a&gt;|Deletes all messages.|
|&lt;a href=&quot;#all&quot;&gt;all()&lt;/a&gt;|Returns all messages.|
&lt;hr&gt;
&lt;div id=&#39;all&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.messages.all()
<a href="#all" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns all messages.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#all&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</h2><p>Returns all messages.
#### Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;clear&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.messages.clear()
<a href="#clear" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Deletes all messages.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#clear&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Deletes all messages.
#### Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;delete&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.messages.delete(idx)
<a href="#delete" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Deletes the message at <code>idx</code>.</p>
<h4>Parameters</h4>
<p><code>idx</code> <strong><code>number</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#delete&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Deletes the message at <code>idx</code>.
#### Parameters
<code>idx</code> **<code>number</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;read&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.messages.read(idx)
<a href="#read" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Marks a message at <code>idx</code> as read.</p>
<h4>Parameters</h4>
<p><code>idx</code> <strong><code>number</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#read&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Marks a message at <code>idx</code> as read.
#### Parameters
<code>idx</code> **<code>number</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;readAll&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.messages.readAll()
<a href="#readAll" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Marks all messages as read.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#readAll&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Marks all messages as read.
#### Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;send&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.messages.send(message)
<a href="#send" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Sends a message.</p>
<h4>Parameters</h4>
<p><code>message</code> <strong><code>hilbish.message</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#send&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Sends a message.
#### Parameters
<code>message</code> **<code>hilbish.message</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;unreadCount&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.messages.unreadCount()
<a href="#unreadCount" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns the amount of unread messages.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#unreadCount&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns the amount of unread messages.
#### Parameters
This function has no parameters.
&lt;/div&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,71 +1,33 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.module</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish.module</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The hilbish.module interface provides a function to load
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.module</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish.module</h1><h2 class="font-bold text-3xl" id="Introduction">Introduction</h2><p>The hilbish.module interface provides a function to load
Hilbish plugins/modules. Hilbish modules are Go-written
plugins (see <a href="https://pkg.go.dev/plugin" rel="noopener noreferrer">https://pkg.go.dev/plugin</a>) that are used to add functionality
to Hilbish that cannot be written in Lua for any reason.</p>
<p>Note that you dont ever need to use the load function that is here as
plugins (see https://pkg.go.dev/plugin) that are used to add functionality
to Hilbish that cannot be written in Lua for any reason.</p><p>Note that you don&#39;t ever need to use the load function that is here as
modules can be loaded with a <code>require</code> call like Lua C modules, and the
search paths can be changed with the <code>paths</code> property here.</p>
<p>To make a valid native module, the Go plugin has to export a Loader function
with a signature like so: <code>func(*rt.Runtime) rt.Value</code>.</p>
<p><code>rt</code> in this case refers to the Runtime type at
<a href="https://pkg.go.dev/github.com/arnodel/golua@master/runtime#Runtime" rel="noopener noreferrer">https://pkg.go.dev/github.com/arnodel/golua@master/runtime#Runtime</a></p>
<p>Hilbish uses this package as its Lua runtime. You will need to read
it to use it for a native plugin.</p>
<p>Here is some code for an example plugin:</p>
<pre><code><span><span>package</span> <span>main</span>
</span><span>
</span><span><span>import</span> <span>(</span>
</span><span> <span>rt</span> <span>"github.com/arnodel/golua/runtime"</span>
</span><span><span>)</span>
</span><span>
</span><span><span>func</span> <span>Loader</span><span>(</span><span>rtm</span> <span>*</span><span>rt</span><span>.</span><span>Runtime</span><span>)</span> <span>rt</span><span>.</span><span>Value</span> <span>&lbrace;</span>
</span><span> <span>return</span> <span>rt</span><span>.</span><span>StringValue</span><span>(</span><span>"hello world!"</span><span>)</span>
</span><span><span>&rbrace;</span>
</span></code></pre>
<p>This can be compiled with <code>go build -buildmode=plugin plugin.go</code>.
If you attempt to require and print the result (<code>print(require 'plugin')</code>), it will show “hello world!”</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#module.load" rel="noopener noreferrer">load(path)</a></td>
<td>Loads a module at the designated <code>path</code>.</td>
</tr>
</tbody>
</table>
<h2>Static module fields</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>paths</td>
<td>A list of paths to search when loading native modules. This is in the style of Lua search paths and will be used when requiring native modules. Example: <code>?.so;?/?.so</code></td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
search paths can be changed with the <code>paths</code> property here.</p><p>To make a valid native module, the Go plugin has to export a Loader function
with a signature like so: <code>func(*rt.Runtime) rt.Value</code>.</p><p><code>rt</code> in this case refers to the Runtime type at
https://pkg.go.dev/github.com/arnodel/golua@master/runtime#Runtime</p><p>Hilbish uses this package as its Lua runtime. You will need to read
it to use it for a native plugin.</p><p>Here is some code for an example plugin:
<code>go
package main</code></p><p>import (
rt &quot;github.com/arnodel/golua/runtime&quot;
)</p><p>func Loader(rtm *rt.Runtime) rt.Value {
return rt.StringValue(&quot;hello world!&quot;)
}
<code></code></p><p>This can be compiled with <code>go build -buildmode=plugin plugin.go</code>.
If you attempt to require and print the result (<code>print(require &#39;plugin&#39;)</code>), it will show &quot;hello world!&quot;</p><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;module.load&quot;&gt;load(path)&lt;/a&gt;|Loads-a-module-at-the-designated-path.|">Functions
|||
|----|----|
|&lt;a href=&quot;#module.load&quot;&gt;load(path)&lt;/a&gt;|Loads a module at the designated <code>path</code>.|</h2><h2 class="font-bold text-3xl" id="Static-module-fields-|||-|----|----|-|paths|A-list-of-paths-to-search-when-loading-native-modules.-This-is-in-the-style-of-Lua-search-paths-and-will-be-used-when-requiring-native-modules.-Example:-.so;/.so|">Static module fields
|||
|----|----|
|paths|A list of paths to search when loading native modules. This is in the style of Lua search paths and will be used when requiring native modules. Example: <code>?.so;?/?.so</code>|</h2><p>&lt;hr&gt;
&lt;div id=&#39;module.load&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.module.load(path)
<a href="#module.load" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Loads a module at the designated <code>path</code>.<br>
It will throw if any error occurs.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>path</code></strong></p>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#module.load&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Loads a module at the designated <code>path</code>.
It will throw if any error occurs. </p><p class="font-bold text-xl" id="Parameters-string-**path**">Parameters
<code>string</code> **<code>path</code>** </p><p>&lt;/div&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,27 +1,9 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.os</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish.os</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>Provides simple text information properties about the current operating system.
This mainly includes the name and version.</p>
<h2>Static module fields</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>family</td>
<td>Family name of the current OS</td>
</tr>
<tr>
<td>name</td>
<td>Pretty name of the current OS</td>
</tr>
<tr>
<td>version</td>
<td>Version of the current OS</td>
</tr>
</tbody>
</table></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.os</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish.os</h1><h2 class="font-bold text-3xl" id="Introduction-Provides-simple-text-information-properties-about-the-current-operating-system.-This-mainly-includes-the-name-and-version.">Introduction
Provides simple text information properties about the current operating system.
This mainly includes the name and version.</h2><h2 class="font-bold text-3xl" id="Static-module-fields-|||-|----|----|-|family|Family-name-of-the-current-OS|-|name|Pretty-name-of-the-current-OS|-|version|Version-of-the-current-OS|">Static module fields
|||
|----|----|
|family|Family name of the current OS|
|name|Pretty name of the current OS|
|version|Version of the current OS|</h2></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,231 +1,146 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.runner</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish.runner</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The runner interface contains functions that allow the user to change
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.runner</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish.runner</h1><h2 class="font-bold text-3xl" id="Introduction-The-runner-interface-contains-functions-that-allow-the-user-to-change-how-Hilbish-interprets-interactive-input.-Users-can-add-and-change-the-default-runner-for-interactive-input-to-any-language-or-script-of-their-choosing.-A-good-example-is-using-it-to-write-command-in-Fennel.">Introduction
The runner interface contains functions that allow the user to change
how Hilbish interprets interactive input.
Users can add and change the default runner for interactive input to any
language or script of their choosing. A good example is using it to
write command in Fennel.</p>
<p>Runners are functions that evaluate user input. The default runners in
Hilbish can run shell script and Lua code.</p>
<p>A runner is passed the input and has to return a table with these values.
write command in Fennel.</h2><p>Runners are functions that evaluate user input. The default runners in
Hilbish can run shell script and Lua code.</p><p>A runner is passed the input and has to return a table with these values.
All are not required, only the useful ones the runner needs to return.
(So if there isnt an error, just omit <code>err</code>.)</p>
<ul>
<li><code>exitCode</code> (number): Exit code of the command</li>
<li><code>input</code> (string): The text input of the user. This is used by Hilbish to append extra input, in case
more is requested.</li>
<li><code>err</code> (string): A string that represents an error from the runner.
(So if there isn&#39;t an error, just omit <code>err</code>.)</p><ul style="list-style-type:&#39;-&#39;;"><li><p><code>exitCode</code> (number): Exit code of the command</p></li><li><p><code>input</code> (string): The text input of the user. This is used by Hilbish to append extra input, in case</p></li></ul><p>more is requested.
- <code>err</code> (string): A string that represents an error from the runner.
This should only be set when, for example, there is a syntax error.
It can be set to a few special values for Hilbish to throw the right
hooks and have a better looking message.
<ul>
<li><code>\&lt;command&gt;: not-found</code> will throw a <code>command.not-found</code> hook
based on what <code>\&lt;command&gt;</code> is.</li>
<li><code>\&lt;command&gt;: not-executable</code> will throw a <code>command.not-executable</code> hook.</li>
</ul>
</li>
<li><code>continue</code> (boolean): Whether Hilbish should prompt the user for no input</li>
<li><code>newline</code> (boolean): Whether a newline should be added at the end of <code>input</code>.</li>
</ul>
<p>Here is a simple example of a fennel runner. It falls back to
shell script if fennel eval has an error.</p>
<pre><code><span><span>local</span> <span>fennel</span> <span>=</span> <span>require</span> <span>'fennel'</span>
</span><span>
</span><span><span>hilbish</span><span>.</span><span>runnerMode</span><span>(</span><span>function</span><span>(</span><span>input</span><span>)</span>
</span><span> <span>local</span> <span>ok</span> <span>=</span> <span>pcall</span><span>(</span><span>fennel</span><span>.</span><span>eval</span><span>,</span> <span>input</span><span>)</span>
</span><span> <span>if</span> <span>ok</span> <span>then</span>
</span><span> <span>return</span> <span>&lbrace;</span>
</span><span> <span>input</span> <span>=</span> <span>input</span>
</span><span> <span>&rbrace;</span>
</span><span> <span>end</span>
</span><span>
</span><span> <span>return</span> <span>hilbish</span><span>.</span><span>runner</span><span>.</span><span>sh</span><span>(</span><span>input</span><span>)</span>
</span><span><span>end</span><span>)</span>
</span></code></pre>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#runner.lua" rel="noopener noreferrer">lua(cmd)</a></td>
<td>Evaluates <code>cmd</code> as Lua input. This is the same as using <code>dofile</code></td>
</tr>
<tr>
<td><a href="#sh" rel="noopener noreferrer">sh()</a></td>
<td>nil</td>
</tr>
<tr>
<td><a href="#setMode" rel="noopener noreferrer">setMode(mode)</a></td>
<td><strong>NOTE: This function is deprecated and will be removed in 3.0</strong></td>
</tr>
<tr>
<td><a href="#setCurrent" rel="noopener noreferrer">setCurrent(name)</a></td>
<td>Sets Hilbishs runner mode by name.</td>
</tr>
<tr>
<td><a href="#set" rel="noopener noreferrer">set(name, runner)</a></td>
<td><em>Sets</em> a runner by name. The difference between this function and</td>
</tr>
<tr>
<td><a href="#run" rel="noopener noreferrer">run(input, priv)</a></td>
<td>Runs <code>input</code> with the currently set Hilbish runner.</td>
</tr>
<tr>
<td><a href="#getCurrent" rel="noopener noreferrer">getCurrent()</a></td>
<td>Returns the current runner by name.</td>
</tr>
<tr>
<td><a href="#get" rel="noopener noreferrer">get(name)</a></td>
<td>Get a runner by name.</td>
</tr>
<tr>
<td><a href="#exec" rel="noopener noreferrer">exec(cmd, runnerName)</a></td>
<td>Executes <code>cmd</code> with a runner.</td>
</tr>
<tr>
<td><a href="#add" rel="noopener noreferrer">add(name, runner)</a></td>
<td>Adds a runner to the table of available runners.</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
- <code>\&lt;command&gt;: not-found</code> will throw a <code>command.not-found</code> hook
based on what <code>\&lt;command&gt;</code> is.
- <code>\&lt;command&gt;: not-executable</code> will throw a <code>command.not-executable</code> hook.
- <code>continue</code> (boolean): Whether Hilbish should prompt the user for no input
- <code>newline</code> (boolean): Whether a newline should be added at the end of <code>input</code>.</p><p>Here is a simple example of a fennel runner. It falls back to
shell script if fennel eval has an error.
<code>lua
local fennel = require &#39;fennel&#39;</code></p><p>hilbish.runnerMode(function(input)
local ok = pcall(fennel.eval, input)
if ok then
return {
input = input
}
end</p><p> return hilbish.runner.sh(input)
end)
<code></code></p><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;runner.lua&quot;&gt;lua(cmd)&lt;/a&gt;|Evaluates-cmd-as-Lua-input.-This-is-the-same-as-using-dofile|-|&lt;a-href=&quot;sh&quot;&gt;sh()&lt;/a&gt;|nil|-|&lt;a-href=&quot;setMode&quot;&gt;setMode(mode)&lt;/a&gt;|*NOTE:-This-function-is-deprecated-and-will-be-removed-in-3.0|-|&lt;a-href=&quot;setCurrent&quot;&gt;setCurrent(name)&lt;/a&gt;|Sets-Hilbish&#39;s-runner-mode-by-name.|-|&lt;a-href=&quot;set&quot;&gt;set(name-runner)&lt;/a&gt;|Sets*-a-runner-by-name.-The-difference-between-this-function-and|-|&lt;a-href=&quot;run&quot;&gt;run(input-priv)&lt;/a&gt;|Runs-input-with-the-currently-set-Hilbish-runner.|-|&lt;a-href=&quot;getCurrent&quot;&gt;getCurrent()&lt;/a&gt;|Returns-the-current-runner-by-name.|-|&lt;a-href=&quot;get&quot;&gt;get(name)&lt;/a&gt;|Get-a-runner-by-name.|-|&lt;a-href=&quot;exec&quot;&gt;exec(cmd-runnerName)&lt;/a&gt;|Executes-cmd-with-a-runner.|-|&lt;a-href=&quot;add&quot;&gt;add(name-runner)&lt;/a&gt;|Adds-a-runner-to-the-table-of-available-runners.|">Functions
|||
|----|----|
|&lt;a href=&quot;#runner.lua&quot;&gt;lua(cmd)&lt;/a&gt;|Evaluates <code>cmd</code> as Lua input. This is the same as using <code>dofile</code>|
|&lt;a href=&quot;#sh&quot;&gt;sh()&lt;/a&gt;|nil|
|&lt;a href=&quot;#setMode&quot;&gt;setMode(mode)&lt;/a&gt;|*<strong>NOTE: This function is deprecated and will be removed in 3.0</strong><strong>|
|&lt;a href=&quot;#setCurrent&quot;&gt;setCurrent(name)&lt;/a&gt;|Sets Hilbish&#39;s runner mode by name.|
|&lt;a href=&quot;#set&quot;&gt;set(name, runner)&lt;/a&gt;|</strong>Sets* a runner by name. The difference between this function and|
|&lt;a href=&quot;#run&quot;&gt;run(input, priv)&lt;/a&gt;|Runs <code>input</code> with the currently set Hilbish runner.|
|&lt;a href=&quot;#getCurrent&quot;&gt;getCurrent()&lt;/a&gt;|Returns the current runner by name.|
|&lt;a href=&quot;#get&quot;&gt;get(name)&lt;/a&gt;|Get a runner by name.|
|&lt;a href=&quot;#exec&quot;&gt;exec(cmd, runnerName)&lt;/a&gt;|Executes <code>cmd</code> with a runner.|
|&lt;a href=&quot;#add&quot;&gt;add(name, runner)&lt;/a&gt;|Adds a runner to the table of available runners.|</h2><p>&lt;hr&gt;
&lt;div id=&#39;runner.lua&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.runner.lua(cmd)
<a href="#runner.lua" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Evaluates <code>cmd</code> as Lua input. This is the same as using <code>dofile</code><br>
or <code>load</code>, but is appropriated for the runner interface.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>cmd</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#runner.lua&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Evaluates <code>cmd</code> as Lua input. This is the same as using <code>dofile</code>
or <code>load</code>, but is appropriated for the runner interface. </p><p class="font-bold text-xl" id="Parameters-string-**cmd**">Parameters
<code>string</code> **<code>cmd</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;add&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.runner.add(name, runner)
<a href="#add" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Adds a runner to the table of available runners.
If runner is a table, it must have the run function in it.</p>
<h4>Parameters</h4>
<p><code>name</code> <strong><code>string</code></strong><br>
Name of the runner</p>
<p><code>runner</code> <strong><code>function|table</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#add&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Adds a runner to the table of available runners.
If runner is a table, it must have the run function in it.
#### Parameters
<code>name</code> **<code>string</code>**
Name of the runner</p><p><code>runner</code> **<code>function|table</code>**
</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;exec&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.runner.exec(cmd, runnerName)
<a href="#exec" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Executes <code>cmd</code> with a runner.
If <code>runnerName</code> is not specified, it uses the default Hilbish runner.</p>
<h4>Parameters</h4>
<p><code>cmd</code> <strong><code>string</code></strong></p>
<p><code>runnerName</code> <strong><code>string?</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#exec&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Executes <code>cmd</code> with a runner.
If <code>runnerName</code> is not specified, it uses the default Hilbish runner.
#### Parameters
<code>cmd</code> **<code>string</code>** </p><p><code>runnerName</code> **<code>string?</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;get&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.runner.get(name)
<a href="#get" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Get a runner by name.</p>
<h4>Parameters</h4>
<p><code>name</code> <strong><code>string</code></strong><br>
Name of the runner to retrieve.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#get&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Get a runner by name.
#### Parameters
<code>name</code> **<code>string</code>**
Name of the runner to retrieve.</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;getCurrent&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.runner.getCurrent()
<a href="#getCurrent" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns the current runner by name.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#getCurrent&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns the current runner by name.
#### Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;run&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.runner.run(input, priv)
<a href="#run" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Runs <code>input</code> with the currently set Hilbish runner.
&lt;a href=&quot;#run&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Runs <code>input</code> with the currently set Hilbish runner.
This method is how Hilbish executes commands.
<code>priv</code> is an optional boolean used to state if the input should be saved to history.</p>
<h4>Parameters</h4>
<p><code>input</code> <strong><code>string</code></strong></p>
<p><code>priv</code> <strong><code>bool</code></strong></p>
</div>
<hr>
<div>
<h4>
<code>priv</code> is an optional boolean used to state if the input should be saved to history.
#### Parameters
<code>input</code> **<code>string</code>** </p><p><code>priv</code> **<code>bool</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;set&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.runner.set(name, runner)
<a href="#set" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p><em>Sets</em> a runner by name. The difference between this function and
add, is set will <em>not</em> check if the named runner exists.
The runner table must have the run function in it.</p>
<h4>Parameters</h4>
<p><code>name</code> <strong><code>string</code></strong></p>
<p><code>runner</code> <strong><code>table</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#set&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p><strong>Sets</strong> a runner by name. The difference between this function and
add, is set will <strong>not</strong> check if the named runner exists.
The runner table must have the run function in it.
#### Parameters
<code>name</code> **<code>string</code>** </p><p><code>runner</code> **<code>table</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;setCurrent&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.runner.setCurrent(name)
<a href="#setCurrent" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Sets Hilbishs runner mode by name.</p>
<h4>Parameters</h4>
<p><code>name</code> <strong><code>string</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#setCurrent&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Sets Hilbish&#39;s runner mode by name.
#### Parameters
<code>name</code> **<code>string</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;setMode&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.runner.setMode(mode)
<a href="#setMode" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p><strong>NOTE: This function is deprecated and will be removed in 3.0</strong>
&lt;a href=&quot;#setMode&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>*<strong>NOTE: This function is deprecated and will be removed in 3.0</strong>*
Use <code>hilbish.runner.setCurrent</code> instead.
This is the same as the <code>hilbish.runnerMode</code> function.
It takes a callback, which will be used to execute all interactive input.
Or a string which names the runner mode to use.</p>
<h4>Parameters</h4>
<p><code>mode</code> <strong><code>string|function</code></strong></p>
</div>
<hr>
<div>
<h4>
Or a string which names the runner mode to use.
#### Parameters
<code>mode</code> **<code>string|function</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;sh&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.runner.sh()
<a href="#sh" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#sh&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p class="font-bold text-xl" id="Parameters-This-function-has-no-parameters.---&lt;/div&gt;">Parameters
This function has no parameters.
&lt;/div&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,114 +1,48 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.timers</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish.timers</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>If you ever want to run a piece of code on a timed interval, or want to wait
a few seconds, you dont have to rely on timing tricks, as Hilbish has a
timer API to set intervals and timeouts.</p>
<p>These are the simple functions <code>hilbish.interval</code> and <code>hilbish.timeout</code> (doc
accessible with <code>doc hilbish</code>, or <code>Module hilbish</code> on the Website).</p>
<p>An example of usage:</p>
<pre><code><span><span>local</span> <span>t</span> <span>=</span> <span>hilbish</span><span>.</span><span>timers</span><span>.</span><span>create</span><span>(</span><span>hilbish</span><span>.</span><span>timers</span><span>.</span><span>TIMEOUT</span><span>,</span> <span>5000</span><span>,</span> <span>function</span><span>(</span><span>)</span>
</span><span> <span>print</span> <span>'hello!'</span>
</span><span><span>end</span><span>)</span>
</span><span>
</span><span><span>t</span><span>:</span><span>start</span><span>(</span><span>)</span>
</span><span><span>print</span><span>(</span><span>t</span><span>.</span><span>running</span><span>)</span> <span>//</span> <span>true</span>
</span></code></pre>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#timers.create" rel="noopener noreferrer">create(type, time, callback) -&gt; @Timer</a></td>
<td>Creates a timer that runs based on the specified <code>time</code>.</td>
</tr>
<tr>
<td><a href="#timers.get" rel="noopener noreferrer">get(id) -&gt; @Timer</a></td>
<td>Retrieves a timer via its ID.</td>
</tr>
</tbody>
</table>
<h2>Static module fields</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>INTERVAL</td>
<td>Constant for an interval timer type</td>
</tr>
<tr>
<td>TIMEOUT</td>
<td>Constant for a timeout timer type</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
hilbish.timers.create(type, time, callback) -&gt; <a href="/Hilbish/docs/api/hilbish/hilbish.timers/#timer" rel="noopener noreferrer">Timer</a>
<a href="#timers.create" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Creates a timer that runs based on the specified <code>time</code>.</p>
<h4>Parameters</h4>
<p><code>number</code> <strong><code>type</code></strong><br>
What kind of timer to create, can either be <code>hilbish.timers.INTERVAL</code> or <code>hilbish.timers.TIMEOUT</code></p>
<p><code>number</code> <strong><code>time</code></strong><br>
The amount of time the function should run in milliseconds.</p>
<p><code>function</code> <strong><code>callback</code></strong><br>
The function to run for the timer.</p>
</div>
<hr>
<div>
<h4>
hilbish.timers.get(id) -&gt; <a href="/Hilbish/docs/api/hilbish/hilbish.timers/#timer" rel="noopener noreferrer">Timer</a>
<a href="#timers.get" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Retrieves a timer via its ID.</p>
<h4>Parameters</h4>
<p><code>number</code> <strong><code>id</code></strong></p>
</div>
<h2>Types</h2>
<hr>
<h2>Timer</h2>
<p>The Job type describes a Hilbish timer.</p>
<h2>Object properties</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>type</td>
<td>What type of timer it is</td>
</tr>
<tr>
<td>running</td>
<td>If the timer is running</td>
</tr>
<tr>
<td>duration</td>
<td>The duration in milliseconds that the timer will run</td>
</tr>
</tbody>
</table>
<h3>Methods</h3>
<h4>start()</h4>
<p>Starts a timer.</p>
<h4>stop()</h4>
<p>Stops a timer.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.timers</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish.timers</h1><h2 class="font-bold text-3xl" id="Introduction">Introduction</h2><p>If you ever want to run a piece of code on a timed interval, or want to wait
a few seconds, you don&#39;t have to rely on timing tricks, as Hilbish has a
timer API to set intervals and timeouts.</p><p>These are the simple functions <code>hilbish.interval</code> and <code>hilbish.timeout</code> (doc
accessible with <code>doc hilbish</code>, or <code>Module hilbish</code> on the Website).</p><p>An example of usage:
<code>lua
local t = hilbish.timers.create(hilbish.timers.TIMEOUT, 5000, function()
print &#39;hello!&#39;
end)</code></p><p>t:start()
print(t.running) // true
<code></code></p><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;timers.create&quot;&gt;create(type-time-callback)--&gt;-@Timer&lt;/a&gt;|Creates-a-timer-that-runs-based-on-the-specified-time.|-|&lt;a-href=&quot;timers.get&quot;&gt;get(id)--&gt;-@Timer&lt;/a&gt;|Retrieves-a-timer-via-its-ID.|">Functions
|||
|----|----|
|&lt;a href=&quot;#timers.create&quot;&gt;create(type, time, callback) -&gt; @Timer&lt;/a&gt;|Creates a timer that runs based on the specified <code>time</code>.|
|&lt;a href=&quot;#timers.get&quot;&gt;get(id) -&gt; @Timer&lt;/a&gt;|Retrieves a timer via its ID.|</h2><h2 class="font-bold text-3xl" id="Static-module-fields-|||-|----|----|-|INTERVAL|Constant-for-an-interval-timer-type|-|TIMEOUT|Constant-for-a-timeout-timer-type|">Static module fields
|||
|----|----|
|INTERVAL|Constant for an interval timer type|
|TIMEOUT|Constant for a timeout timer type|</h2><p>&lt;hr&gt;
&lt;div id=&#39;timers.create&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.timers.create(type, time, callback) -&gt; &lt;a href=&quot;/Hilbish/docs/api/hilbish/hilbish.timers/#timer&quot; style=&quot;text-decoration: none;&quot; id=&quot;lol&quot;&gt;Timer&lt;/a&gt;
&lt;a href=&quot;#timers.create&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Creates a timer that runs based on the specified <code>time</code>. </p><p class="font-bold text-xl" id="Parameters-number-**type**---What-kind-of-timer-to-create-can-either-be-hilbish.timers.INTERVAL-or-hilbish.timers.TIMEOUT">Parameters
<code>number</code> **<code>type</code>**
What kind of timer to create, can either be <code>hilbish.timers.INTERVAL</code> or <code>hilbish.timers.TIMEOUT</code></p><p><code>number</code> **<code>time</code>**
The amount of time the function should run in milliseconds.</p><p><code>function</code> **<code>callback</code>**
The function to run for the timer.</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;timers.get&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.timers.get(id) -&gt; &lt;a href=&quot;/Hilbish/docs/api/hilbish/hilbish.timers/#timer&quot; style=&quot;text-decoration: none;&quot; id=&quot;lol&quot;&gt;Timer&lt;/a&gt;
&lt;a href=&quot;#timers.get&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Retrieves a timer via its ID. </p><p class="font-bold text-xl" id="Parameters-number-**id**">Parameters
<code>number</code> **<code>id</code>** </p><p>&lt;/div&gt;</p><h2 class="font-bold text-3xl" id="Types-&lt;hr&gt;">Types
&lt;hr&gt;</h2><h2 class="font-bold text-3xl" id="Timer-The-Job-type-describes-a-Hilbish-timer.-Object-properties-|||-|----|----|-|type|What-type-of-timer-it-is|-|running|If-the-timer-is-running|-|duration|The-duration-in-milliseconds-that-the-timer-will-run|">Timer
The Job type describes a Hilbish timer.
Object properties
|||
|----|----|
|type|What type of timer it is|
|running|If the timer is running|
|duration|The duration in milliseconds that the timer will run|</h2><h3 class="font-bold text-2xl" id="Methods">Methods</h3><p class="font-bold text-xl" id="start()-Starts-a-timer.">start()
Starts a timer.</p><p class="font-bold text-xl" id="stop()-Stops-a-timer.">stop()
Stops a timer.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,24 +1,9 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.userDir</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish.userDir</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>This interface just contains properties to know about certain user directories.
It is equivalent to XDG on Linux and gets the users preferred directories
for configs and data.</p>
<h2>Static module fields</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>config</td>
<td>The users config directory</td>
</tr>
<tr>
<td>data</td>
<td>The users directory for program data</td>
</tr>
</tbody>
</table></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish.userDir</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish.userDir</h1><h2 class="font-bold text-3xl" id="Introduction-This-interface-just-contains-properties-to-know-about-certain-user-directories.-It-is-equivalent-to-XDG-on-Linux-and-gets-the-user&#39;s-preferred-directories-for-configs-and-data.">Introduction
This interface just contains properties to know about certain user directories.
It is equivalent to XDG on Linux and gets the user&#39;s preferred directories
for configs and data.</h2><h2 class="font-bold text-3xl" id="Static-module-fields-|||-|----|----|-|config|The-user&#39;s-config-directory|-|data|The-user&#39;s-directory-for-program-data|">Static module fields
|||
|----|----|
|config|The user&#39;s config directory|
|data|The user&#39;s directory for program data|</h2></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,518 +1,326 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module hilbish</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The Hilbish module includes the core API, containing
interfaces and functions which directly relate to shell functionality.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#alias" rel="noopener noreferrer">alias(cmd, orig)</a></td>
<td>Sets an alias, with a name of <code>cmd</code> to another command.</td>
</tr>
<tr>
<td><a href="#appendPath" rel="noopener noreferrer">appendPath(dir)</a></td>
<td>Appends the provided dir to the command path (<code>$PATH</code>)</td>
</tr>
<tr>
<td><a href="#complete" rel="noopener noreferrer">complete(scope, cb)</a></td>
<td>Registers a completion handler for the specified scope.</td>
</tr>
<tr>
<td><a href="#cwd" rel="noopener noreferrer">cwd() -&gt; string</a></td>
<td>Returns the current directory of the shell.</td>
</tr>
<tr>
<td><a href="#exec" rel="noopener noreferrer">exec(cmd)</a></td>
<td>Replaces the currently running Hilbish instance with the supplied command.</td>
</tr>
<tr>
<td><a href="#goro" rel="noopener noreferrer">goro(fn)</a></td>
<td>Puts <code>fn</code> in a Goroutine.</td>
</tr>
<tr>
<td><a href="#highlighter" rel="noopener noreferrer">highlighter(line)</a></td>
<td>Line highlighter handler.</td>
</tr>
<tr>
<td><a href="#hinter" rel="noopener noreferrer">hinter(line, pos)</a></td>
<td>The command line hint handler. It gets called on every key insert to</td>
</tr>
<tr>
<td><a href="#inputMode" rel="noopener noreferrer">inputMode(mode)</a></td>
<td>Sets the input mode for Hilbishs line reader.</td>
</tr>
<tr>
<td><a href="#interval" rel="noopener noreferrer">interval(cb, time) -&gt; @Timer</a></td>
<td>Runs the <code>cb</code> function every specified amount of <code>time</code>.</td>
</tr>
<tr>
<td><a href="#multiprompt" rel="noopener noreferrer">multiprompt(str)</a></td>
<td>Changes the text prompt when Hilbish asks for more input.</td>
</tr>
<tr>
<td><a href="#prependPath" rel="noopener noreferrer">prependPath(dir)</a></td>
<td>Prepends <code>dir</code> to $PATH.</td>
</tr>
<tr>
<td><a href="#prompt" rel="noopener noreferrer">prompt(str, typ)</a></td>
<td>Changes the shell prompt to the provided string.</td>
</tr>
<tr>
<td><a href="#read" rel="noopener noreferrer">read(prompt) -&gt; input (string)</a></td>
<td>Read input from the user, using Hilbishs line editor/input reader.</td>
</tr>
<tr>
<td><a href="#timeout" rel="noopener noreferrer">timeout(cb, time) -&gt; @Timer</a></td>
<td>Executed the <code>cb</code> function after a period of <code>time</code>.</td>
</tr>
<tr>
<td><a href="#which" rel="noopener noreferrer">which(name) -&gt; string</a></td>
<td>Checks if <code>name</code> is a valid command.</td>
</tr>
<tr>
<td><a href="#runnerMode" rel="noopener noreferrer">runnerMode(mode)</a></td>
<td>Sets the execution/runner mode for interactive Hilbish.</td>
</tr>
<tr>
<td><a href="#run" rel="noopener noreferrer">run(cmd, streams)</a></td>
<td>Runs <code>cmd</code> in Hilbishs shell script interpreter.</td>
</tr>
</tbody>
</table>
<h2>Static module fields</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td>ver</td>
<td>The version of Hilbish</td>
</tr>
<tr>
<td>goVersion</td>
<td>The version of Go that Hilbish was compiled with</td>
</tr>
<tr>
<td>user</td>
<td>Username of the user</td>
</tr>
<tr>
<td>host</td>
<td>Hostname of the machine</td>
</tr>
<tr>
<td>dataDir</td>
<td>Directory for Hilbish data files, including the docs and default modules</td>
</tr>
<tr>
<td>interactive</td>
<td>Is Hilbish in an interactive shell?</td>
</tr>
<tr>
<td>login</td>
<td>Is Hilbish the login shell?</td>
</tr>
<tr>
<td>vimMode</td>
<td>Current Vim input mode of Hilbish (will be nil if not in Vim input mode)</td>
</tr>
<tr>
<td>exitCode</td>
<td>Exit code of the last executed command</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module hilbish</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module hilbish</h1><h2 class="font-bold text-3xl" id="Introduction-The-Hilbish-module-includes-the-core-API-containing-interfaces-and-functions-which-directly-relate-to-shell-functionality.">Introduction
The Hilbish module includes the core API, containing
interfaces and functions which directly relate to shell functionality.</h2><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;alias&quot;&gt;alias(cmd-orig)&lt;/a&gt;|Sets-an-alias-with-a-name-of-cmd-to-another-command.|-|&lt;a-href=&quot;appendPath&quot;&gt;appendPath(dir)&lt;/a&gt;|Appends-the-provided-dir-to-the-command-path-($PATH)|-|&lt;a-href=&quot;complete&quot;&gt;complete(scope-cb)&lt;/a&gt;|Registers-a-completion-handler-for-the-specified-scope.|-|&lt;a-href=&quot;cwd&quot;&gt;cwd()--&gt;-string&lt;/a&gt;|Returns-the-current-directory-of-the-shell.|-|&lt;a-href=&quot;exec&quot;&gt;exec(cmd)&lt;/a&gt;|Replaces-the-currently-running-Hilbish-instance-with-the-supplied-command.|-|&lt;a-href=&quot;goro&quot;&gt;goro(fn)&lt;/a&gt;|Puts-fn-in-a-Goroutine.|-|&lt;a-href=&quot;highlighter&quot;&gt;highlighter(line)&lt;/a&gt;|Line-highlighter-handler.|-|&lt;a-href=&quot;hinter&quot;&gt;hinter(line-pos)&lt;/a&gt;|The-command-line-hint-handler.-It-gets-called-on-every-key-insert-to|-|&lt;a-href=&quot;inputMode&quot;&gt;inputMode(mode)&lt;/a&gt;|Sets-the-input-mode-for-Hilbish&#39;s-line-reader.|-|&lt;a-href=&quot;interval&quot;&gt;interval(cb-time)--&gt;-@Timer&lt;/a&gt;|Runs-the-cb-function-every-specified-amount-of-time.|-|&lt;a-href=&quot;multiprompt&quot;&gt;multiprompt(str)&lt;/a&gt;|Changes-the-text-prompt-when-Hilbish-asks-for-more-input.|-|&lt;a-href=&quot;prependPath&quot;&gt;prependPath(dir)&lt;/a&gt;|Prepends-dir-to-$PATH.|-|&lt;a-href=&quot;prompt&quot;&gt;prompt(str-typ)&lt;/a&gt;|Changes-the-shell-prompt-to-the-provided-string.|-|&lt;a-href=&quot;read&quot;&gt;read(prompt)--&gt;-input-(string)&lt;/a&gt;|Read-input-from-the-user-using-Hilbish&#39;s-line-editor/input-reader.|-|&lt;a-href=&quot;timeout&quot;&gt;timeout(cb-time)--&gt;-@Timer&lt;/a&gt;|Executed-the-cb-function-after-a-period-of-time.|-|&lt;a-href=&quot;which&quot;&gt;which(name)--&gt;-string&lt;/a&gt;|Checks-if-name-is-a-valid-command.|-|&lt;a-href=&quot;runnerMode&quot;&gt;runnerMode(mode)&lt;/a&gt;|Sets-the-execution/runner-mode-for-interactive-Hilbish.|-|&lt;a-href=&quot;run&quot;&gt;run(cmd-streams)&lt;/a&gt;|Runs-cmd-in-Hilbish&#39;s-shell-script-interpreter.|">Functions
|||
|----|----|
|&lt;a href=&quot;#alias&quot;&gt;alias(cmd, orig)&lt;/a&gt;|Sets an alias, with a name of <code>cmd</code> to another command.|
|&lt;a href=&quot;#appendPath&quot;&gt;appendPath(dir)&lt;/a&gt;|Appends the provided dir to the command path (<code>$PATH</code>)|
|&lt;a href=&quot;#complete&quot;&gt;complete(scope, cb)&lt;/a&gt;|Registers a completion handler for the specified scope.|
|&lt;a href=&quot;#cwd&quot;&gt;cwd() -&gt; string&lt;/a&gt;|Returns the current directory of the shell.|
|&lt;a href=&quot;#exec&quot;&gt;exec(cmd)&lt;/a&gt;|Replaces the currently running Hilbish instance with the supplied command.|
|&lt;a href=&quot;#goro&quot;&gt;goro(fn)&lt;/a&gt;|Puts <code>fn</code> in a Goroutine.|
|&lt;a href=&quot;#highlighter&quot;&gt;highlighter(line)&lt;/a&gt;|Line highlighter handler.|
|&lt;a href=&quot;#hinter&quot;&gt;hinter(line, pos)&lt;/a&gt;|The command line hint handler. It gets called on every key insert to|
|&lt;a href=&quot;#inputMode&quot;&gt;inputMode(mode)&lt;/a&gt;|Sets the input mode for Hilbish&#39;s line reader.|
|&lt;a href=&quot;#interval&quot;&gt;interval(cb, time) -&gt; @Timer&lt;/a&gt;|Runs the <code>cb</code> function every specified amount of <code>time</code>.|
|&lt;a href=&quot;#multiprompt&quot;&gt;multiprompt(str)&lt;/a&gt;|Changes the text prompt when Hilbish asks for more input.|
|&lt;a href=&quot;#prependPath&quot;&gt;prependPath(dir)&lt;/a&gt;|Prepends <code>dir</code> to $PATH.|
|&lt;a href=&quot;#prompt&quot;&gt;prompt(str, typ)&lt;/a&gt;|Changes the shell prompt to the provided string.|
|&lt;a href=&quot;#read&quot;&gt;read(prompt) -&gt; input (string)&lt;/a&gt;|Read input from the user, using Hilbish&#39;s line editor/input reader.|
|&lt;a href=&quot;#timeout&quot;&gt;timeout(cb, time) -&gt; @Timer&lt;/a&gt;|Executed the <code>cb</code> function after a period of <code>time</code>.|
|&lt;a href=&quot;#which&quot;&gt;which(name) -&gt; string&lt;/a&gt;|Checks if <code>name</code> is a valid command.|
|&lt;a href=&quot;#runnerMode&quot;&gt;runnerMode(mode)&lt;/a&gt;|Sets the execution/runner mode for interactive Hilbish.|
|&lt;a href=&quot;#run&quot;&gt;run(cmd, streams)&lt;/a&gt;|Runs <code>cmd</code> in Hilbish&#39;s shell script interpreter.|</h2><h2 class="font-bold text-3xl" id="Static-module-fields-|||-|----|----|-|ver|The-version-of-Hilbish|-|goVersion|The-version-of-Go-that-Hilbish-was-compiled-with|-|user|Username-of-the-user|-|host|Hostname-of-the-machine|-|dataDir|Directory-for-Hilbish-data-files-including-the-docs-and-default-modules|-|interactive|Is-Hilbish-in-an-interactive-shell|-|login|Is-Hilbish-the-login-shell|-|vimMode|Current-Vim-input-mode-of-Hilbish-(will-be-nil-if-not-in-Vim-input-mode)|-|exitCode|Exit-code-of-the-last-executed-command|">Static module fields
|||
|----|----|
|ver|The version of Hilbish|
|goVersion|The version of Go that Hilbish was compiled with|
|user|Username of the user|
|host|Hostname of the machine|
|dataDir|Directory for Hilbish data files, including the docs and default modules|
|interactive|Is Hilbish in an interactive shell?|
|login|Is Hilbish the login shell?|
|vimMode|Current Vim input mode of Hilbish (will be nil if not in Vim input mode)|
|exitCode|Exit code of the last executed command|</h2><p>&lt;hr&gt;
&lt;div id=&#39;alias&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.alias(cmd, orig)
<a href="#alias" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Sets an alias, with a name of <code>cmd</code> to another command.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>cmd</code></strong><br>
Name of the alias</p>
<p><code>string</code> <strong><code>orig</code></strong><br>
Command that will be aliased</p>
<h4>Example</h4>
<pre><code><span><span>-- With this, "ga file" will turn into "git add file"</span>
</span><span><span>hilbish</span><span>.</span><span>alias</span><span>(</span><span>'ga'</span><span>,</span> <span>'git add'</span><span>)</span>
</span><span>
</span><span><span>-- Numbered substitutions are supported here!</span>
</span><span><span>hilbish</span><span>.</span><span>alias</span><span>(</span><span>'dircount'</span><span>,</span> <span>'ls %1 | wc -l'</span><span>)</span>
</span><span><span>-- "dircount ~" would count how many files are in ~ (home directory).</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#alias&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Sets an alias, with a name of <code>cmd</code> to another command. </p><p class="font-bold text-xl" id="Parameters-string-**cmd**---Name-of-the-alias">Parameters
<code>string</code> **<code>cmd</code>**
Name of the alias</p><p><code>string</code> **<code>orig</code>**
Command that will be aliased</p><p class="font-bold text-xl" id="Example-lua----With-this-&quot;ga-file&quot;-will-turn-into-&quot;git-add-file&quot;-hilbish.alias(&#39;ga&#39;-&#39;git-add&#39;)">Example
<code>lua
-- With this, &quot;ga file&quot; will turn into &quot;git add file&quot;
hilbish.alias(&#39;ga&#39;, &#39;git add&#39;)</code></p><p>-- Numbered substitutions are supported here!
hilbish.alias(&#39;dircount&#39;, &#39;ls %1 | wc -l&#39;)
-- &quot;dircount ~&quot; would count how many files are in ~ (home directory).
<code>
&lt;/div&gt;</code></p><p>&lt;hr&gt;
&lt;div id=&#39;appendPath&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.appendPath(dir)
<a href="#appendPath" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Appends the provided dir to the command path (<code>$PATH</code>)</p>
<h4>Parameters</h4>
<p><code>string|table</code> <strong><code>dir</code></strong><br>
Directory (or directories) to append to path</p>
<h4>Example</h4>
<pre><code><span><span>hilbish</span><span>.</span><span>appendPath</span> <span>'~/go/bin'</span>
</span><span><span>-- Will add ~/go/bin to the command path.</span>
</span><span>
</span><span><span>-- Or do multiple:</span>
</span><span><span>hilbish</span><span>.</span><span>appendPath</span> <span>&lbrace;</span>
</span><span> <span>'~/go/bin'</span><span>,</span>
</span><span> <span>'~/.local/bin'</span>
</span><span><span>&rbrace;</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#appendPath&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Appends the provided dir to the command path (<code>$PATH</code>) </p><p class="font-bold text-xl" id="Parameters-string|table-**dir**---Directory-(or-directories)-to-append-to-path">Parameters
<code>string|table</code> **<code>dir</code>**
Directory (or directories) to append to path</p><p class="font-bold text-xl" id="Example-lua-hilbish.appendPath-&#39;~/go/bin&#39;----Will-add-~/go/bin-to-the-command-path.">Example
<code>lua
hilbish.appendPath &#39;~/go/bin&#39;
-- Will add ~/go/bin to the command path.</code></p><p>-- Or do multiple:
hilbish.appendPath {
&#39;~/go/bin&#39;,
&#39;~/.local/bin&#39;
}
<code>
&lt;/div&gt;</code></p><p>&lt;hr&gt;
&lt;div id=&#39;complete&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.complete(scope, cb)
<a href="#complete" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Registers a completion handler for the specified scope.<br>
A <code>scope</code> is expected to be <code>command.&lt;cmd&gt;</code>,<br>
replacing with the name of the command (for example <code>command.git</code>).<br>
The documentation for completions, under Features/Completions or <code>doc completions</code><br>
provides more details.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>scope</code></strong></p>
<p><code>function</code> <strong><code>cb</code></strong></p>
<h4>Example</h4>
<pre><code><span><span>-- This is a very simple example. Read the full doc for completions for details.</span>
</span><span><span>hilbish</span><span>.</span><span>complete</span><span>(</span><span>'command.sudo'</span><span>,</span> <span>function</span><span>(</span><span>query</span><span>,</span> <span>ctx</span><span>,</span> <span>fields</span><span>)</span>
</span><span> <span>if</span> <span>#</span><span>fields</span> <span>==</span> <span>0</span> <span>then</span>
</span><span> <span>-- complete for commands</span>
</span><span> <span>local</span> <span>comps</span><span>,</span> <span>pfx</span> <span>=</span> <span>hilbish</span><span>.</span><span>completion</span><span>.</span><span>bins</span><span>(</span><span>query</span><span>,</span> <span>ctx</span><span>,</span> <span>fields</span><span>)</span>
</span><span> <span>local</span> <span>compGroup</span> <span>=</span> <span>&lbrace;</span>
</span><span> <span>items</span> <span>=</span> <span>comps</span><span>,</span> <span>-- our list of items to complete</span>
</span><span> <span>type</span> <span>=</span> <span>'grid'</span> <span>-- what our completions will look like.</span>
</span><span> <span>&rbrace;</span>
</span><span>
</span><span> <span>return</span> <span>&lbrace;</span><span>compGroup</span><span>&rbrace;</span><span>,</span> <span>pfx</span>
</span><span> <span>end</span>
</span><span>
</span><span> <span>-- otherwise just be boring and return files</span>
</span><span>
</span><span> <span>local</span> <span>comps</span><span>,</span> <span>pfx</span> <span>=</span> <span>hilbish</span><span>.</span><span>completion</span><span>.</span><span>files</span><span>(</span><span>query</span><span>,</span> <span>ctx</span><span>,</span> <span>fields</span><span>)</span>
</span><span> <span>local</span> <span>compGroup</span> <span>=</span> <span>&lbrace;</span>
</span><span> <span>items</span> <span>=</span> <span>comps</span><span>,</span>
</span><span> <span>type</span> <span>=</span> <span>'grid'</span>
</span><span> <span>&rbrace;</span>
</span><span>
</span><span> <span>return</span> <span>&lbrace;</span><span>compGroup</span><span>&rbrace;</span><span>,</span> <span>pfx</span>
</span><span><span>end</span><span>)</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#complete&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Registers a completion handler for the specified scope.
A <code>scope</code> is expected to be <code>command.&lt;cmd&gt;</code>,
replacing &lt;cmd&gt; with the name of the command (for example <code>command.git</code>).
The documentation for completions, under Features/Completions or <code>doc completions</code>
provides more details. </p><p class="font-bold text-xl" id="Parameters-string-**scope**">Parameters
<code>string</code> **<code>scope</code>** </p><p><code>function</code> **<code>cb</code>** </p><p class="font-bold text-xl" id="Example-lua----This-is-a-very-simple-example.-Read-the-full-doc-for-completions-for-details.-hilbish.complete(&#39;command.sudo&#39;-function(query-ctx-fields)- if-fields-==-0-then- ---complete-for-commands- local-comps-pfx-=-hilbish.completion.bins(query-ctx-fields)- local-compGroup-=-{- items-=-comps----our-list-of-items-to-complete- type-=-&#39;grid&#39;----what-our-completions-will-look-like.- }">Example
<code>lua
-- This is a very simple example. Read the full doc for completions for details.
hilbish.complete(&#39;command.sudo&#39;, function(query, ctx, fields)
if #fields == 0 then
-- complete for commands
local comps, pfx = hilbish.completion.bins(query, ctx, fields)
local compGroup = {
items = comps, -- our list of items to complete
type = &#39;grid&#39; -- what our completions will look like.
}</code></p><p> return {compGroup}, pfx
end</p><p> -- otherwise just be boring and return files</p><p> local comps, pfx = hilbish.completion.files(query, ctx, fields)
local compGroup = {
items = comps,
type = &#39;grid&#39;
}</p><p> return {compGroup}, pfx
end)
<code>
&lt;/div&gt;</code></p><p>&lt;hr&gt;
&lt;div id=&#39;cwd&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.cwd() -&gt; string
<a href="#cwd" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Returns the current directory of the shell.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#cwd&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Returns the current directory of the shell. </p><p class="font-bold text-xl" id="Parameters-This-function-has-no-parameters.---&lt;/div&gt;">Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;exec&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.exec(cmd)
<a href="#exec" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Replaces the currently running Hilbish instance with the supplied command.<br>
This can be used to do an in-place restart.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>cmd</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#exec&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Replaces the currently running Hilbish instance with the supplied command.
This can be used to do an in-place restart. </p><p class="font-bold text-xl" id="Parameters-string-**cmd**">Parameters
<code>string</code> **<code>cmd</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;goro&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.goro(fn)
<a href="#goro" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Puts <code>fn</code> in a Goroutine.<br>
This can be used to run any function in another thread at the same time as other Lua code.<br>
<strong>NOTE: THIS FUNCTION MAY CRASH HILBISH IF OUTSIDE VARIABLES ARE ACCESSED.</strong><br>
<strong>This is a limitation of the Lua runtime.</strong></p>
<h4>Parameters</h4>
<p><code>function</code> <strong><code>fn</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#goro&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Puts <code>fn</code> in a Goroutine.
This can be used to run any function in another thread at the same time as other Lua code.
*<strong>NOTE: THIS FUNCTION MAY CRASH HILBISH IF OUTSIDE VARIABLES ARE ACCESSED.</strong>*
*<strong>This is a limitation of the Lua runtime.</strong>* </p><p class="font-bold text-xl" id="Parameters-function-**fn**">Parameters
<code>function</code> **<code>fn</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;highlighter&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.highlighter(line)
<a href="#highlighter" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Line highlighter handler.<br>
This is mainly for syntax highlighting, but in reality could set the input<br>
of the prompt to <em>display</em> anything. The callback is passed the current line<br>
and is expected to return a line that will be used as the input display.<br>
Note that to set a highlighter, one has to override this function.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>line</code></strong></p>
<h4>Example</h4>
<pre><code><span><span>--This code will highlight all double quoted strings in green.</span>
</span><span><span>function</span> <span>hilbish</span><span>.</span><span>highlighter</span><span>(</span><span>line</span><span>)</span>
</span><span> <span>return</span> <span>line</span><span>:</span>gsub<span>(</span><span>'<span>"%w+"</span>'</span><span>,</span> <span>function</span><span>(</span><span>c</span><span>)</span> <span>return</span> <span>lunacolors</span><span>.</span><span>green</span><span>(</span><span>c</span><span>)</span> <span>end</span><span>)</span>
</span><span><span>end</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#highlighter&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Line highlighter handler.
This is mainly for syntax highlighting, but in reality could set the input
of the prompt to <strong>display</strong> anything. The callback is passed the current line
and is expected to return a line that will be used as the input display.
Note that to set a highlighter, one has to override this function. </p><p class="font-bold text-xl" id="Parameters-string-**line**">Parameters
<code>string</code> **<code>line</code>** </p><p class="font-bold text-xl" id="Example-lua---This-code-will-highlight-all-double-quoted-strings-in-green.-function-hilbish.highlighter(line)----return-line:gsub(&#39;&quot;%w+&quot;&#39;-function(c)-return-lunacolors.green(c)-end)-end--&lt;/div&gt;">Example
<code>lua
--This code will highlight all double quoted strings in green.
function hilbish.highlighter(line)
return line:gsub(&#39;&quot;%w+&quot;&#39;, function(c) return lunacolors.green(c) end)
end
</code>
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;hinter&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.hinter(line, pos)
<a href="#hinter" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>The command line hint handler. It gets called on every key insert to<br>
determine what text to use as an inline hint. It is passed the current<br>
line and cursor position. It is expected to return a string which is used<br>
as the text for the hint. This is by default a shim. To set hints,<br>
override this function with your custom handler.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>line</code></strong></p>
<p><code>number</code> <strong><code>pos</code></strong><br>
Position of cursor in line. Usually equals string.len(line)</p>
<h4>Example</h4>
<pre><code><span><span>-- this will display "hi" after the cursor in a dimmed color.</span>
</span><span><span>function</span> <span>hilbish</span><span>.</span><span>hinter</span><span>(</span><span>line</span><span>,</span> <span>pos</span><span>)</span>
</span><span> <span>return</span> <span>'hi'</span>
</span><span><span>end</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#hinter&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>The command line hint handler. It gets called on every key insert to
determine what text to use as an inline hint. It is passed the current
line and cursor position. It is expected to return a string which is used
as the text for the hint. This is by default a shim. To set hints,
override this function with your custom handler. </p><p class="font-bold text-xl">Parameters
<code>string</code> **<code>line</code>** </p><p><code>number</code> **<code>pos</code>**
Position of cursor in line. Usually equals string.len(line)</p><p class="font-bold text-xl" id="Example-lua----this-will-display-&quot;hi&quot;-after-the-cursor-in-a-dimmed-color.-function-hilbish.hinter(line-pos)- return-&#39;hi&#39;-end--&lt;/div&gt;">Example
<code>lua
-- this will display &quot;hi&quot; after the cursor in a dimmed color.
function hilbish.hinter(line, pos)
return &#39;hi&#39;
end
</code>
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;inputMode&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.inputMode(mode)
<a href="#inputMode" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Sets the input mode for Hilbishs line reader.<br>
<code>emacs</code> is the default. Setting it to <code>vim</code> changes behavior of input to be<br>
Vim-like with modes and Vim keybinds.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>mode</code></strong><br>
Can be set to either <code>emacs</code> or <code>vim</code></p>
</div>
<hr>
<div>
<h4>
hilbish.interval(cb, time) -&gt; <a href="/Hilbish/docs/api/hilbish/hilbish.timers/#timer" rel="noopener noreferrer">Timer</a>
<a href="#interval" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Runs the <code>cb</code> function every specified amount of <code>time</code>.<br>
This creates a timer that ticking immediately.</p>
<h4>Parameters</h4>
<p><code>function</code> <strong><code>cb</code></strong></p>
<p><code>number</code> <strong><code>time</code></strong><br>
Time in milliseconds.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#inputMode&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Sets the input mode for Hilbish&#39;s line reader.
<code>emacs</code> is the default. Setting it to <code>vim</code> changes behavior of input to be
Vim-like with modes and Vim keybinds. </p><p class="font-bold text-xl" id="Parameters-string-**mode**---Can-be-set-to-either-emacs-or-vim">Parameters
<code>string</code> **<code>mode</code>**
Can be set to either <code>emacs</code> or <code>vim</code></p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;interval&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.interval(cb, time) -&gt; &lt;a href=&quot;/Hilbish/docs/api/hilbish/hilbish.timers/#timer&quot; style=&quot;text-decoration: none;&quot; id=&quot;lol&quot;&gt;Timer&lt;/a&gt;
&lt;a href=&quot;#interval&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Runs the <code>cb</code> function every specified amount of <code>time</code>.
This creates a timer that ticking immediately. </p><p class="font-bold text-xl" id="Parameters-function-**cb**">Parameters
<code>function</code> **<code>cb</code>** </p><p><code>number</code> **<code>time</code>**
Time in milliseconds.</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;multiprompt&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.multiprompt(str)
<a href="#multiprompt" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Changes the text prompt when Hilbish asks for more input.<br>
This will show up when text is incomplete, like a missing quote</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>str</code></strong></p>
<h4>Example</h4>
<pre><code><span><span>--[[</span>
</span><span><span>imagine this is your text input:</span>
</span><span><span>user ~ ∆ echo "hey</span>
</span><span><span></span>
</span><span><span>but there's a missing quote! hilbish will now prompt you so the terminal</span>
</span><span><span>will look like:</span>
</span><span><span>user ~ ∆ echo "hey</span>
</span><span><span>--&gt; ...!"</span>
</span><span><span></span>
</span><span><span>so then you get</span>
</span><span><span>user ~ ∆ echo "hey</span>
</span><span><span>--&gt; ...!"</span>
</span><span><span>hey ...!</span>
</span><span><span>]]</span><span>--</span>
</span><span><span>hilbish</span><span>.</span><span>multiprompt</span> <span>'--&gt;'</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#multiprompt&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Changes the text prompt when Hilbish asks for more input.
This will show up when text is incomplete, like a missing quote </p><p class="font-bold text-xl" id="Parameters-string-**str**">Parameters
<code>string</code> **<code>str</code>** </p><p class="font-bold text-xl" id="Example-lua---[[-imagine-this-is-your-text-input:-user-~-∆-echo-&quot;hey">Example
<code>lua
--[[
imagine this is your text input:
user ~ ∆ echo &quot;hey</code></p><p>but there&#39;s a missing quote! hilbish will now prompt you so the terminal
will look like:
user ~ ∆ echo &quot;hey
--&gt; ...!&quot;</p><p>so then you get
user ~ ∆ echo &quot;hey
--&gt; ...!&quot;
hey ...!
]]--
hilbish.multiprompt &#39;--&gt;&#39;
<code>
&lt;/div&gt;</code></p><p>&lt;hr&gt;
&lt;div id=&#39;prependPath&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.prependPath(dir)
<a href="#prependPath" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Prepends <code>dir</code> to $PATH.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>dir</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#prependPath&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Prepends <code>dir</code> to $PATH. </p><p class="font-bold text-xl" id="Parameters-string-**dir**">Parameters
<code>string</code> **<code>dir</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;prompt&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.prompt(str, typ)
<a href="#prompt" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Changes the shell prompt to the provided string.<br>
There are a few verbs that can be used in the prompt text.<br>
These will be formatted and replaced with the appropriate values.<br>
<code>%d</code> - Current working directory<br>
<code>%u</code> - Name of current user<br>
<code>%h</code> - Hostname of device</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>str</code></strong></p>
<p><code>string</code> <strong><code>typ?</code></strong><br>
Type of prompt, being left or right. Left by default.</p>
<h4>Example</h4>
<pre><code><span><span>-- the default hilbish prompt without color</span>
</span><span><span>hilbish</span><span>.</span><span>prompt</span> <span>'%u %d ∆'</span>
</span><span><span>-- or something of old:</span>
</span><span><span>hilbish</span><span>.</span><span>prompt</span> <span>'%u@%h :%d $'</span>
</span><span><span>-- prompt: user@hostname: ~/directory $</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#prompt&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Changes the shell prompt to the provided string.
There are a few verbs that can be used in the prompt text.
These will be formatted and replaced with the appropriate values.
<code>%d</code> - Current working directory
<code>%u</code> - Name of current user
<code>%h</code> - Hostname of device </p><p class="font-bold text-xl">Parameters
<code>string</code> **<code>str</code>** </p><p><code>string</code> **<code>typ?</code>**
Type of prompt, being left or right. Left by default.</p><p class="font-bold text-xl" id="Example-lua----the-default-hilbish-prompt-without-color-hilbish.prompt-&#39;%u-%d-∆&#39;----or-something-of-old:-hilbish.prompt-&#39;%u@%h-:%d-$&#39;----prompt:-user@hostname:-~/directory-$--&lt;/div&gt;">Example
<code>lua
-- the default hilbish prompt without color
hilbish.prompt &#39;%u %d ∆&#39;
-- or something of old:
hilbish.prompt &#39;%u@%h :%d $&#39;
-- prompt: user@hostname: ~/directory $
</code>
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;read&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.read(prompt) -&gt; input (string)
<a href="#read" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Read input from the user, using Hilbishs line editor/input reader.<br>
This is a separate instance from the one Hilbish actually uses.<br>
Returns <code>input</code>, will be nil if Ctrl-D is pressed, or an error occurs.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>prompt?</code></strong><br>
Text to print before input, can be empty.</p>
</div>
<hr>
<div>
<h4>
hilbish.timeout(cb, time) -&gt; <a href="/Hilbish/docs/api/hilbish/hilbish.timers/#timer" rel="noopener noreferrer">Timer</a>
<a href="#timeout" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Executed the <code>cb</code> function after a period of <code>time</code>.<br>
This creates a Timer that starts ticking immediately.</p>
<h4>Parameters</h4>
<p><code>function</code> <strong><code>cb</code></strong></p>
<p><code>number</code> <strong><code>time</code></strong><br>
Time to run in milliseconds.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#read&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Read input from the user, using Hilbish&#39;s line editor/input reader.
This is a separate instance from the one Hilbish actually uses.
Returns <code>input</code>, will be nil if Ctrl-D is pressed, or an error occurs. </p><p class="font-bold text-xl" id="Parameters-string-**prompt**---Text-to-print-before-input-can-be-empty.">Parameters
<code>string</code> **<code>prompt?</code>**
Text to print before input, can be empty.</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;timeout&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.timeout(cb, time) -&gt; &lt;a href=&quot;/Hilbish/docs/api/hilbish/hilbish.timers/#timer&quot; style=&quot;text-decoration: none;&quot; id=&quot;lol&quot;&gt;Timer&lt;/a&gt;
&lt;a href=&quot;#timeout&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Executed the <code>cb</code> function after a period of <code>time</code>.
This creates a Timer that starts ticking immediately. </p><p class="font-bold text-xl">Parameters
<code>function</code> **<code>cb</code>** </p><p><code>number</code> **<code>time</code>**
Time to run in milliseconds.</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;which&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.which(name) -&gt; string
<a href="#which" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Checks if <code>name</code> is a valid command.<br>
Will return the path of the binary, or a basename if its a commander.</p>
<h4>Parameters</h4>
<p><code>string</code> <strong><code>name</code></strong></p>
</div>
<h2>Types</h2>
<hr>
<h2>Sink</h2>
<p>A sink is a structure that has input and/or output to/from a desination.</p>
<h3>Methods</h3>
<h4>autoFlush(auto)</h4>
<p>Sets/toggles the option of automatically flushing output.
A call with no argument will toggle the value.</p>
<h4>flush()</h4>
<p>Flush writes all buffered input to the sink.</p>
<h4>read() -&gt; string</h4>
<p>Reads a liine of input from the sink.</p>
<h4>readAll() -&gt; string</h4>
<p>Reads all input from the sink.</p>
<h4>write(str)</h4>
<p>Writes data to a sink.</p>
<h4>writeln(str)</h4>
<p>Writes data to a sink with a newline at the end.</p>
<hr>
<div>
<h4>
&lt;a href=&quot;#which&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Checks if <code>name</code> is a valid command.
Will return the path of the binary, or a basename if it&#39;s a commander. </p><p class="font-bold text-xl" id="Parameters-string-**name**">Parameters
<code>string</code> **<code>name</code>** </p><p>&lt;/div&gt;</p><h2 class="font-bold text-3xl" id="Types-&lt;hr&gt;">Types
&lt;hr&gt;</h2><h2 class="font-bold text-3xl" id="Sink-A-sink-is-a-structure-that-has-input-and/or-output-to/from-a-desination.">Sink
A sink is a structure that has input and/or output to/from a desination.</h2><h3 class="font-bold text-2xl" id="Methods">Methods</h3><p class="font-bold text-xl" id="autoFlush(auto)-Sets/toggles-the-option-of-automatically-flushing-output.-A-call-with-no-argument-will-toggle-the-value.">autoFlush(auto)
Sets/toggles the option of automatically flushing output.
A call with no argument will toggle the value.</p><p class="font-bold text-xl" id="flush()-Flush-writes-all-buffered-input-to-the-sink.">flush()
Flush writes all buffered input to the sink.</p><p class="font-bold text-xl" id="read()--&gt;-string-Reads-a-liine-of-input-from-the-sink.">read() -&gt; string
Reads a liine of input from the sink.</p><p class="font-bold text-xl" id="readAll()--&gt;-string-Reads-all-input-from-the-sink.">readAll() -&gt; string
Reads all input from the sink.</p><p class="font-bold text-xl" id="write(str)-Writes-data-to-a-sink.">write(str)
Writes data to a sink.</p><p class="font-bold text-xl" id="writeln(str)-Writes-data-to-a-sink-with-a-newline-at-the-end.">writeln(str)
Writes data to a sink with a newline at the end.</p><p>&lt;hr&gt;
&lt;div id=&#39;run&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.run(cmd, streams)
<a href="#run" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Runs <code>cmd</code> in Hilbishs shell script interpreter.
&lt;a href=&quot;#run&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Runs <code>cmd</code> in Hilbish&#39;s shell script interpreter.
The <code>streams</code> parameter specifies the output and input streams the command should use.
For example, to write command output to a sink.
As a table, the caller can directly specify the standard output, error, and input
streams of the command with the table keys <code>out</code>, <code>err</code>, and <code>input</code> respectively.
As a boolean, it specifies whether the command should use standard output or return its output streams.</p>
<h4>Parameters</h4>
<p><code>cmd</code> <strong><code>string</code></strong></p>
<p><code>streams</code> <strong><code>table|boolean</code></strong></p>
<h4>Example</h4>
<pre><code><span><span>-- This code is the same as `ls -l | wc -l`</span>
</span><span><span>local</span> <span>fs</span> <span>=</span> <span>require</span> <span>'fs'</span>
</span><span><span>local</span> <span>pr</span><span>,</span> <span>pw</span> <span>=</span> <span>fs</span><span>.</span><span>pipe</span><span>(</span><span>)</span>
</span><span><span>hilbish</span><span>.</span><span>run</span><span>(</span><span>'ls -l'</span><span>,</span> <span>&lbrace;</span>
</span><span> <span>stdout</span> <span>=</span> <span>pw</span><span>,</span>
</span><span> <span>stderr</span> <span>=</span> <span>pw</span><span>,</span>
</span><span><span>&rbrace;</span><span>)</span>
</span><span><span>pw</span><span>:</span><span>close</span><span>(</span><span>)</span>
</span><span><span>hilbish</span><span>.</span><span>run</span><span>(</span><span>'wc -l'</span><span>,</span> <span>&lbrace;</span>
</span><span> <span>stdin</span> <span>=</span> <span>pr</span>
</span><span><span>&rbrace;</span><span>)</span>
</span></code></pre>
</div>
<hr>
<div>
<h4>
As a boolean, it specifies whether the command should use standard output or return its output streams.
#### Parameters
<code>cmd</code> **<code>string</code>** </p><p><code>streams</code> **<code>table|boolean</code>** </p><p class="font-bold text-xl" id="Example-lua----This-code-is-the-same-as-`ls--l-|-wc--l`-local-fs-=-require-&#39;fs&#39;-local-pr-pw-=-fs.pipe()-hilbish.run(&#39;ls--l&#39;-{- stdout-=-pw- stderr-=-pw-})-pw:close()-hilbish.run(&#39;wc--l&#39;-{- stdin-=-pr-})--&lt;/div&gt;">Example
<code>lua
-- This code is the same as `ls -l | wc -l`
local fs = require &#39;fs&#39;
local pr, pw = fs.pipe()
hilbish.run(&#39;ls -l&#39;, {
stdout = pw,
stderr = pw,
})
pw:close()
hilbish.run(&#39;wc -l&#39;, {
stdin = pr
})
</code>
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;runnerMode&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
hilbish.runnerMode(mode)
<a href="#runnerMode" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Sets the execution/runner mode for interactive Hilbish.
<strong>NOTE: This function is deprecated and will be removed in 3.0</strong>
&lt;a href=&quot;#runnerMode&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Sets the execution/runner mode for interactive Hilbish.
*<strong>NOTE: This function is deprecated and will be removed in 3.0</strong>*
Use <code>hilbish.runner.setCurrent</code> instead.
This determines whether Hilbish wll try to run input as Lua
and/or sh or only do one of either.
Accepted values for mode are hybrid (the default), hybridRev (sh first then Lua),
sh, and lua. It also accepts a function, to which if it is passed one
will call it to execute user input instead.
Read <a href="../features/runner-mode" rel="noopener noreferrer">about runner mode</a> for more information.</p>
<h4>Parameters</h4>
<p><code>mode</code> <strong><code>string|function</code></strong></p>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
Read <a href="../features/runner-mode">about runner mode</a> for more information.
#### Parameters
<code>mode</code> **<code>string|function</code>** </p><p>&lt;/div&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,3 +1,3 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>API</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>API</h1><Tag xmlns="namespace"><p>Welcome to the API documentation for Hilbish. This documents Lua functions
provided by Hilbish.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>API</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">API</h1><p>Welcome to the API documentation for Hilbish. This documents Lua functions
provided by Hilbish.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,43 +1,22 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module snail</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module snail</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The snail library houses Hilbishs Lua wrapper of its shell script interpreter.
Its not very useful other than running shell scripts, which can be done with other
Hilbish functions.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#new" rel="noopener noreferrer">new() -&gt; @Snail</a></td>
<td>Creates a new Snail instance.</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
snail.new() -&gt; <a href="/Hilbish/docs/api/snail/#snail" rel="noopener noreferrer">Snail</a>
<a href="#new" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Creates a new Snail instance.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<h2>Types</h2>
<hr>
<h2>Snail</h2>
<p>A Snail is a shell script interpreter instance.</p>
<h3>Methods</h3>
<h4>dir(path)</h4>
<p>Changes the directory of the snail instance.
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module snail</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module snail</h1><h2 class="font-bold text-3xl" id="Introduction">Introduction</h2><p>The snail library houses Hilbish&#39;s Lua wrapper of its shell script interpreter.
It&#39;s not very useful other than running shell scripts, which can be done with other
Hilbish functions.</p><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;new&quot;&gt;new()--&gt;-@Snail&lt;/a&gt;|Creates-a-new-Snail-instance.|">Functions
|||
|----|----|
|&lt;a href=&quot;#new&quot;&gt;new() -&gt; @Snail&lt;/a&gt;|Creates a new Snail instance.|</h2><p>&lt;hr&gt;
&lt;div id=&#39;new&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
snail.new() -&gt; &lt;a href=&quot;/Hilbish/docs/api/snail/#snail&quot; style=&quot;text-decoration: none;&quot; id=&quot;lol&quot;&gt;Snail&lt;/a&gt;
&lt;a href=&quot;#new&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Creates a new Snail instance. </p><p class="font-bold text-xl" id="Parameters-This-function-has-no-parameters.---&lt;/div&gt;">Parameters
This function has no parameters.
&lt;/div&gt;</p><h2 class="font-bold text-3xl" id="Types-&lt;hr&gt;">Types
&lt;hr&gt;</h2><h2 class="font-bold text-3xl" id="Snail-A-Snail-is-a-shell-script-interpreter-instance.">Snail
A Snail is a shell script interpreter instance.</h2><h3 class="font-bold text-2xl" id="Methods">Methods</h3><p class="font-bold text-xl" id="dir(path)-Changes-the-directory-of-the-snail-instance.-The-interpreter-keeps-its-set-directory-even-when-the-Hilbish-process-changes-directory-so-this-should-be-called-on-the-hilbish.cd-hook.">dir(path)
Changes the directory of the snail instance.
The interpreter keeps its set directory even when the Hilbish process changes
directory, so this should be called on the <code>hilbish.cd</code> hook.</p>
<h4>run(command, streams)</h4>
<p>Runs a shell command. Works the same as <code>hilbish.run</code>, but only accepts a table of streams.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
directory, so this should be called on the <code>hilbish.cd</code> hook.</p><p class="font-bold text-xl" id="run(command-streams)-Runs-a-shell-command.-Works-the-same-as-hilbish.run-but-only-accepts-a-table-of-streams.">run(command, streams)
Runs a shell command. Works the same as <code>hilbish.run</code>, but only accepts a table of streams.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,79 +1,46 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module terminal</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module terminal</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The terminal library is a simple and lower level library for certain terminal interactions.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#restoreState" rel="noopener noreferrer">restoreState()</a></td>
<td>Restores the last saved state of the terminal</td>
</tr>
<tr>
<td><a href="#saveState" rel="noopener noreferrer">saveState()</a></td>
<td>Saves the current state of the terminal.</td>
</tr>
<tr>
<td><a href="#setRaw" rel="noopener noreferrer">setRaw()</a></td>
<td>Puts the terminal into raw mode.</td>
</tr>
<tr>
<td><a href="#size" rel="noopener noreferrer">size()</a></td>
<td>Gets the dimensions of the terminal. Returns a table with <code>width</code> and <code>height</code></td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module terminal</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module terminal</h1><h2 class="font-bold text-3xl" id="Introduction-The-terminal-library-is-a-simple-and-lower-level-library-for-certain-terminal-interactions.">Introduction
The terminal library is a simple and lower level library for certain terminal interactions.</h2><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;restoreState&quot;&gt;restoreState()&lt;/a&gt;|Restores-the-last-saved-state-of-the-terminal|-|&lt;a-href=&quot;saveState&quot;&gt;saveState()&lt;/a&gt;|Saves-the-current-state-of-the-terminal.|-|&lt;a-href=&quot;setRaw&quot;&gt;setRaw()&lt;/a&gt;|Puts-the-terminal-into-raw-mode.|-|&lt;a-href=&quot;size&quot;&gt;size()&lt;/a&gt;|Gets-the-dimensions-of-the-terminal.-Returns-a-table-with-width-and-height|">Functions
|||
|----|----|
|&lt;a href=&quot;#restoreState&quot;&gt;restoreState()&lt;/a&gt;|Restores the last saved state of the terminal|
|&lt;a href=&quot;#saveState&quot;&gt;saveState()&lt;/a&gt;|Saves the current state of the terminal.|
|&lt;a href=&quot;#setRaw&quot;&gt;setRaw()&lt;/a&gt;|Puts the terminal into raw mode.|
|&lt;a href=&quot;#size&quot;&gt;size()&lt;/a&gt;|Gets the dimensions of the terminal. Returns a table with <code>width</code> and <code>height</code>|</h2><p>&lt;hr&gt;
&lt;div id=&#39;restoreState&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
terminal.restoreState()
<a href="#restoreState" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Restores the last saved state of the terminal</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#restoreState&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Restores the last saved state of the terminal </p><p class="font-bold text-xl" id="Parameters-This-function-has-no-parameters.---&lt;/div&gt;">Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;saveState&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
terminal.saveState()
<a href="#saveState" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Saves the current state of the terminal.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#saveState&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Saves the current state of the terminal. </p><p class="font-bold text-xl">Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;setRaw&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
terminal.setRaw()
<a href="#setRaw" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Puts the terminal into raw mode.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#setRaw&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Puts the terminal into raw mode. </p><p class="font-bold text-xl">Parameters
This function has no parameters.
&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;size&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
terminal.size()
<a href="#size" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Gets the dimensions of the terminal. Returns a table with <code>width</code> and <code>height</code><br>
NOTE: The size refers to the amount of columns and rows of text that can fit in the terminal.</p>
<h4>Parameters</h4>
<p>This function has no parameters.</p>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#size&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Gets the dimensions of the terminal. Returns a table with <code>width</code> and <code>height</code>
NOTE: The size refers to the amount of columns and rows of text that can fit in the terminal. </p><p class="font-bold text-xl">Parameters
This function has no parameters.
&lt;/div&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,98 +1,79 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Completions</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Completions</h1><Tag xmlns="namespace"><p>Completions for commands can be created with the <a href="../api/hilbish#complete" rel="noopener noreferrer"><code>hilbish.complete</code></a>
function. See the link for how to use it.</p>
<p>To create completions for a command is simple.
The callback will be passed 3 parameters:</p>
<ul>
<li><code>query</code> (string): The text that the user is currently trying to complete.
This should be used to match entries.</li>
<li><code>ctx</code> (string): Contains the entire line. Use this if
more text is needed to be parsed for context.</li>
<li><code>fields</code> (string): The <code>ctx</code> split up by spaces.</li>
</ul>
<p>In most cases, the completer just uses <code>fields</code> to check the amount
and <code>query</code> on what to match entries on.</p>
<p>In order to return your results, it has to go within a “completion group.”
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Completions</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Completions</h1><p>Completions for commands can be created with the <a href="../api/hilbish#complete"><code>hilbish.complete</code></a>
function. See the link for how to use it.</p><p>To create completions for a command is simple.
The callback will be passed 3 parameters:
- <code>query</code> (string): The text that the user is currently trying to complete.
This should be used to match entries.
- <code>ctx</code> (string): Contains the entire line. Use this if
more text is needed to be parsed for context.
- <code>fields</code> (string): The <code>ctx</code> split up by spaces.</p><p>In most cases, the completer just uses <code>fields</code> to check the amount
and <code>query</code> on what to match entries on.</p><p>In order to return your results, it has to go within a &quot;completion group.&quot;
Then you return a table of completion groups and a prefix. The prefix will
usually just be the <code>query</code>.</p>
<p>Hilbish allows one to mix completion menus of different types, so
usually just be the <code>query</code>.</p><p>Hilbish allows one to mix completion menus of different types, so
a grid menu and a list menu can be used and complete and display at the same time.
A completion group is a table with these keys:</p>
<ul>
<li><code>type</code> (string): type of completion menu, either <code>grid</code> or <code>list</code>.</li>
<li><code>items</code> (table): a list of items.</li>
</ul>
<p>The requirements of the <code>items</code> table is different based on the
<code>type</code>. If it is a <code>grid</code>, it can simply be a table of strings.</p>
<p>Otherwise if it is a <code>list</code> then each entry can
A completion group is a table with these keys:
- <code>type</code> (string): type of completion menu, either <code>grid</code> or <code>list</code>.
- <code>items</code> (table): a list of items. </p><p>The requirements of the <code>items</code> table is different based on the
<code>type</code>. If it is a <code>grid</code>, it can simply be a table of strings.</p><p>Otherwise if it is a <code>list</code> then each entry can
either be a string or a table.
Example:</p>
<pre><code><span><span>local</span> <span>cg</span> <span>=</span> <span>&lbrace;</span>
</span><span> <span>items</span> <span>=</span> <span>&lbrace;</span>
</span><span> <span>'list item 1'</span><span>,</span>
</span><span> <span>[</span><span>'--command-flag-here'</span><span>]</span> <span>=</span> <span>&lbrace;</span><span>'this does a thing'</span><span>,</span> <span>'--the-flag-alias'</span><span>&rbrace;</span>
</span><span> <span>&rbrace;</span><span>,</span>
</span><span> <span>type</span> <span>=</span> <span>'list'</span>
</span><span><span>&rbrace;</span>
</span><span><span>local</span> <span>cg2</span> <span>=</span> <span>&lbrace;</span>
</span><span> <span>items</span> <span>=</span> <span>&lbrace;</span><span>'just'</span><span>,</span> <span>'a bunch'</span><span>,</span> <span>'of items'</span><span>,</span> <span>'here'</span><span>,</span> <span>'hehe'</span><span>&rbrace;</span><span>,</span>
</span><span> <span>type</span> <span>=</span> <span>'grid'</span>
</span><span><span>&rbrace;</span>
</span><span>
</span><span><span>return</span> <span>&lbrace;</span><span>cg</span><span>,</span> <span>cg2</span><span>&rbrace;</span><span>,</span> <span>prefix</span>
</span></code></pre>
<p>Which looks like this:<br>
{{&lt; video src=“<a href="https://safe.saya.moe/t4CiLK6dgPbD.mp4" rel="noopener noreferrer">https://safe.saya.moe/t4CiLK6dgPbD.mp4</a>&gt;}}</p>
<h1>Completion Group Types</h1>
<h3>grid</h3>
<p>Grid is the simplest completion group type. All items are strings and when
completion is done is displayed in a grid based on size.</p>
<p>Example:</p>
<pre><code><span><span>&lbrace;</span>
</span><span> <span>items</span> <span>=</span> <span>&lbrace;</span><span>'just'</span><span>,</span> <span>'a bunch'</span><span>,</span> <span>'of items'</span><span>,</span> <span>'here'</span><span>,</span> <span>'hehe'</span><span>&rbrace;</span><span>,</span>
</span><span> <span>type</span> <span>=</span> <span>'grid'</span>
</span><span><span>&rbrace;</span>
</span></code></pre>
<h3>list</h3>
<p>The list completion group type displays in a list. A list item can either be a string, or a table for additional display options.
Example:
<code>lua
local cg = {
items = {
&#39;list item 1&#39;,
[&#39;--command-flag-here&#39;] = {&#39;this does a thing&#39;, &#39;--the-flag-alias&#39;}
},
type = &#39;list&#39;
}
local cg2 = {
items = {&#39;just&#39;, &#39;a bunch&#39;, &#39;of items&#39;, &#39;here&#39;, &#39;hehe&#39;},
type = &#39;grid&#39;
}</code></p><p>return {cg, cg2}, prefix
<code></code></p><p>Which looks like this:
{{&lt; video src=&quot;https://safe.saya.moe/t4CiLK6dgPbD.mp4&quot; &gt;}}</p><h1 class="font-bold text-4xl" id="Completion-Group-Types">Completion Group Types</h1><h3 class="font-bold text-2xl" id="grid-Grid-is-the-simplest-completion-group-type.-All-items-are-strings-and-when-completion-is-done-is-displayed-in-a-grid-based-on-size.">grid
Grid is the simplest completion group type. All items are strings and when
completion is done is displayed in a grid based on size.</h3><p>Example:
<code>lua
{
items = {&#39;just&#39;, &#39;a bunch&#39;, &#39;of items&#39;, &#39;here&#39;, &#39;hehe&#39;},
type = &#39;grid&#39;
}
</code></p><h3 class="font-bold text-2xl" id="list-The-list-completion-group-type-displays-in-a-list.-A-list-item-can-either-be-a-string-or-a-table-for-additional-display-options.-A-completion-alias-can-be-specified-either-as-the-2nd-entry-in-the-options-table-or-te-alias-key.">list
The list completion group type displays in a list. A list item can either be a string, or a table for additional display options.
A completion alias can be specified either as the <code>2nd</code> entry in the options table
or te <code>alias</code> key.</p>
<p>A description can optionally be displayed for a list item, which is either the <code>1st</code>
entry or the <code>description</code> key.</p>
<p>Lastly, list entries can be styled. This is done with the <code>display</code> key. If this is present, this
overrides what the completion item <em>looks</em> like.</p>
<p>Example:</p>
<pre><code><span><span>&lbrace;</span>
</span><span> <span>items</span> <span>=</span> <span>&lbrace;</span>
</span><span> <span>[</span><span>'--flag'</span><span>]</span> <span>=</span> <span>&lbrace;</span>
</span><span> <span>description</span> <span>=</span> <span>'this flag nukes the bri ish'</span><span>,</span>
</span><span> <span>alias</span> <span>=</span> <span>'--bye-bri-ish'</span><span>,</span>
</span><span> <span>display</span> <span>=</span> <span>lunacolors</span><span>.</span><span>format</span><span>(</span><span>'--&lbrace;blue&rbrace;fl&lbrace;red&rbrace;ag'</span><span>)</span>
</span><span> <span>&rbrace;</span><span>,</span>
</span><span> <span>[</span><span>'--flag2'</span><span>]</span> <span>=</span> <span>&lbrace;</span>
</span><span> <span>'make pizza'</span><span>,</span> <span>-- description</span>
</span><span> <span>'--pizzuh'</span><span>,</span> <span>-- alias</span>
</span><span> <span>display</span> <span>=</span> <span>lunacolors</span><span>.</span><span>yellow</span> <span>'--pizzuh'</span>
</span><span> <span>&rbrace;</span><span>,</span>
</span><span> <span>'--flag3'</span>
</span><span> <span>&rbrace;</span><span>,</span>
</span><span> <span>type</span> <span>=</span> <span>'list'</span>
</span><span><span>&rbrace;</span>
</span></code></pre>
<h1>Completion Handler</h1>
<p>Like most parts of Hilbish, its made to be extensible and
or te <code>alias</code> key.</h3><p>A description can optionally be displayed for a list item, which is either the <code>1st</code>
entry or the <code>description</code> key.</p><p>Lastly, list entries can be styled. This is done with the <code>display</code> key. If this is present, this
overrides what the completion item <strong>looks</strong> like.</p><p>Example:
<code>lua
{
items = {
[&#39;--flag&#39;] = {
description = &#39;this flag nukes the bri ish&#39;,
alias = &#39;--bye-bri-ish&#39;,
display = lunacolors.format(&#39;--{blue}fl{red}ag&#39;)
},
[&#39;--flag2&#39;] = {
&#39;make pizza&#39;, -- description
&#39;--pizzuh&#39;, -- alias
display = lunacolors.yellow &#39;--pizzuh&#39;
},
&#39;--flag3&#39;
},
type = &#39;list&#39;
}
</code></p><h1 class="font-bold text-4xl" id="Completion-Handler-Like-most-parts-of-Hilbish-it&#39;s-made-to-be-extensible-and-customizable.-The-default-handler-for-completions-in-general-can-be-overwritten-to-provide-more-advanced-completions-if-needed.-This-usually-doesn&#39;t-need-to-be-done-though-unless-you-know-what-you&#39;re-doing.">Completion Handler
Like most parts of Hilbish, it&#39;s made to be extensible and
customizable. The default handler for completions in general can
be overwritten to provide more advanced completions if needed.
This usually doesnt need to be done though, unless you know
what youre doing.</p>
<p>The default completion handler provides 3 things:
This usually doesn&#39;t need to be done though, unless you know
what you&#39;re doing.</h1><p>The default completion handler provides 3 things:
binaries (with a plain name requested to complete, those in
$PATH), files, or command completions. It will try to run a handler
for the command or fallback to file completions.</p>
<p>To overwrite it, just assign a function to <code>hilbish.completion.handler</code> like so:</p>
<pre><code><span><span>-- line is the entire line as a string</span>
</span><span><span>-- pos is the position of the cursor.</span>
</span><span><span>function</span> <span>hilbish</span><span>.</span><span>completion</span><span>.</span><span>handler</span><span>(</span><span>line</span><span>,</span> <span>pos</span><span>)</span>
</span><span> <span>-- do things</span>
</span><span><span>end</span>
</span></code></pre></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
for the command or fallback to file completions.</p><p>To overwrite it, just assign a function to <code>hilbish.completion.handler</code> like so:
<code>lua
-- line is the entire line as a string
-- pos is the position of the cursor.
function hilbish.completion.handler(line, pos)
-- do things
end
</code></p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,17 +1,14 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Frequently Asked Questions</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Frequently Asked Questions</h1><Tag xmlns="namespace"><h1>Is Hilbish POSIX compliant?</h1>
<p>No, it is not. POSIX compliance is a non-goal. Perhaps in the future,
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Frequently Asked Questions</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Frequently Asked Questions</h1><h1 class="font-bold text-4xl" id="Is-Hilbish-POSIX-compliant-No-it-is-not.-POSIX-compliance-is-a-non-goal.-Perhaps-in-the-future-someone-would-be-able-to-write-a-native-plugin-to-support-shell-scripting-(which-would-be-against-it&#39;s-main-goal-but-....)">Is Hilbish POSIX compliant?
No, it is not. POSIX compliance is a non-goal. Perhaps in the future,
someone would be able to write a native plugin to support shell scripting
(which would be against its main goal, but ….)</p>
<h1>Windows Support?</h1>
<p>It compiles for Windows (CI ensures it does), but otherwise it is not
directly supported. If youd like to improve this situation,
checkout <a href="https://github.com/Rosettea/Hilbish/discussions/165" rel="noopener noreferrer">the discussion</a>.</p>
<h1>Why?</h1>
<p>Hilbish emerged from the desire of a Lua configured shell.
It was the initial reason that it was created, but now its more:
to be hyper extensible, simpler and more user friendly.</p>
<h1>Does it have “autocompletion” or “tab completion”</h1>
<p>Of course! This is a modern shell. Hilbish provides a way for users
(which would be against it&#39;s main goal, but ....)</h1><h1 class="font-bold text-4xl" id="Windows-Support-It-compiles-for-Windows-(CI-ensures-it-does)-but-otherwise-it-is-not-directly-supported.-If-you&#39;d-like-to-improve-this-situation-checkout-the-discussion.">Windows Support?
It compiles for Windows (CI ensures it does), but otherwise it is not
directly supported. If you&#39;d like to improve this situation,
checkout <a href="https://github.com/Rosettea/Hilbish/discussions/165">the discussion</a>.</h1><h1 class="font-bold text-4xl" id="Why-Hilbish-emerged-from-the-desire-of-a-Lua-configured-shell.-It-was-the-initial-reason-that-it-was-created-but-now-it&#39;s-more:-to-be-hyper-extensible-simpler-and-more-user-friendly.">Why?
Hilbish emerged from the desire of a Lua configured shell.
It was the initial reason that it was created, but now it&#39;s more:
to be hyper extensible, simpler and more user friendly.</h1><h1 class="font-bold text-4xl" id="Does-it-have-&quot;autocompletion&quot;-or-&quot;tab-completion&quot;-Of-course-This-is-a-modern-shell.-Hilbish-provides-a-way-for-users-to-write-tab-completion-for-any-command-and/or-the-whole-shell.-Inline-hinting-and-syntax-highlighting-are-also-available.">Does it have &quot;autocompletion&quot; or &quot;tab completion&quot;
Of course! This is a modern shell. Hilbish provides a way for users
to write tab completion for any command and/or the whole shell.
Inline hinting and syntax highlighting are also available.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
Inline hinting and syntax highlighting are also available.</h1></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,5 +1,5 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Features</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Features</h1><Tag xmlns="namespace"><p>Hilbish has a wide range of features to enhance the users experience
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Features</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Features</h1><p>Hilbish has a wide range of features to enhance the user&#39;s experience
new ones are always being added. If there is something missing here or
something you would like to see, please <a href="https://github.com/Rosettea/Hilbish/discussions" rel="noopener noreferrer">start a discussion</a>
or comment on any existing ones which match your request.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
something you would like to see, please <a href="https://github.com/Rosettea/Hilbish/discussions">start a discussion</a>
or comment on any existing ones which match your request.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,31 +1,23 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Notification</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Notification</h1><Tag xmlns="namespace"><p>Hilbish features a simple notification system which can be
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Notification</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Notification</h1><p>Hilbish features a simple notification system which can be
used by other plugins and parts of the shell to notify the user
of various actions. This is used via the <code>hilbish.message</code> interface.</p>
<p>A <code>message</code> is defined as a table with the following properties:</p>
<ul>
<li><code>icon</code>: A unicode/emoji icon for the notification.</li>
<li><code>title</code>: The title of the message</li>
<li><code>text</code>: Message text/body</li>
<li><code>channel</code>: The source of the message. This should be a
unique and easily readable text identifier.</li>
<li><code>summary</code>: A short summary of the notification and message.
of various actions. This is used via the <code>hilbish.message</code> interface.</p><p>A <code>message</code> is defined as a table with the following properties:
- <code>icon</code>: A unicode/emoji icon for the notification.
- <code>title</code>: The title of the message
- <code>text</code>: Message text/body
- <code>channel</code>: The source of the message. This should be a
unique and easily readable text identifier.
- <code>summary</code>: A short summary of the notification and message.
If this is not present and you are using this to display messages,
you should take part of the <code>text</code> instead.</li>
</ul>
<p>The <code>hilbish.message</code> interface provides the following functions:</p>
<ul>
<li><code>send(message)</code>: Sends a message and emits the <code>hilbish.notification</code>
you should take part of the <code>text</code> instead.</p><p>The <code>hilbish.message</code> interface provides the following functions:
- <code>send(message)</code>: Sends a message and emits the <code>hilbish.notification</code>
signal. DO NOT emit the <code>hilbish.notification</code> signal directly, or
the message will not be stored by the message handler.</li>
<li><code>read(idx)</code>: Marks message at <code>idx</code> as read.</li>
<li><code>delete(idx)</code>: Removes message at <code>idx</code>.</li>
<li><code>readAll()</code>: Marks all messages as read.</li>
<li><code>clear()</code>: Deletes all messages.</li>
</ul>
<p>There are a few simple use cases of this notification/messaging system.
It could also be used as some “inter-shell” messaging system (???) but
is intended to display to users.</p>
<p>An example is notifying users of completed jobs/commands ran in the background.
the message will not be stored by the message handler.
- <code>read(idx)</code>: Marks message at <code>idx</code> as read.
- <code>delete(idx)</code>: Removes message at <code>idx</code>.
- <code>readAll()</code>: Marks all messages as read.
- <code>clear()</code>: Deletes all messages.</p><p>There are a few simple use cases of this notification/messaging system.
It could also be used as some &quot;inter-shell&quot; messaging system (???) but
is intended to display to users.</p><p>An example is notifying users of completed jobs/commands ran in the background.
Any Hilbish-native command (think the upcoming Greenhouse pager) can display
it.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
it.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,53 +1,35 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Options</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Options</h1><Tag xmlns="namespace"><p>Opts are simple toggle or value options a user can set in Hilbish.
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Options</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Options</h1><p>Opts are simple toggle or value options a user can set in Hilbish.
As toggles, there are things like <code>autocd</code> or history saving. As values,
there is the <code>motd</code> which the user can either change to a custom string or disable.</p>
<p>Opts are accessed from the <code>hilbish.opts</code> table. Here they can either
be read or modified</p>
<h3><code>autocd</code></h3>
<h4>Value: <code>boolean</code></h4>
<h4>Default: <code>false</code></h4>
<p>The autocd opt makes it so that lone directories attempted to be executed are
instead set as the shells directory.</p>
<p>Example:</p>
<pre><code><span>~/Directory
</span><span>∆ ~
</span><span>~
</span><span>∆ Downloads
</span><span>~/Downloads
</span><span>∆ ../Documents
</span><span>~/Documents
</span><span>
</span></code></pre>
<hr>
<h3><code>history</code></h3>
<h4>Value: <code>boolean</code></h4>
<h4>Default: <code>true</code></h4>
<p>Sets whether command history will be saved or not.</p>
<hr>
<h3><code>greeting</code></h3>
<h4>Value: <code>boolean</code> or <code>string</code></h4>
<p>The greeting is the message that Hilbish shows on startup
(the one which says Welcome to Hilbish).</p>
<p>This can be set to either true/false to enable/disable or a custom greeting string.</p>
<hr>
<h3><code>motd</code></h3>
<h4>Value: <code>boolean</code></h4>
<h4>Default: <code>true</code></h4>
<p>The message of the day shows the current major.minor version and
includes a small range of things added in the current release.</p>
<p>This can be set to <code>false</code> to disable the message.</p>
<hr>
<h3><code>fuzzy</code></h3>
<h4>Value: <code>boolean</code></h4>
<h4>Default: <code>false</code></h4>
<p>Toggles the functionality of fuzzy history searching, usable
there is the <code>motd</code> which the user can either change to a custom string or disable.</p><p>Opts are accessed from the <code>hilbish.opts</code> table. Here they can either
be read or modified</p><h3 class="font-bold text-2xl" id="autocd"><code>autocd</code></h3><p class="font-bold text-xl" id="Value:-boolean-Default:-false">Value: <code>boolean</code>
Default: <code>false</code></p><p>The autocd opt makes it so that lone directories attempted to be executed are
instead set as the shell&#39;s directory.</p><p>Example:
<code>
~/Directory
∆ ~
~
∆ Downloads
~/Downloads
∆ ../Documents
~/Documents
</code></p><p>&lt;hr&gt;</p><h3 class="font-bold text-2xl" id="history"><code>history</code></h3><p class="font-bold text-xl" id="Value:-boolean-Default:-true-Sets-whether-command-history-will-be-saved-or-not.">Value: <code>boolean</code>
Default: <code>true</code>
Sets whether command history will be saved or not.</p><p>&lt;hr&gt;
### <code>greeting</code>
#### Value: <code>boolean</code> or <code>string</code>
The greeting is the message that Hilbish shows on startup
(the one which says Welcome to Hilbish).</p><p>This can be set to either true/false to enable/disable or a custom greeting string.</p><p>&lt;hr&gt;</p><h3 class="font-bold text-2xl" id="motd"><code>motd</code></h3><p class="font-bold text-xl" id="Value:-boolean-Default:-true-The-message-of-the-day-shows-the-current-major.minor-version-and-includes-a-small-range-of-things-added-in-the-current-release.">Value: <code>boolean</code>
Default: <code>true</code>
The message of the day shows the current major.minor version and
includes a small range of things added in the current release.</p><p>This can be set to <code>false</code> to disable the message.</p><p>&lt;hr&gt;</p><h3 class="font-bold text-2xl" id="fuzzy"><code>fuzzy</code></h3><p class="font-bold text-xl" id="Value:-boolean-Default:-false-Toggles-the-functionality-of-fuzzy-history-searching-usable-via-the-menu-in-Ctrl-R.-Fuzzy-searching-is-an-approximate-searching-method-which-means-results-that-match-closest-will-be-shown-instead-of-an-exact-match.">Value: <code>boolean</code>
Default: <code>false</code>
Toggles the functionality of fuzzy history searching, usable
via the menu in Ctrl-R. Fuzzy searching is an approximate searching
method, which means results that match <em>closest</em> will be shown instead
of an exact match.</p>
<hr>
<h3><code>notifyJobFinish</code></h3>
<h4>Value: <code>boolean</code></h4>
<h4>Default: <code>true</code></h4>
<p>If this is enabled, when a background job is finished,
a <a href="../notifications" rel="noopener noreferrer">notification</a> will be sent.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
method, which means results that match <strong>closest</strong> will be shown instead
of an exact match.</p><p>&lt;hr&gt;</p><h3 class="font-bold text-2xl" id="notifyJobFinish"><code>notifyJobFinish</code></h3><p class="font-bold text-xl" id="Value:-boolean-Default:-true-If-this-is-enabled-when-a-background-job-is-finished-a-notification-will-be-sent.">Value: <code>boolean</code>
Default: <code>true</code>
If this is enabled, when a background job is finished,
a <a href="../notifications">notification</a> will be sent.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,41 +1,29 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Runner Mode</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Runner Mode</h1><Tag xmlns="namespace"><p>Hilbish allows you to change how interactive text can be interpreted.
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Runner Mode</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Runner Mode</h1><p>Hilbish allows you to change how interactive text can be interpreted.
This is mainly due to the fact that the default method Hilbish uses
is that it runs Lua first and then falls back to shell script.</p>
<p>In some cases, someone might want to switch to just shell script to avoid
is that it runs Lua first and then falls back to shell script.</p><p>In some cases, someone might want to switch to just shell script to avoid
it while interactive but still have a Lua config, or go full Lua to use
Hilbish as a REPL. This also allows users to add alternative languages like
Fennel as the interactive script runner.</p>
<p>Runner mode can also be used to handle specific kinds of input before
evaluating like normal, which is how <a href="https://github.com/TorchedSammy/Link.hsh" rel="noopener noreferrer">Link.hsh</a>
handles links.</p>
<p>The “runner mode” of Hilbish is customizable via <code>hilbish.runnerMode</code>,
Fennel as the interactive script runner.</p><p>Runner mode can also be used to handle specific kinds of input before
evaluating like normal, which is how <a href="https://github.com/TorchedSammy/Link.hsh">Link.hsh</a>
handles links.</p><p>The &quot;runner mode&quot; of Hilbish is customizable via <code>hilbish.runnerMode</code>,
which determines how Hilbish will run user input. By default, this is
set to <code>hybrid</code> which is the previously mentioned behaviour of running Lua
first then going to shell script. If you want the reverse order, you can
set it to <code>hybridRev</code> and for isolated modes there is <code>sh</code> and <code>lua</code>
respectively.</p>
<p>You can also set it to a function, which will be called everytime Hilbish
needs to run interactive input. For more detail, see the <a href="../../api/hilbish/hilbish.runner" rel="noopener noreferrer">API documentation</a></p>
<p>The <code>hilbish.runner</code> interface is an alternative to using <code>hilbish.runnerMode</code>
and also provides the shell script and Lua runner functions that Hilbish itself uses.</p>
<h2>Functions</h2>
<p>These are the “low level” functions for the <code>hilbish.runner</code> interface.</p>
<ul>
<li>setMode(mode) &gt; The same as <code>hilbish.runnerMode</code></li>
<li>sh(input) -&gt; table &gt; Runs <code>input</code> in Hilbishs sh interpreter</li>
<li>lua(input) -&gt; table &gt; Evals <code>input</code> as Lua code</li>
</ul>
<p>These functions should be preferred over the previous ones.</p>
<ul>
<li>setCurrent(mode) &gt; The same as <code>setMode</code>, but works with runners managed
via the functions below.</li>
<li>add(name, runner) &gt; Adds a runner to a table of available runners. The <code>runner</code>
argument is either a function or a table with a run callback.</li>
<li>set(name, runner) &gt; The same as <code>add</code> but requires passing a table and
overwrites if the <code>name</code>d runner already exists.</li>
<li>get(name) &gt; runner &gt; Gets a runner by name. It is a table with at least a
run function, to run input.</li>
<li>exec(cmd, runnerName) &gt; Runs <code>cmd</code> with a runner. If <code>runnerName</code> isnt passed,
the current runner mode is used.</li>
</ul></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
respectively.</p><p>You can also set it to a function, which will be called everytime Hilbish
needs to run interactive input. For more detail, see the <a href="../../api/hilbish/hilbish.runner">API documentation</a></p><p>The <code>hilbish.runner</code> interface is an alternative to using <code>hilbish.runnerMode</code>
and also provides the shell script and Lua runner functions that Hilbish itself uses.</p><h2 class="font-bold text-3xl" id="Functions-These-are-the-&quot;low-level&quot;-functions-for-the-hilbish.runner-interface.">Functions
These are the &quot;low level&quot; functions for the <code>hilbish.runner</code> interface.</h2><p>+ setMode(mode) &gt; The same as <code>hilbish.runnerMode</code>
+ sh(input) -&gt; table &gt; Runs <code>input</code> in Hilbish&#39;s sh interpreter
+ lua(input) -&gt; table &gt; Evals <code>input</code> as Lua code</p><p>These functions should be preferred over the previous ones.
+ setCurrent(mode) &gt; The same as <code>setMode</code>, but works with runners managed
via the functions below.
+ add(name, runner) &gt; Adds a runner to a table of available runners. The <code>runner</code>
argument is either a function or a table with a run callback.
+ set(name, runner) &gt; The same as <code>add</code> but requires passing a table and
overwrites if the <code>name</code>d runner already exists.
+ get(name) &gt; runner &gt; Gets a runner by name. It is a table with at least a
run function, to run input.
+ exec(cmd, runnerName) &gt; Runs <code>cmd</code> with a runner. If <code>runnerName</code> isn&#39;t passed,
the current runner mode is used.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,62 +1,41 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Getting Started</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Getting Started</h1><Tag xmlns="namespace"><p>To start Hilbish, open a terminal. If Hilbish has been installed and is not the
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Getting Started</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Getting Started</h1><p>To start Hilbish, open a terminal. If Hilbish has been installed and is not the
default shell, you can simply run <code>hilbish</code> to start it. This will launch
a normal interactive session.
To exit, you can either run the <code>exit</code> command or hit Ctrl+D.</p>
<h1>Setting as Default</h1>
<h2>Login shell</h2>
<p>There are a few ways to make Hilbish your default shell. A simple way is
to make it your user/login shell.</p>
<p>{{&lt; warning <code>It is not recommended to set Hilbish as your login shell. That is expected to be a POSIX compliant shell, which Hilbish is not. Though if you still decide to do it, there will just be a few variables missing in your environment</code> &gt;}}</p>
<p>To do that, simply run <code>chsh -s /usr/bin/hilbish</code>.
To exit, you can either run the <code>exit</code> command or hit Ctrl+D.</p><h1 class="font-bold text-4xl" id="Setting-as-Default">Setting as Default</h1><h2 class="font-bold text-3xl" id="Login-shell-There-are-a-few-ways-to-make-Hilbish-your-default-shell.-A-simple-way-is--to-make-it-your-user/login-shell.">Login shell
There are a few ways to make Hilbish your default shell. A simple way is
to make it your user/login shell.</h2><p>{{&lt; warning <code>It is not recommended to set Hilbish as your login shell. That
is expected to be a POSIX compliant shell, which Hilbish is not. Though if
you still decide to do it, there will just be a few variables missing in
your environment</code> &gt;}}</p><p>To do that, simply run <code>chsh -s /usr/bin/hilbish</code>.
Some distros (namely Fedora) might have <code>lchsh</code> instead, which is used like <code>lchsh &lt;user&gt;</code>.
When prompted, you can put the path for Hilbish.</p>
<h2>Default with terminal</h2>
<p>The simpler way is to set the default shell for your terminal. The way of
doing this depends on how your terminal settings are configured.</p>
<h2>Run after login shell</h2>
<p>Some shells (like zsh) have an rc file, like <code>.zlogin</code>, which is ran when the shell session
is a login shell. In that file, you can run Hilbish. Example:</p>
<pre><code><span>exec hilbish -S -l
</span></code></pre>
<p>This will replace the shell with Hilbish, set $SHELL to Hilbish and launch it as a login shell.</p>
<h1>Configuration</h1>
<p>Once installation and setup has been done, you can then configure Hilbish.
When prompted, you can put the path for Hilbish.</p><h2 class="font-bold text-3xl" id="Default-with-terminal-The-simpler-way-is-to-set-the-default-shell-for-your-terminal.-The-way-of--doing-this-depends-on-how-your-terminal-settings-are-configured.">Default with terminal
The simpler way is to set the default shell for your terminal. The way of
doing this depends on how your terminal settings are configured.</h2><h2 class="font-bold text-3xl" id="Run-after-login-shell-Some-shells-(like-zsh)-have-an-rc-file-like-.zlogin-which-is-ran-when-the-shell-session-is-a-login-shell.-In-that-file-you-can-run-Hilbish.-Example:">Run after login shell
Some shells (like zsh) have an rc file, like <code>.zlogin</code>, which is ran when the shell session
is a login shell. In that file, you can run Hilbish. Example:</h2><pre><code data-lang="text">exec hilbish -S -l
</code></pre><p>This will replace the shell with Hilbish, set $SHELL to Hilbish and launch it as a login shell.</p><h1 class="font-bold text-4xl" id="Configuration-Once-installation-and-setup-has-been-done-you-can-then-configure-Hilbish.-It-is-configured-and-scripted-via-Lua-so-the-config-file-is-a-Lua-file.-You-can-use-any-pure-Lua-library-to-do-whatever-you-want.">Configuration
Once installation and setup has been done, you can then configure Hilbish.
It is configured and scripted via Lua, so the config file is a Lua file.
You can use any pure Lua library to do whatever you want.</p>
<p>Hilbishs sample configuration is usually located in <code>hilbish.dataDir .. '/.hilbishrc.lua'</code>.
You can print that path via Lua to see what it is: <code>print(hilbish.dataDir .. '/.hilbishrc.lua')</code>.
As an example, it will usually will result in <code>/usr/share/hilbish/.hilbishrc.lua</code> on Linux.</p>
<p>To edit your user configuration, you can copy that file to <code>hilbish.userDir.config .. '/hilbish/init.lua'</code>,
which follows XDG on Linux and MacOS, and is located in %APPDATA% on Windows.</p>
<p>As the directory is usually <code>~/.config</code> on Linux, you can run this command to copy it:<br>
<code>cp /usr/share/hilbish/.hilbishrc.lua ~/.config/hilbish/init.lua</code></p>
<p>Now we can get to customization!</p>
<p>If we closely examine a small snippet of the default config:</p>
<pre><code><span><span>-- Default Hilbish config</span>
</span><span><span>-- .. with some omitted code .. --</span>
</span><span>
</span><span><span>local</span> <span>function</span> <span>doPrompt</span><span>(</span><span>fail</span><span>)</span>
</span><span> <span>hilbish</span><span>.</span><span>prompt</span><span>(</span><span>lunacolors</span><span>.</span><span>format</span><span>(</span>
</span><span> <span>'&lbrace;blue&rbrace;%u &lbrace;cyan&rbrace;%d '</span> <span>..</span> <span>(</span><span>fail</span> <span>and</span> <span>'&lbrace;red&rbrace;'</span> <span>or</span> <span>'&lbrace;green&rbrace;'</span><span>)</span> <span>..</span> <span>'∆ '</span>
</span><span> <span>)</span><span>)</span>
</span><span><span>end</span>
</span><span>
</span><span><span>doPrompt</span><span>(</span><span>)</span>
</span><span>
</span><span><span>bait</span><span>.</span><span>catch</span><span>(</span><span>'command.exit'</span><span>,</span> <span>function</span><span>(</span><span>code</span><span>)</span>
</span><span> <span>doPrompt</span><span>(</span><span>code</span> <span>~=</span> <span>0</span><span>)</span>
</span><span><span>end</span><span>)</span>
</span></code></pre>
<p>We see a whopping <strong>three</strong> Hilbish libraries being used in this part of code.
First is of course, named after the shell itself, <a href="../api/hilbish" rel="noopener noreferrer"><code>hilbish</code></a>. This is kind of a
“catch-all” namespace for functions that directly related to shell functionality/settings.</p>
<p>And as we can see, the <a href="../api/hilbish/#prompt" rel="noopener noreferrer">hilbish.prompt</a> function is used
to change our prompt. Change our prompt to what, exactly?</p>
<p>The doc for the function states that the verbs <code>%u</code> and <code>%d</code>are used for username and current directory
of the shell, respectively.</p>
<p>We wrap this in the <a href="../lunacolors" rel="noopener noreferrer"><code>lunacolors.format</code></a> function, to give
our prompt some nice color.</p>
<p>But you might have also noticed that this is in the <code>doPrompt</code> function, which is called once,
and then used again in a <a href="../api/bait" rel="noopener noreferrer">bait</a> hook. Specifically, the <code>command.exit</code> hook,
which is called after a command exits, so when it finishes running.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
You can use any pure Lua library to do whatever you want.</h1><p>Hilbish&#39;s sample configuration is usually located in <code>hilbish.dataDir .. &#39;/.hilbishrc.lua&#39;</code>.
You can print that path via Lua to see what it is: <code>print(hilbish.dataDir .. &#39;/.hilbishrc.lua&#39;)</code>.
As an example, it will usually will result in <code>/usr/share/hilbish/.hilbishrc.lua</code> on Linux.</p><p>To edit your user configuration, you can copy that file to <code>hilbish.userDir.config .. &#39;/hilbish/init.lua&#39;</code>,
which follows XDG on Linux and MacOS, and is located in %APPDATA% on Windows.</p><p>As the directory is usually <code>~/.config</code> on Linux, you can run this command to copy it:
<code>cp /usr/share/hilbish/.hilbishrc.lua ~/.config/hilbish/init.lua</code></p><p>Now we can get to customization!</p><p>If we closely examine a small snippet of the default config:
<code>lua
-- Default Hilbish config
-- .. with some omitted code .. --</code></p><p>local function doPrompt(fail)
hilbish.prompt(lunacolors.format(
&#39;{blue}%u {cyan}%d &#39; .. (fail and &#39;{red}&#39; or &#39;{green}&#39;) .. &#39;&#39;
))
end</p><p>doPrompt()</p><p>bait.catch(&#39;command.exit&#39;, function(code)
doPrompt(code ~= 0)
end)
<code></code></p><p>We see a whopping *<strong>three</strong>* Hilbish libraries being used in this part of code.
First is of course, named after the shell itself, <a href="../api/hilbish"><code>hilbish</code></a>. This is kind of a
&quot;catch-all&quot; namespace for functions that directly related to shell functionality/settings.</p><p>And as we can see, the <a href="../api/hilbish/#prompt">hilbish.prompt</a> function is used
to change our prompt. Change our prompt to what, exactly?</p><p>The doc for the function states that the verbs <code>%u</code> and <code>%d</code>are used for username and current directory
of the shell, respectively. </p><p>We wrap this in the <a href="../lunacolors"><code>lunacolors.format</code></a> function, to give
our prompt some nice color.</p><p>But you might have also noticed that this is in the <code>doPrompt</code> function, which is called once,
and then used again in a <a href="../api/bait">bait</a> hook. Specifically, the <code>command.exit</code> hook,
which is called after a command exits, so when it finishes running.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,46 +1,35 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Command</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Command</h1><Tag xmlns="namespace"><h2>command.preexec</h2>
<p>Thrown right before a command is executed.</p>
<h4>Variables</h4>
<p><code>string</code> <strong><code>input</code></strong><br>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Command</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Command</h1><h2 class="font-bold text-3xl" id="command.preexec-Thrown-right-before-a-command-is-executed.">command.preexec
Thrown right before a command is executed.</h2><p class="font-bold text-xl" id="Variables-string-**input**---The-raw-string-that-the-user-typed.-This-will-include-the-text-without-changes-applied-to-it-(argument-substitution-alias-expansion-etc.)">Variables
<code>string</code> **<code>input</code>**
The raw string that the user typed. This will include the text
without changes applied to it (argument substitution, alias expansion,
etc.)</p>
<p><code>string</code> <strong><code>cmdStr</code></strong><br>
The command that will be directly executed by the current runner.</p>
<hr>
<h2>command.exit</h2>
<p>Thrown after the users ran command is finished.</p>
<h4>Variables</h4>
<p><code>number</code> <strong><code>code</code></strong><br>
The exit code of what was executed.</p>
<p><code>string</code> <strong><code>cmdStr</code></strong><br>
The command or code that was executed</p>
<hr>
<h2>command.not-found</h2>
<p>Thrown if the command attempted to execute was not found.
etc.)</p><p><code>string</code> **<code>cmdStr</code>**
The command that will be directly executed by the current runner.</p><p>&lt;hr&gt;</p><h2 class="font-bold text-3xl" id="command.exit-Thrown-after-the-user&#39;s-ran-command-is-finished.">command.exit
Thrown after the user&#39;s ran command is finished.</h2><p class="font-bold text-xl" id="Variables-number-**code**---The-exit-code-of-what-was-executed.">Variables
<code>number</code> **<code>code</code>**
The exit code of what was executed.</p><p><code>string</code> **<code>cmdStr</code>**
The command or code that was executed</p><p>&lt;hr&gt;
## command.not-found
Thrown if the command attempted to execute was not found.
This can be used to customize the text printed when a command is not found.
Example:</p>
<pre><code><span><span>local</span> <span>bait</span> <span>=</span> <span>require</span> <span>'bait'</span>
</span><span><span>-- Remove any present handlers on `command.not-found`</span>
</span><span>
</span><span><span>local</span> <span>notFoundHooks</span> <span>=</span> <span>bait</span><span>.</span><span>hooks</span> <span>'command.not-found'</span>
</span><span><span>for</span> <span>_</span><span>,</span> <span>hook</span> <span>in</span> <span>ipairs</span><span>(</span><span>notFoundHooks</span><span>)</span> <span>do</span>
</span><span> <span>bait</span><span>.</span><span>release</span><span>(</span><span>'command.not-found'</span><span>,</span> <span>hook</span><span>)</span>
</span><span><span>end</span>
</span><span>
</span><span><span>-- then assign custom</span>
</span><span><span>bait</span><span>.</span><span>catch</span><span>(</span><span>'command.not-found'</span><span>,</span> <span>function</span><span>(</span><span>cmd</span><span>)</span>
</span><span> <span>print</span><span>(</span><span>string</span><span>.</span><span>format</span><span>(</span><span>'The command "%s" was not found.'</span><span>,</span> <span>cmd</span><span>)</span><span>)</span>
</span><span><span>end</span><span>)</span>
</span></code></pre>
<h4>Variables</h4>
<p><code>string</code> <strong><code>cmdStr</code></strong><br>
The name of the command.</p>
<hr>
<h2>command.not-executable</h2>
<p>Thrown when the user attempts to run a file that is not executable
(like a text file, or Unix binary without +x permission).</p>
<h4>Variables</h4>
<p><code>string</code> <strong><code>cmdStr</code></strong><br>
The name of the command.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
Example:
<code>lua
local bait = require &#39;bait&#39;
-- Remove any present handlers on `command.not-found</code></p><p>local notFoundHooks = bait.hooks &#39;command.not-found&#39;
for _, hook in ipairs(notFoundHooks) do
bait.release(&#39;command.not-found&#39;, hook)
end</p><p>-- then assign custom
bait.catch(&#39;command.not-found&#39;, function(cmd)
print(string.format(&#39;The command &quot;%s&quot; was not found.&#39;, cmd))
end)
<code></code></p><p class="font-bold text-xl" id="Variables-string-**cmdStr**---The-name-of-the-command.">Variables
<code>string</code> **<code>cmdStr</code>**
The name of the command.</p><p>&lt;hr&gt;
## command.not-executable
Thrown when the user attempts to run a file that is not executable
(like a text file, or Unix binary without +x permission).</p><p class="font-bold text-xl">Variables
<code>string</code> **<code>cmdStr</code>**
The name of the command.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,44 +1,25 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Hilbish</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Hilbish</h1><Tag xmlns="namespace"><h2>hilbish.exit</h2>
<p>Sent when Hilbish is going to exit.</p>
<h4>Variables</h4>
<p>This signal returns no variables.</p>
<hr>
<h2>hilbish.vimMode</h2>
<p>Sent when the Vim mode of Hilbish is changed (like from insert to normal mode).
This can be used to change the prompt and notify based on Vim mode.</p>
<h4>Variables</h4>
<p><code>string</code> <strong><code>modeName</code></strong><br>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Hilbish</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Hilbish</h1><h2 class="font-bold text-3xl" id="hilbish.exit-Sent-when-Hilbish-is-going-to-exit.">hilbish.exit
Sent when Hilbish is going to exit.</h2><p class="font-bold text-xl" id="Variables-This-signal-returns-no-variables.">Variables
This signal returns no variables.</p><p>&lt;hr&gt;</p><h2 class="font-bold text-3xl" id="hilbish.vimMode-Sent-when-the-Vim-mode-of-Hilbish-is-changed-(like-from-insert-to-normal-mode).-This-can-be-used-to-change-the-prompt-and-notify-based-on-Vim-mode.">hilbish.vimMode
Sent when the Vim mode of Hilbish is changed (like from insert to normal mode).
This can be used to change the prompt and notify based on Vim mode.</h2><p class="font-bold text-xl" id="Variables-string-**modeName**---The-mode-that-has-been-set.-Can-be-these-values:-insert-normal-delete-or-replace">Variables
<code>string</code> **<code>modeName</code>**
The mode that has been set.
Can be these values: <code>insert</code>, <code>normal</code>, <code>delete</code> or <code>replace</code></p>
<hr>
<h2>hilbish.cancel</h2>
<p>Sent when the user cancels their command input with Ctrl-C</p>
<h4>Variables</h4>
<p>This signal returns no variables.</p>
<hr>
<h2>hilbish.notification</h2>
<p>Thrown when a <a href="../../features/notifications" rel="noopener noreferrer">notification</a> is sent.</p>
<h4>Variables</h4>
<p><code>table</code> <strong><code>notification</code></strong><br>
The notification. The properties are defined in the link above.</p>
<hr>
<h2>hilbish.cd</h2>
<p>Sent when the current directory of the shell is changed (via interactive means.)
Can be these values: <code>insert</code>, <code>normal</code>, <code>delete</code> or <code>replace</code></p><p>&lt;hr&gt;</p><h2 class="font-bold text-3xl" id="hilbish.cancel-Sent-when-the-user-cancels-their-command-input-with-Ctrl-C">hilbish.cancel
Sent when the user cancels their command input with Ctrl-C</h2><p class="font-bold text-xl">Variables
This signal returns no variables.</p><p>&lt;hr&gt;</p><h2 class="font-bold text-3xl" id="hilbish.notification-Thrown-when-a-notification-is-sent.">hilbish.notification
Thrown when a <a href="../../features/notifications">notification</a> is sent.</h2><p class="font-bold text-xl" id="Variables-table-**notification**---The-notification.-The-properties-are-defined-in-the-link-above.">Variables
<code>table</code> **<code>notification</code>**
The notification. The properties are defined in the link above.</p><p>&lt;hr&gt;</p><h2 class="font-bold text-3xl" id="hilbish.cd-Sent-when-the-current-directory-of-the-shell-is-changed-(via-interactive-means.)-If-you-are-implementing-a-custom-command-that-changes-the-directory-of-the-shell-you-must-throw-this-hook-manually-for-correctness.">hilbish.cd
Sent when the current directory of the shell is changed (via interactive means.)
If you are implementing a custom command that changes the directory of the shell,
you must throw this hook manually for correctness.</p>
<h4>Variables</h4>
<p><code>string</code> <strong><code>path</code></strong><br>
Absolute path of the directory that was changed to.</p>
<p><code>string</code> <strong><code>oldPath</code></strong><br>
Absolute path of the directory Hilbish <em>was</em> in.</p>
<hr>
<h2>hilbish.vimAction</h2>
<p>Sent when the user does a “vim action,” being something like yanking or pasting text.
See <code>doc vim-mode actions</code> for more info.</p>
<h4>Variables</h4>
<p><code>string</code> <strong><code>actionName</code></strong><br>
Absolute path of the directory that was changed to.</p>
<p><code>table</code> <strong><code>args</code></strong><br>
Table of args relating to the Vim action.</p>
<hr></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
you must throw this hook manually for correctness.</h2><p class="font-bold text-xl" id="Variables-string-**path**---Absolute-path-of-the-directory-that-was-changed-to.">Variables
<code>string</code> **<code>path</code>**
Absolute path of the directory that was changed to.</p><p><code>string</code> **<code>oldPath</code>**
Absolute path of the directory Hilbish <strong>was</strong> in.</p><p>&lt;hr&gt;</p><h2 class="font-bold text-3xl" id="hilbish.vimAction-Sent-when-the-user-does-a-&quot;vim-action&quot;-being-something-like-yanking-or-pasting-text.-See-doc-vim-mode-actions-for-more-info.">hilbish.vimAction
Sent when the user does a &quot;vim action,&quot; being something like yanking or pasting text.
See <code>doc vim-mode actions</code> for more info.</h2><p class="font-bold text-xl" id="Variables-string-**actionName**---Absolute-path-of-the-directory-that-was-changed-to.">Variables
<code>string</code> **<code>actionName</code>**
Absolute path of the directory that was changed to.</p><p><code>table</code> **<code>args</code>**
Table of args relating to the Vim action.</p><p>&lt;hr&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,3 +1,3 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Signals</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Signals</h1><Tag xmlns="namespace"><p>Signals are global events emitted with the <a href="../api/bait" rel="noopener noreferrer">Bait</a> module.
For more detail on how to use these signals, you may check the Bait page.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Signals</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Signals</h1><p>Signals are global events emitted with the <a href="../api/bait">Bait</a> module.
For more detail on how to use these signals, you may check the Bait page.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,11 +1,3 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span></span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1></h1><Tag xmlns="namespace"><p>Note: <code>job</code> refers to a job object. You can check <code>doc jobs</code> for more
detail.</p>
<ul>
<li>
<p><code>job.start</code> -&gt; job &gt; Thrown when a new background job starts.</p>
</li>
<li>
<p><code>job.done</code> -&gt; job &gt; Thrown when a background jobs exits.</p>
</li>
</ul></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span></span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl"></h1><p>Note: <code>job</code> refers to a job object. You can check <code>doc jobs</code> for more
detail.</p><p>+ <code>job.start</code> -&gt; job &gt; Thrown when a new background job starts.</p><p>+ <code>job.done</code> -&gt; job &gt; Thrown when a background jobs exits.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,21 +1,13 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Signal</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Signal</h1><Tag xmlns="namespace"><h2>signal.sigint</h2>
<p>Thrown when Hilbish receive the SIGINT signal,
aka when Ctrl-C is pressed.</p>
<h4>Variables</h4>
<p>This signal returns no variables.</p>
<hr>
<h2>signal.resize</h2>
<p>Thrown when the terminal is resized.</p>
<h4>Variables</h4>
<p>This signal returns no variables.</p>
<hr>
<h2>signal.sigusr1</h2>
<p>Thrown when SIGUSR1 is sent to Hilbish.</p>
<h4>Variables</h4>
<p>This signal returns no variables.</p>
<hr>
<h2>signal.sigusr2</h2>
<p>Thrown when SIGUSR2 is sent to Hilbish.</p>
<h4>Variables</h4>
<p>This signal returns no variables.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Signal</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Signal</h1><h2 class="font-bold text-3xl" id="signal.sigint-Thrown-when-Hilbish-receive-the-SIGINT-signal-aka-when-Ctrl-C-is-pressed.">signal.sigint
Thrown when Hilbish receive the SIGINT signal,
aka when Ctrl-C is pressed.</h2><p class="font-bold text-xl" id="Variables-This-signal-returns-no-variables.">Variables
This signal returns no variables.</p><p>&lt;hr&gt;
## signal.resize
Thrown when the terminal is resized.</p><p class="font-bold text-xl">Variables
This signal returns no variables.</p><p>&lt;hr&gt;</p><h2 class="font-bold text-3xl" id="signal.sigusr1-Thrown-when-SIGUSR1-is-sent-to-Hilbish.">signal.sigusr1
Thrown when SIGUSR1 is sent to Hilbish.</h2><p class="font-bold text-xl">Variables
This signal returns no variables.</p><p>&lt;hr&gt;</p><h2 class="font-bold text-3xl" id="signal.sigusr2-Thrown-when-SIGUSR2-is-sent-to-Hilbish.">signal.sigusr2
Thrown when SIGUSR2 is sent to Hilbish.</h2><p class="font-bold text-xl">Variables
This signal returns no variables.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,6 +1,5 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Introduction</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Introduction</h1><Tag xmlns="namespace"><p>Hilbish is a hyper-extensible shell mainly intended for interactive use.
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Introduction</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Introduction</h1><p>Hilbish is a hyper-extensible shell mainly intended for interactive use.
To enhance the interactive experience, Hilbish comes with a wide range
of features and sane defaults, including a nice looking prompt,
advanced completion menus and history search.</p>
<p>Here documents some of the features of Hilbish and the Lua API.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
advanced completion menus and history search.</p><p>Here documents some of the features of Hilbish and the Lua API.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,48 +1,30 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span></span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1></h1><Tag xmlns="namespace"><p>(This has mainly been replaced by <a href="../api/hilbish.jobs" rel="noopener noreferrer">hilbish.jobs</a>).</p>
<p>Hilbish has pretty standard job control. Its missing one or two things,
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span></span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl"></h1><p>(This has mainly been replaced by <a href="../api/hilbish.jobs">hilbish.jobs</a>).</p><p>Hilbish has pretty standard job control. It&#39;s missing one or two things,
but works well. One thing which is different from other shells
(besides Hilbish) itself is the API for jobs, and of course its in Lua.
You can add jobs, stop and delete (disown) them and even get output.</p>
<h1>Job Interface</h1>
<p>The job interface refers to <code>hilbish.jobs</code>.</p>
<h2>Functions</h2>
<p>(Note that in the list here, theyre called from <code>hilbish.jobs</code>, so
a listing of <code>foo</code> would mean <code>hilbish.jobs.foo</code>)</p>
<ul>
<li><code>all()</code> -&gt; {jobs}: Returns a table of all jobs.</li>
<li><code>last()</code> -&gt; job: Returns the last added job.</li>
<li><code>get(id)</code> -&gt; job: Get a job by its ID.</li>
<li><code>add(cmdstr, args, execPath)</code> -&gt; job: Adds a new job to the job table.
Note that this does not run the command; You have to start it manually.
<code>cmdstr</code> is the users input for the job, <code>args</code> is a table of arguments
for the command. It includes arg0 (dont set it as entry 0 in the table)
and <code>execPath</code> is an absolute path for the command executable.</li>
<li><code>disown(id)</code>: Removes a job by ID from the job table.</li>
</ul>
<h1>Job Object</h1>
<p>A job object is a piece of <code>userdata</code>. All the functions of a job require
you to call them with a colon, since they are <em>methods</em> for the job object.
(besides Hilbish) itself is the API for jobs, and of course it&#39;s in Lua.
You can add jobs, stop and delete (disown) them and even get output.</p><h1 class="font-bold text-4xl" id="Job-Interface-The-job-interface-refers-to-hilbish.jobs.">Job Interface
The job interface refers to <code>hilbish.jobs</code>.</h1><h2 class="font-bold text-3xl" id="Functions-(Note-that-in-the-list-here-they&#39;re-called-from-hilbish.jobs-so-a-listing-of-foo-would-mean-hilbish.jobs.foo)">Functions
(Note that in the list here, they&#39;re called from <code>hilbish.jobs</code>, so
a listing of <code>foo</code> would mean <code>hilbish.jobs.foo</code>)</h2><ul style="list-style-type:&#39;-&#39;;"><li><p><code>all()</code> -&gt; {jobs}: Returns a table of all jobs.</p></li><li><p><code>last()</code> -&gt; job: Returns the last added job.</p></li><li><p><code>get(id)</code> -&gt; job: Get a job by its ID.</p></li><li><p><code>add(cmdstr, args, execPath)</code> -&gt; job: Adds a new job to the job table.</p></li></ul><p>Note that this does not run the command; You have to start it manually.
<code>cmdstr</code> is the user&#39;s input for the job, <code>args</code> is a table of arguments
for the command. It includes arg0 (don&#39;t set it as entry 0 in the table)
and <code>execPath</code> is an absolute path for the command executable.
- <code>disown(id)</code>: Removes a job by ID from the job table.</p><h1 class="font-bold text-4xl" id="Job-Object-A-job-object-is-a-piece-of-userdata.-All-the-functions-of-a-job-require-you-to-call-them-with-a-colon-since-they-are-methods-for-the-job-object.-Example:-hilbish.jobs.last():foreground()-Which-will-foreground-the-last-job.">Job Object
A job object is a piece of <code>userdata</code>. All the functions of a job require
you to call them with a colon, since they are <strong>methods</strong> for the job object.
Example: hilbish.jobs.last():foreground()
Which will foreground the last job.</p>
<p>You can still have a job object for a disowned job,
it just wont be <em>working</em> anywhere. :^)</p>
<h2>Properties</h2>
<ul>
<li><code>cmd</code>: command string</li>
<li><code>running</code>: boolean whether the job is running</li>
<li><code>id</code>: unique id for the job</li>
<li><code>pid</code>: process id for the job</li>
<li><code>exitCode</code>: exit code of the job
In ordinary cases youd prefer to use the <code>id</code> instead of <code>pid</code>.
Which will foreground the last job.</h1><p>You can still have a job object for a disowned job,
it just won&#39;t be <strong>working</strong> anywhere. :^)</p><h2 class="font-bold text-3xl" id="Properties---cmd:-command-string---running:-boolean-whether-the-job-is-running---id:-unique-id-for-the-job---pid:-process-id-for-the-job---exitCode:-exit-code-of-the-job-In-ordinary-cases-you&#39;d-prefer-to-use-the-id-instead-of-pid.-The-id-is-unique-to-Hilbish-and-is-how-you-get-jobs-with-the-hilbish.jobs-interface.-It-may-also-not-describe-the-job-entirely.">Properties
- <code>cmd</code>: command string
- <code>running</code>: boolean whether the job is running
- <code>id</code>: unique id for the job
- <code>pid</code>: process id for the job
- <code>exitCode</code>: exit code of the job
In ordinary cases you&#39;d prefer to use the <code>id</code> instead of <code>pid</code>.
The <code>id</code> is unique to Hilbish and is how you get jobs with the
<code>hilbish.jobs</code> interface. It may also not describe the job entirely.</li>
</ul>
<h2>Functions</h2>
<ul>
<li><code>stop()</code>: Stops the job.</li>
<li><code>start()</code>: Starts the job.</li>
<li><code>foreground()</code>: Set the job as the current running foreground process, or
run it in the foreground after it has been suspended.</li>
<li><code>background()</code>: Run the job in the background after it has been suspended.</li>
</ul></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
<code>hilbish.jobs</code> interface. It may also not describe the job entirely.</h2><h2 class="font-bold text-3xl" id="Functions---stop():-Stops-the-job.---start():-Starts-the-job.---foreground():-Set-the-job-as-the-current-running-foreground-process-or-run-it-in-the-foreground-after-it-has-been-suspended.---background():-Run-the-job-in-the-background-after-it-has-been-suspended.">Functions
- <code>stop()</code>: Stops the job.
- <code>start()</code>: Starts the job.
- <code>foreground()</code>: Set the job as the current running foreground process, or
run it in the foreground after it has been suspended.
- <code>background()</code>: Run the job in the background after it has been suspended.</h2></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,37 +1,30 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Lunacolors</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Lunacolors</h1><Tag xmlns="namespace"><p>Lunacolors is an ANSI color/styling library for Lua. It is included
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Lunacolors</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Lunacolors</h1><p>Lunacolors is an ANSI color/styling library for Lua. It is included
by default in standard Hilbish distributions to provide easy styling
for things like prompts and text.</p>
<p>For simple usage, a single color or style is enough. For example,
you can just use <code>lunacolors.blue 'Hello world'</code> and thatll return
for things like prompts and text.</p><p>For simple usage, a single color or style is enough. For example,
you can just use <code>lunacolors.blue &#39;Hello world&#39;</code> and that&#39;ll return
blue text which you can print. This includes styles like bold,
underline, etc.</p>
<p>In other usage, you may want to use a format string instead of having
underline, etc.</p><p>In other usage, you may want to use a format string instead of having
multiple nested functions for different styles. This is where the format
function comes in. You can used named keywords to style a section of text.</p>
<p>The list of arguments are:<br>
Colors:</p>
<ul>
<li>black</li>
<li>red</li>
<li>green</li>
<li>yellow</li>
<li>blue</li>
<li>magenta</li>
<li>cyan</li>
<li>white</li>
</ul>
<p>Styles:</p>
<ul>
<li>reset</li>
<li>bold</li>
<li>dim</li>
<li>italic</li>
<li>underline</li>
<li>invert</li>
</ul>
<p>For the colors, there are background and bright variants. Background color
function comes in. You can used named keywords to style a section of text.</p><p>The list of arguments are:
Colors:
- black
- red
- green
- yellow
- blue
- magenta
- cyan
- white
Styles:
- reset
- bold
- dim
- italic
- underline
- invert</p><p>For the colors, there are background and bright variants. Background color
variants have a <code>Bg</code> suffix, while bright variants use the <code>bright</code> prefix.
These can also be combined. Note that appropriate camel casing must be applied.
For example, bright blue would be written as <code>brightBlue</code>, a cyan background as
<code>cyanBg</code>, and combining them would result in <code>brightBlueBg</code>.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
These can also be combined. Note that appropriate camel casing must be applied.
For example, bright blue would be written as <code>brightBlue</code>, a cyan background as
<code>cyanBg</code>, and combining them would result in <code>brightBlueBg</code>.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,96 +1,58 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module dirs</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module dirs</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The dirs module defines a small set of functions to store and manage
directories.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#setOld" rel="noopener noreferrer">setOld(d)</a></td>
<td>Sets the old directory string.</td>
</tr>
<tr>
<td><a href="#recent" rel="noopener noreferrer">recent(idx)</a></td>
<td>Get entry from recent directories list based on index.</td>
</tr>
<tr>
<td><a href="#push" rel="noopener noreferrer">push(dir)</a></td>
<td>Add <code>dir</code> to the recent directories list.</td>
</tr>
<tr>
<td><a href="#pop" rel="noopener noreferrer">pop(num)</a></td>
<td>Remove the specified amount of dirs from the recent directories list.</td>
</tr>
<tr>
<td><a href="#peak" rel="noopener noreferrer">peak(num)</a></td>
<td>Look at <code>num</code> amount of recent directories, starting from the latest.</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module dirs</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module dirs</h1><h2 class="font-bold text-3xl" id="Introduction-The-dirs-module-defines-a-small-set-of-functions-to-store-and-manage-directories.">Introduction
The dirs module defines a small set of functions to store and manage
directories.</h2><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;setOld&quot;&gt;setOld(d)&lt;/a&gt;|Sets-the-old-directory-string.|-|&lt;a-href=&quot;recent&quot;&gt;recent(idx)&lt;/a&gt;|Get-entry-from-recent-directories-list-based-on-index.|-|&lt;a-href=&quot;push&quot;&gt;push(dir)&lt;/a&gt;|Add-dir-to-the-recent-directories-list.|-|&lt;a-href=&quot;pop&quot;&gt;pop(num)&lt;/a&gt;|Remove-the-specified-amount-of-dirs-from-the-recent-directories-list.|-|&lt;a-href=&quot;peak&quot;&gt;peak(num)&lt;/a&gt;|Look-at-num-amount-of-recent-directories-starting-from-the-latest.|-&lt;hr&gt;-&lt;div-id=&#39;peak&#39;&gt;-&lt;h4-class=&#39;heading&#39;&gt;-dirs.peak(num)-&lt;a-href=&quot;peak&quot;-class=&#39;heading-link&#39;&gt;- &lt;i-class=&quot;fas-fa-paperclip&quot;&gt;&lt;/i&gt;-&lt;/a&gt;-&lt;/h4&gt;">Functions
|||
|----|----|
|&lt;a href=&quot;#setOld&quot;&gt;setOld(d)&lt;/a&gt;|Sets the old directory string.|
|&lt;a href=&quot;#recent&quot;&gt;recent(idx)&lt;/a&gt;|Get entry from recent directories list based on index.|
|&lt;a href=&quot;#push&quot;&gt;push(dir)&lt;/a&gt;|Add <code>dir</code> to the recent directories list.|
|&lt;a href=&quot;#pop&quot;&gt;pop(num)&lt;/a&gt;|Remove the specified amount of dirs from the recent directories list.|
|&lt;a href=&quot;#peak&quot;&gt;peak(num)&lt;/a&gt;|Look at <code>num</code> amount of recent directories, starting from the latest.|
&lt;hr&gt;
&lt;div id=&#39;peak&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
dirs.peak(num)
<a href="#peak" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Look at <code>num</code> amount of recent directories, starting from the latest.
This returns a table of recent directories, up to the <code>num</code> amount.</p>
<h4>Parameters</h4>
<p><code>num</code> <strong><code>number</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#peak&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</h2><p>Look at <code>num</code> amount of recent directories, starting from the latest.
This returns a table of recent directories, up to the <code>num</code> amount.
#### Parameters
<code>num</code> **<code>number</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;pop&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
dirs.pop(num)
<a href="#pop" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Remove the specified amount of dirs from the recent directories list.</p>
<h4>Parameters</h4>
<p><code>num</code> <strong><code>number</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#pop&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Remove the specified amount of dirs from the recent directories list.
#### Parameters
<code>num</code> **<code>number</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;push&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
dirs.push(dir)
<a href="#push" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Add <code>dir</code> to the recent directories list.</p>
<h4>Parameters</h4>
<p><code>dir</code> <strong><code>string</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#push&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Add <code>dir</code> to the recent directories list.
#### Parameters
<code>dir</code> **<code>string</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;recent&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
dirs.recent(idx)
<a href="#recent" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Get entry from recent directories list based on index.</p>
<h4>Parameters</h4>
<p><code>idx</code> <strong><code>number</code></strong></p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#recent&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Get entry from recent directories list based on index.
#### Parameters
<code>idx</code> **<code>number</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;setOld&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
dirs.setOld(d)
<a href="#setOld" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Sets the old directory string.</p>
<h4>Parameters</h4>
<p><code>d</code> <strong><code>string</code></strong></p>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#setOld&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Sets the old directory string.
#### Parameters
<code>d</code> **<code>string</code>** </p><p>&lt;/div&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,71 +1,44 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module doc</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Module doc</h1><Tag xmlns="namespace"><h2>Introduction</h2>
<p>The doc module contains a small set of functions
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Module doc</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Module doc</h1><h2 class="font-bold text-3xl" id="Introduction-The-doc-module-contains-a-small-set-of-functions-used-by-the-Greenhouse-pager-to-render-parts-of-the-documentation-pages.-This-is-only-documented-for-the-sake-of-it.-It&#39;s-only-intended-use-is-by-the-Greenhouse-pager.">Introduction
The doc module contains a small set of functions
used by the Greenhouse pager to render parts of the documentation pages.
This is only documented for the sake of it. Its only intended use
is by the Greenhouse pager.</p>
<h2>Functions</h2>
<table>
<thead>
<tr>
<th></th>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td><a href="#renderInfoBlock" rel="noopener noreferrer">renderInfoBlock(type, text)</a></td>
<td>Renders an info block. An info block is a block of text with</td>
</tr>
<tr>
<td><a href="#renderCodeBlock" rel="noopener noreferrer">renderCodeBlock(text)</a></td>
<td>Assembles and renders a code block. This returns</td>
</tr>
<tr>
<td><a href="#highlight" rel="noopener noreferrer">highlight(text)</a></td>
<td>Performs basic Lua code highlighting.</td>
</tr>
</tbody>
</table>
<hr>
<div>
<h4>
This is only documented for the sake of it. It&#39;s only intended use
is by the Greenhouse pager.</h2><h2 class="font-bold text-3xl" id="Functions-|||-|----|----|-|&lt;a-href=&quot;renderInfoBlock&quot;&gt;renderInfoBlock(type-text)&lt;/a&gt;|Renders-an-info-block.-An-info-block-is-a-block-of-text-with|-|&lt;a-href=&quot;renderCodeBlock&quot;&gt;renderCodeBlock(text)&lt;/a&gt;|Assembles-and-renders-a-code-block.-This-returns|-|&lt;a-href=&quot;highlight&quot;&gt;highlight(text)&lt;/a&gt;|Performs-basic-Lua-code-highlighting.|-&lt;hr&gt;-&lt;div-id=&#39;highlight&#39;&gt;-&lt;h4-class=&#39;heading&#39;&gt;-doc.highlight(text)-&lt;a-href=&quot;highlight&quot;-class=&#39;heading-link&#39;&gt;- &lt;i-class=&quot;fas-fa-paperclip&quot;&gt;&lt;/i&gt;-&lt;/a&gt;-&lt;/h4&gt;">Functions
|||
|----|----|
|&lt;a href=&quot;#renderInfoBlock&quot;&gt;renderInfoBlock(type, text)&lt;/a&gt;|Renders an info block. An info block is a block of text with|
|&lt;a href=&quot;#renderCodeBlock&quot;&gt;renderCodeBlock(text)&lt;/a&gt;|Assembles and renders a code block. This returns|
|&lt;a href=&quot;#highlight&quot;&gt;highlight(text)&lt;/a&gt;|Performs basic Lua code highlighting.|
&lt;hr&gt;
&lt;div id=&#39;highlight&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
doc.highlight(text)
<a href="#highlight" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Performs basic Lua code highlighting.</p>
<h4>Parameters</h4>
<p><code>text</code> <strong><code>string</code></strong><br>
Code/text to do highlighting on.</p>
</div>
<hr>
<div>
<h4>
&lt;a href=&quot;#highlight&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</h2><p>Performs basic Lua code highlighting.
#### Parameters
<code>text</code> **<code>string</code>**
Code/text to do highlighting on.</p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;renderCodeBlock&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
doc.renderCodeBlock(text)
<a href="#renderCodeBlock" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Assembles and renders a code block. This returns
&lt;a href=&quot;#renderCodeBlock&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Assembles and renders a code block. This returns
the supplied text based on the number of command line columns,
and styles it to resemble a code block.</p>
<h4>Parameters</h4>
<p><code>text</code> <strong><code>string</code></strong></p>
</div>
<hr>
<div>
<h4>
and styles it to resemble a code block.
#### Parameters
<code>text</code> **<code>string</code>** </p><p>&lt;/div&gt;</p><p>&lt;hr&gt;
&lt;div id=&#39;renderInfoBlock&#39;&gt;
&lt;h4 class=&#39;heading&#39;&gt;
doc.renderInfoBlock(type, text)
<a href="#renderInfoBlock" rel="noopener noreferrer">
<i></i>
</a>
</h4>
<p>Renders an info block. An info block is a block of text with
an icon and styled text block.</p>
<h4>Parameters</h4>
<p><code>type</code> <strong><code>string</code></strong><br>
Type of info block. The only one specially styled is the <code>warning</code>.</p>
<p><code>text</code> <strong><code>string</code></strong></p>
</div></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
&lt;a href=&quot;#renderInfoBlock&quot; class=&#39;heading-link&#39;&gt;
&lt;i class=&quot;fas fa-paperclip&quot;&gt;&lt;/i&gt;
&lt;/a&gt;
&lt;/h4&gt;</p><p>Renders an info block. An info block is a block of text with
an icon and styled text block.
#### Parameters
<code>type</code> **<code>string</code>**
Type of info block. The only one specially styled is the <code>warning</code>.</p><p><code>text</code> **<code>string</code>** </p><p>&lt;/div&gt;</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,11 +1,9 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Nature</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Nature</h1><Tag xmlns="namespace"><p>A bit after creation, we have the outside nature. Little plants, seeds,
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Nature</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Nature</h1><p>A bit after creation, we have the outside nature. Little plants, seeds,
growing to their final phase: a full plant. A lot of Hilbish itself is
written in Go, but there are parts made in Lua, being most builtins
(<code>doc</code>, <code>cd</code>, cdr), completions, and other things.</p>
<p>Hilbishs Lua core module is called <code>nature</code>.
It runs after Hilbishs Go core does.</p>
<h1>Nature Modules</h1>
<p>Currently, <code>nature</code> provides 1 intended public module: <code>nature.dirs</code>.
(<code>doc</code>, <code>cd</code>, cdr), completions, and other things.</p><p>Hilbish&#39;s Lua core module is called <code>nature</code>.
It runs after Hilbish&#39;s Go core does.</p><h1 class="font-bold text-4xl" id="Nature-Modules-Currently-nature-provides-1-intended-public-module:-nature.dirs.-It-is-a-simple-API-for-managing-recent-directories-and-old-current-working-directory.">Nature Modules
Currently, <code>nature</code> provides 1 intended public module: <code>nature.dirs</code>.
It is a simple API for managing recent directories and old
current working directory.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
current working directory.</h1></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,2 +1,2 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span></span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1></h1><Tag xmlns="namespace"><p>This has been moved to the <code>hilbish.timers</code> API doc (accessible by <code>doc api hilbish.timers</code>)</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span></span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl"></h1><p>This has been moved to the <code>hilbish.timers</code> API doc (accessible by <code>doc api hilbish.timers</code>)</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,19 +1,7 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Actions</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Actions</h1><Tag xmlns="namespace"><p>Vim actions are essentially just when a user uses a Vim keybind.
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Actions</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Actions</h1><p>Vim actions are essentially just when a user uses a Vim keybind.
Things like yanking and pasting are Vim actions.
This is not an “offical Vim thing,” just a Hilbish thing.</p>
<p>The <code>hilbish.vimAction</code> hook is thrown whenever a Vim action occurs.
This is not an &quot;offical Vim thing,&quot; just a Hilbish thing.</p><p>The <code>hilbish.vimAction</code> hook is thrown whenever a Vim action occurs.
It passes 2 arguments: the action name, and an array (table) of args
relating to it.</p>
<p>Here is documentation for what the table of args will hold for an
appropriate Vim action.</p>
<ul>
<li>
<p><code>yank</code>: register, yankedText
The first argument for the yank action is the register yankedText goes to.</p>
</li>
<li>
<p><code>paste</code>: register, pastedText
The first argument for the paste action is the register pastedText is taken from.</p>
</li>
</ul></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
relating to it.</p><p>Here is documentation for what the table of args will hold for an
appropriate Vim action.</p><ul style="list-style-type:&#39;-&#39;;"><li><p><code>yank</code>: register, yankedText</p></li></ul><p>The first argument for the yank action is the register yankedText goes to.</p><ul style="list-style-type:&#39;-&#39;;"><li><p><code>paste</code>: register, pastedText</p></li></ul><p>The first argument for the paste action is the register pastedText is taken from.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,4 +1,3 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Vim Mode</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Vim Mode</h1><Tag xmlns="namespace"><p>Hilbish has a Vim binding input mode accessible for use.
It can be enabled with the <code>hilbish.inputMode</code> function (check <code>doc hilbish</code>).</p>
<p>This is documentation for everything relating to it.</p></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Vim Mode</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Vim Mode</h1><p>Hilbish has a Vim binding input mode accessible for use.
It can be enabled with the <code>hilbish.inputMode</code> function (check <code>doc hilbish</code>).</p><p>This is documentation for everything relating to it.</p></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,8 +1,8 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><main class="flex flex-col gap-4 mx-4"><div class="border-b border-b-zinc-300 gap-3 -mx-4 p-2 h-screen bg-radial-[at_100%_100%] from-pink-500 to-stone-50 dark:to-neutral-950 to-35% flex flex-col items-center justify-center"><div class="gap-1 flex flex-col items-center"><span class="flex flex-row items-center justify-center"><img class="h-20" src="./hilbish-flower.png"><p class="text-4xl font-bold">Hilbish</p></span><p class="text-4xl font-light">Something Unique.</p></div><p class="text-center">Hilbish is the new Moon-powered interactive shell for Lua fans!<br>Extensible, scriptable, configurable: All in Lua.</p><div class="flex flex-row gap-2 mt-2"><a href target="_blank"><button class="bg-pink-500/30 rounded-md backdrop-blur-md py-2 px-4 font-semibold">Install</button></a><a href target="_blank"><button class="bg-stone-500/30 rounded-md backdrop-blur-md py-2 px-4 font-semibold">GitHub</button></a></div><p class="absolute bottom-4">Scroll for more</p></div><div class="text-center"><span class="rounded-md backdrop-blur-md bg-pink-500/20 p-2 text-xs font-light">Feature Overview</span><div class="flex flex-col justify-center items-center gap-6 mt-4"><div class="flex flex-col gap-2 md:w-3/6 text-start xl:items-start"><h1 class="text-4xl font-semibold">The Moon-powered shell</h1><div class="flex flex-row flex-wrap xl:flex-nowrap justify-center items-center gap-4 "><img class="h-32 rounded-md" src="https://upload.wikimedia.org/wikipedia/commons/thumb/c/cf/Lua-Logo.svg/2048px-Lua-Logo.svg.png"><p>Hilbish makes use of the Lua programming language for interactive and config scripting.
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><main class="flex flex-col gap-4 mx-4"><div class="border-b border-b-zinc-300 gap-3 -mx-4 p-2 h-screen bg-radial-[at_100%_100%] from-pink-500 to-stone-50 dark:to-neutral-950 to-35% flex flex-col items-center justify-center"><div class="gap-1 flex flex-col items-center"><span class="flex flex-row items-center justify-center"><img class="h-20" src="./hilbish-flower.png"><p class="text-4xl font-bold">Hilbish</p></span><p class="text-4xl font-light">Something Unique.</p></div><p class="text-center">Hilbish is the new Moon-powered interactive shell for Lua fans!<br>Extensible, scriptable, configurable: All in Lua.</p><div class="flex flex-row gap-2 mt-2"><a href target="_blank"><button class="bg-pink-500/30 rounded-md backdrop-blur-md py-2 px-4 font-semibold">Install</button></a><a href target="_blank"><button class="bg-stone-500/30 rounded-md backdrop-blur-md py-2 px-4 font-semibold">GitHub</button></a></div><p class="absolute bottom-4">Scroll for more</p></div><div class="text-center"><span class="rounded-md backdrop-blur-md bg-pink-500/20 p-2 text-xs font-light">Feature Overview</span><div class="flex flex-col justify-center items-center gap-6 mt-4"><div class="flex flex-col gap-2 md:w-3/6 text-start xl:items-start"><h1 class="text-4xl font-semibold">The Moon-powered shell</h1><div class="flex flex-row flex-wrap xl:flex-nowrap justify-center items-center gap-4 "><img class="h-32 rounded-md" src="https://upload.wikimedia.org/wikipedia/commons/thumb/c/cf/Lua-Logo.svg/2048px-Lua-Logo.svg.png"><p>Hilbish makes use of the Lua programming language for interactive and config scripting.
If you write Lua on a regular basis, Hilbish will be the perfect resident in your terminal.
You can still use shell script, but Lua takes the spotlight (or the moonlight..)</p></div></div><div class="flex flex-col gap-2 md:w-3/6 text-start xl:items-end"><h1 class="text-4xl font-semibold">Modern, Helpful Interactive Features</h1><div class="flex flex-row flex-wrap xl:flex-nowrap justify-center items-center gap-4 flex-row-reverse"><img class="h-32 rounded-md" src="https://safe.saya.moe/osR0bplExBC0.png"><p>Graphical TUI history, sensible tab completions, elegantly refreshing prompts, name it all and Hilbish either has it or it&#39;s 1 suggestion or 1 script away from being possible.
Everything present in Hilbish is meant to enhance your interactive shell experience.</p></div></div><div class="flex flex-col gap-2 md:w-3/6 text-start xl:items-start"><h1 class="text-4xl font-semibold">Sensible, Friendly Defaults</h1><div class="flex flex-row flex-wrap xl:flex-nowrap justify-center items-center gap-4 "><img class="h-32 rounded-md" src="https://safe.saya.moe/7ze8NQVPD9vO.png"><p>Hilbish&#39;s default config makes a simple but presentable showcase of its Lua API and a few of its features.</p></div></div><div class="flex flex-col gap-2 md:w-3/6 text-start xl:items-end"><h1 class="text-4xl font-semibold">Truly Make It Yours</h1><div class="flex flex-row flex-wrap xl:flex-nowrap justify-center items-center gap-4 flex-row-reverse"><p>Many things about Hilbish are designed to be changed and swapped out.
If you want to make use of a Lua derivative in your interactive use (like Fennel) instead of
Lua, that can be done!</p></div></div></div></div><div class="text-center bg-neutral-100 dark:bg-neutral-900 -mx-4 p-4"><span class="rounded-md backdrop-blur-md bg-blue-500/20 p-2 text-xs font-light">Download It Now!</span><div class="flex flex-col items-center mt-4 gap-2"><p class="md:w-3/6">To find out all that Hilbish can do, you should just try it out! It&#39;s officially available on Linux, MacOS, Windows, and probably builds on anything Go is available on!</p><h2 class="text-3xl font-semibold">Featured Downloads</h2><p>These are binary releases of Hilbish from GitHub. Install instructions are located at an INSTALL.md file.</p><div class="mt-6 flex flex-row flex-wrap items-center justify-center gap-8"><div class="flex flex-col gap-2"><img class="h-36" src="https://upload.wikimedia.org/wikipedia/commons/thumb/3/35/Tux.svg/1200px-Tux.svg.png"><a href target="_blank"><button class="bg-stone-500/30 rounded-md backdrop-blur-md py-2 px-4 font-semibold">Linux (64-bit)</button></a></div><div class="flex flex-col gap-2"><img class="h-36" src="https://upload.wikimedia.org/wikipedia/commons/thumb/0/0a/Unofficial_Windows_logo_variant_-_2002%E2%80%932012_%28Multicolored%29.svg/2321px-Unofficial_Windows_logo_variant_-_2002%E2%80%932012_%28Multicolored%29.svg.png"><a href target="_blank"><button class="bg-stone-500/30 rounded-md backdrop-blur-md py-2 px-4 font-semibold">Windows (64-bit)</button></a></div><div class="flex flex-col gap-2 justify-center items-center"><img class="h-36" src="https://images.seeklogo.com/logo-png/38/2/apple-mac-os-logo-png_seeklogo-381401.png"><a href target="_blank"><button class="bg-stone-500/30 rounded-md backdrop-blur-md py-2 px-4 font-semibold">MacOS (64-bit)</button></a></div><div class="flex flex-col gap-2 justify-center items-center"><img class="h-36" src="https://images.seeklogo.com/logo-png/38/2/apple-mac-os-logo-png_seeklogo-381401.png"><a href target="_blank"><button class="bg-stone-500/30 rounded-md backdrop-blur-md py-2 px-4 font-semibold">MacOS (ARM)</button></a></div></div></div></div></main><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
Lua, that can be done!</p></div></div></div></div><div class="text-center bg-neutral-100 dark:bg-neutral-900 -mx-4 p-4"><span class="rounded-md backdrop-blur-md bg-blue-500/20 p-2 text-xs font-light">Download It Now!</span><div class="flex flex-col items-center mt-4 gap-2"><p class="md:w-3/6">To find out all that Hilbish can do, you should just try it out! It&#39;s officially available on Linux, MacOS, Windows, and probably builds on anything Go is available on!</p><h2 class="text-3xl font-semibold">Featured Downloads</h2><p>These are binary releases of Hilbish from GitHub. Install instructions are located at an INSTALL.md file.</p><div class="mt-6 flex flex-row flex-wrap items-center justify-center gap-8"><div class="flex flex-col gap-2"><img class="h-36" src="https://upload.wikimedia.org/wikipedia/commons/thumb/3/35/Tux.svg/1200px-Tux.svg.png"><a href target="_blank"><button class="bg-stone-500/30 rounded-md backdrop-blur-md py-2 px-4 font-semibold">Linux (64-bit)</button></a></div><div class="flex flex-col gap-2"><img class="h-36" src="https://upload.wikimedia.org/wikipedia/commons/thumb/0/0a/Unofficial_Windows_logo_variant_-_2002%E2%80%932012_%28Multicolored%29.svg/2321px-Unofficial_Windows_logo_variant_-_2002%E2%80%932012_%28Multicolored%29.svg.png"><a href target="_blank"><button class="bg-stone-500/30 rounded-md backdrop-blur-md py-2 px-4 font-semibold">Windows (64-bit)</button></a></div><div class="flex flex-col gap-2 justify-center items-center"><img class="h-36" src="https://images.seeklogo.com/logo-png/38/2/apple-mac-os-logo-png_seeklogo-381401.png"><a href target="_blank"><button class="bg-stone-500/30 rounded-md backdrop-blur-md py-2 px-4 font-semibold">MacOS (64-bit)</button></a></div><div class="flex flex-col gap-2 justify-center items-center"><img class="h-36" src="https://images.seeklogo.com/logo-png/38/2/apple-mac-os-logo-png_seeklogo-381401.png"><a href target="_blank"><button class="bg-stone-500/30 rounded-md backdrop-blur-md py-2 px-4 font-semibold">MacOS (ARM)</button></a></div></div></div></div></main><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -1,38 +1,32 @@
<!doctype html>
<html class="bg-stone-50 dark:bg-neutral-950 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="https://rosettea.github.io/Hilbish/versions/new-website/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="https://rosettea.github.io/Hilbish/versions/new-website/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content="https://rosettea.github.io/Hilbish/versions/new-website" property="og:url"></head><body><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="block sm:hidden h-10 sticky top-12 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Install</span></div><div class="grid sm:flex"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 basis-3/5 transition-transform duration-300 -translate-x-full sm:translate-x-0 peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1>Install</h1><Tag xmlns="namespace"><h2>Official Binaries</h2>
<p>The best way to get Hilbish is to get a build directly from GitHub.
<html class="bg-stone-50 dark:bg-neutral-900 text-black dark:text-white"><head><meta content="width=device-width, initial-scale=1.0" name="viewport"><link href="/tailwind.css" rel="stylesheet"><title>Hilbish</title><meta content="#ff89dd" name="theme-color"><meta content="/hilbish-flower.png" property="og:image"><meta content="Hilbish" property="og:title"><meta content="Hilbish" property="og:site_name"><meta content="website" property="og:type"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." property="og:description"><meta content="Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua." name="description"><meta content="Lua,Shell,Hilbish,Linux,zsh,bash" name="keywords"><meta content property="og:url"></head><body class="min-h-screen flex flex-col"><nav class="flex sticky top-0 w-full z-50 border-b border-b-zinc-300 backdrop-blur-md h-12"><div class="flex my-auto px-2"><div><a class="flex items-center gap-1" href="/"><img class="h-6" src="/hilbish-flower.png"><span class="self-center text-2xl">Hilbish</span></a></div></div></nav><div class="flex flex-col"><div class="h-10 flex py-2 px-4 border-b border-b-zinc-300 w-full gap-2 backdrop-blur-sm bg-zinc-300/50 dark:bg-zinc-800/50 z-50"><label class="cursor-pointer" for="sidebar-toggle"><tag><svg xmlns="http://www.w3.org/2000/svg" height="24px" viewBox="0 -960 960 960" width="24px" class="fill-black"><path d="M120-240v-80h240v80H120Zm0-200v-80h480v80H120Zm0-200v-80h720v80H120Z"/></svg></tag></label><span>Install</span></div><div class="grid"><input class="peer hidden" id="sidebar-toggle" type="checkbox"><div class="border-r border-r-zinc-300 col-start-1 row-start-1 sticky top-22 sm:top-12 h-full sm:h-svh bg-neutral-200 dark:bg-neutral-900 basis-3/5 transition-transform duration-300 -translate-x-full peer-checked:translate-x-0 z-30"><div class="p-4 -mb-4 overflow-y-auto h-full"><h2 class="text-xl font-semibold mb-4">Sidebar</h2><ul><li class="mb-2">Vim Mode</li><li class="mb-2">Completions</li><li class="mb-2">Lunacolors</li><li class="mb-2">Frequently Asked Questions</li><li class="mb-2">Getting Started</li><li class="mb-2">Introduction</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module fs</li><li class="mb-2">Module snail</li><li class="mb-2">Module terminal</li><li class="mb-2">Module commander</li><li class="mb-2">API</li><li class="mb-2">Module bait</li><li class="mb-2">Module hilbish.module</li><li class="mb-2">Module hilbish.abbr</li><li class="mb-2">Module hilbish.userDir</li><li class="mb-2">Module hilbish.os</li><li class="mb-2">Module hilbish.history</li><li class="mb-2">Module hilbish.completion</li><li class="mb-2">Module hilbish.messages</li><li class="mb-2">Module hilbish.aliases</li><li class="mb-2">Module hilbish.runner</li><li class="mb-2">Module hilbish.timers</li><li class="mb-2">Module hilbish</li><li class="mb-2">Module hilbish.jobs</li><li class="mb-2">Module hilbish.editor</li><li class="mb-2">Actions</li><li class="mb-2">Module doc</li><li class="mb-2">Nature</li><li class="mb-2">Module dirs</li><li class="mb-2">Hilbish</li><li class="mb-2">Command</li><li class="mb-2">Signals</li><li class="mb-2">Signal</li><li class="mb-2">Notification</li><li class="mb-2">Runner Mode</li><li class="mb-2">Options</li><li class="mb-2">Features</li></ul></div></div><main class="col-start-1 row-start-1 transition-all duration-300 peer-checked:filter peer-checked:blur-sm peer-checked:bg-black/30 px-4 pt-2"><h1 class="font-bold text-4xl">Install</h1><h2 class="font-bold text-3xl" id="Official-Binaries-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.">Official Binaries
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.</p>
<p>You can download both at any time, but note that the development builds may
have breaking changes.</p>
<p>For the latest <strong>stable release</strong>, check here: <a href="https://github.com/Rosettea/Hilbish/releases/latest" rel="noopener noreferrer">https://github.com/Rosettea/Hilbish/releases/latest</a><br>
For a <strong>development build</strong>: <a href="https://nightly.link/Rosettea/Hilbish/workflows/build/master" rel="noopener noreferrer">https://nightly.link/Rosettea/Hilbish/workflows/build/master</a></p>
<h2>Compiling</h2>
<p>To read the steps for compiling Hilbish, head over to the <a href="https://github.com/Rosettea/Hilbish#build" rel="noopener noreferrer">GitHub repository.</a></p>
<h2>Package Repositories</h2>
<p>Methods of installing Hilbish for your Linux distro.</p>
<h3>Fedora (COPR)</h3>
<p>An official COPR is offered to install Hilbish easily on Fedora.
Enable the repo:</p>
<pre><code><span>sudo dnf copr enable sammyette/Hilbish
</span></code></pre>
<p>And install Hilbish:</p>
<pre><code><span>sudo dnf install hilbish
</span></code></pre>
<p>Or for the latest development build from master:</p>
<pre><code><span>sudo dnf install hilbish-git
</span></code></pre>
<h3>Arch Linux (AUR)</h3>
<p>Hilbish is on the AUR. Setup an AUR helper, and install.
Example with yay:</p>
<pre><code><span>yay -S hilbish
</span></code></pre>
<p>Or, from master branch:</p>
<pre><code><span>yay -S hilbish-git
</span></code></pre>
<h3>Alpine Linux</h3>
<p>Hilbish is currentlty in the testing/edge repository for Alpine.
Follow the steps <a href="https://wiki.alpinelinux.org/wiki/Enable_Community_Repository" rel="noopener noreferrer">here</a>
(Using testing repositories) and install:</p>
<pre><code><span>apk add hilbish
</span></code></pre></Tag></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href="https://rosettea.github.io/Hilbish/versions/new-website"><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>
the latest stable release, and development builds from the master branch.</h2><p>You can download both at any time, but note that the development builds may
have breaking changes.</p><p>For the latest *<strong>stable release</strong><strong>, check here: https://github.com/Rosettea/Hilbish/releases/latest
For a *</strong>development build**: https://nightly.link/Rosettea/Hilbish/workflows/build/master</p><h2 class="font-bold text-3xl" id="Compiling-To-read-the-steps-for-compiling-Hilbish-head-over-to-the-GitHub-repository.">Compiling
To read the steps for compiling Hilbish, head over to the <a href="https://github.com/Rosettea/Hilbish#build">GitHub repository.</a></h2><h2 class="font-bold text-3xl" id="Package-Repositories-Methods-of-installing-Hilbish-for-your-Linux-distro.">Package Repositories
Methods of installing Hilbish for your Linux distro.</h2><h3 class="font-bold text-2xl" id="Fedora-(COPR)-An-official-COPR-is-offered-to-install-Hilbish-easily-on-Fedora.-Enable-the-repo:--sudo-dnf-copr-enable-sammyette/Hilbish">Fedora (COPR)
An official COPR is offered to install Hilbish easily on Fedora.
Enable the repo:
<code>
sudo dnf copr enable sammyette/Hilbish
</code></h3><p>And install Hilbish:
<code>
sudo dnf install hilbish
</code></p><p>Or for the latest development build from master:
<code>
sudo dnf install hilbish-git
</code></p><h3 class="font-bold text-2xl" id="Arch-Linux-(AUR)-Hilbish-is-on-the-AUR.-Setup-an-AUR-helper-and-install.-Example-with-yay:">Arch Linux (AUR)
Hilbish is on the AUR. Setup an AUR helper, and install.
Example with yay: </h3><pre><code data-lang="text">yay -S hilbish
</code></pre><p>Or, from master branch:
<code>
yay -S hilbish-git
</code></p><h3 class="font-bold text-2xl" id="Alpine-Linux-Hilbish-is-currentlty-in-the-testing/edge-repository-for-Alpine.-Follow-the-steps-here-(Using-testing-repositories)-and-install:----apk-add-hilbish">Alpine Linux
Hilbish is currentlty in the testing/edge repository for Alpine.
Follow the steps <a href="https://wiki.alpinelinux.org/wiki/Enable_Community_Repository">here</a>
(Using testing repositories) and install:
<code>
apk add hilbish
</code></h3></main></div></div><footer class="py-4 px-6 flex flex-row justify-around border-t border-t-zinc-300"><div class="flex flex-col"><a class="flex items-center gap-1" href><img class="h-24" src="/hilbish-flower.png"><span class="self-center text-6xl">Hilbish</span></a><span class="text-xl">The Moon-powered shell!</span><span class="text-light text-neutral-500">MIT License, copyright sammyette 2025</span></div><div class="flex flex-col"><a href="https://github.com/Rosettea/Hilbish"><span class="text-pink-300 text-light">GitHub</span></a></div></footer></body></html>

View File

@ -575,9 +575,6 @@
.top-0 {
top: calc(var(--spacing) * 0);
}
.top-12 {
top: calc(var(--spacing) * 12);
}
.top-22 {
top: calc(var(--spacing) * 22);
}
@ -701,6 +698,9 @@
.m-0 {
margin: calc(var(--spacing) * 0);
}
.m-2 {
margin: calc(var(--spacing) * 2);
}
.-mx-1 {
margin-inline: calc(var(--spacing) * -1);
}
@ -1737,6 +1737,9 @@
.bg-neutral-200 {
background-color: var(--color-neutral-200);
}
.bg-neutral-700 {
background-color: var(--color-neutral-700);
}
.bg-pink-500\/20 {
background-color: color-mix(in srgb, oklch(65.6% 0.241 354.308) 20%, transparent);
@supports (color: color-mix(in lab, red, red)) {
@ -3187,27 +3190,11 @@
top: calc(var(--spacing) * 12);
}
}
.sm\:flex {
@media (width >= 40rem) {
display: flex;
}
}
.sm\:hidden {
@media (width >= 40rem) {
display: none;
}
}
.sm\:h-svh {
@media (width >= 40rem) {
height: 100svh;
}
}
.sm\:translate-x-0 {
@media (width >= 40rem) {
--tw-translate-x: calc(var(--spacing) * 0);
translate: var(--tw-translate-x) var(--tw-translate-y);
}
}
.md\:w-3\/6 {
@media (width >= 48rem) {
width: calc(3/6 * 100%);
@ -3239,9 +3226,12 @@
background-color: var(--color-neutral-900);
}
}
.dark\:bg-neutral-950 {
.dark\:bg-zinc-800\/50 {
@media (prefers-color-scheme: dark) {
background-color: var(--color-neutral-950);
background-color: color-mix(in srgb, oklch(27.4% 0.006 286.033) 50%, transparent);
@supports (color: color-mix(in lab, red, red)) {
background-color: color-mix(in oklab, var(--color-zinc-800) 50%, transparent);
}
}
}
.dark\:to-neutral-950 {