chore: merge from master

pull/240/head
sammyette 2023-04-14 00:44:34 -04:00
commit f5fe85ea2e
Signed by: sammyette
GPG Key ID: 904FC49417B44DCD
26 changed files with 261 additions and 94 deletions

View File

@ -1,10 +1,8 @@
name: Build website name: Build website
on: on:
push: - push
branches: - pull_request
- master
- docs-refactor
jobs: jobs:
deploy: deploy:
@ -24,8 +22,22 @@ jobs:
- name: Build - name: Build
run: 'cd website && hugo --minify' run: 'cd website && hugo --minify'
- name: Set branch name
id: branch
run: echo "::set-output name=BRANCH_NAME::${GITHUB_REF##*/}"
- name: Deploy - name: Deploy
if: steps.branch.outputs.BRANCH_NAME == 'master' && github.repository_owner == 'Rosettea'
uses: peaceiris/actions-gh-pages@v3 uses: peaceiris/actions-gh-pages@v3
with: with:
github_token: ${{ secrets.GITHUB_TOKEN }} github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./website/public publish_dir: ./website/public
keep_files: true
- name: Deploy
if: steps.branch.outputs.BRANCH_NAME != 'master' && github.repository_owner == 'Rosettea'
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./website/public
destination_dir: versions/${( steps.branch.outputs.BRANCH_NAME }}
keep_files: true

View File

@ -10,6 +10,16 @@
### Fixed ### Fixed
- Replaced `sed` in-place editing with `grep` and `mv` for compatibility with BSD utils - Replaced `sed` in-place editing with `grep` and `mv` for compatibility with BSD utils
## [2.1.2] - 2022-04-10
### Removed
- Bad april fools code ;(
## [2.1.1] - 2022-04-01
### Added
- Validation checks for command input
- Improved runtime performance
- Validate Lua code
## [2.1.0] - 2022-02-10 ## [2.1.0] - 2022-02-10
### Added ### Added
- Documented custom userdata types (Job and Timer Objects) - Documented custom userdata types (Job and Timer Objects)

View File

@ -1,45 +1,35 @@
<div align="center"> <img src="./assets/hilbish-logo-and-text.png" width=512><br>
<img src="./assets/hilbish-flower.png" width=128><br> <blockquote>
<img src="./assets/hilbish-text.png" width=256><br> 🌓 The Moon-powered shell! A comfy and extensible shell for Lua fans! 🌺 ✨
<blockquote> </blockquote>
🌺 The flower shell. A comfy and nice little shell for Lua fans!
</blockquote>
<p align="center">
<img alt="GitHub commit activity" src="https://img.shields.io/github/commit-activity/m/Rosettea/Hilbish?style=flat-square">
<img alt="GitHub commits since latest release (by date)" src="https://img.shields.io/github/commits-since/Rosettea/Hilbish/latest?style=flat-square">
<img alt="GitHub contributors" src="https://img.shields.io/github/contributors/Rosettea/Hilbish?style=flat-square"><br>
<a href="https://github.com/Rosettea/Hilbish/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22"><img src="https://img.shields.io/github/issues/Hilbis/Hilbish/help%20wanted?style=flat-square&color=green" alt="help wanted"></a>
<a href="https://github.com/Rosettea/Hilbish/blob/master/LICENSE"><img alt="GitHub license" src="https://img.shields.io/github/license/Rosettea/Hilbish?style=flat-square"></a>
<a href="https://discord.gg/3PDdcQz"><img alt="Discord" src="https://img.shields.io/discord/732357621503229962?color=blue&style=flat-square"></a>
</p>
</div>
Hilbish is a extensible shell (framework). It was made to be very customizable <img alt="GitHub commit activity" src="https://img.shields.io/github/commit-activity/m/Rosettea/Hilbish?style=flat-square"><img alt="GitHub commits since latest release (by date)" src="https://img.shields.io/github/commits-since/Rosettea/Hilbish/latest?style=flat-square"><img alt="GitHub contributors" src="https://img.shields.io/github/contributors/Rosettea/Hilbish?style=flat-square"><br>
via the Lua programming language. It aims to be easy to use for the casual <a href="https://github.com/Rosettea/Hilbish/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22"><img src="https://img.shields.io/github/issues/Hilbis/Hilbish/help%20wanted?style=flat-square&color=green" alt="help wanted"></a>
people but powerful for those who want to tinker more with their shell, <a href="https://github.com/Rosettea/Hilbish/blob/master/LICENSE"><img alt="GitHub license" src="https://img.shields.io/github/license/Rosettea/Hilbish?style=flat-square"></a>
the thing used to interface with most of the system. <a href="https://discord.gg/3PDdcQz"><img alt="Discord" src="https://img.shields.io/discord/732357621503229962?color=blue&style=flat-square"></a>
<br>
Hilbish is an extensible shell designed to be highly customizable.
It is configured in Lua and provides a good range of features.
It aims to be easy to use for anyone but powerful enough for
those who need it.
The motivation for choosing Lua was that its simpler and better to use The motivation for choosing Lua was that its simpler and better to use
than old shell script. It's fine for basic interactive shell uses, than old shell script. It's fine for basic interactive shell uses,
but that's the only place Hilbish has shell script; everything else is Lua but that's the only place Hilbish has shell script; everything else is Lua
and aims to be infinitely configurable. If something isn't, open an issue! and aims to be infinitely configurable. If something isn't, open an issue!
# Table of Contents
- [Screenshots](#Screenshots)
- [Getting Hilbish](#Getting-Hilbish)
- [Contributing](#Contributing)
# Screenshots # Screenshots
<div align="center"> <div align="center">
<img src="gallery/terminal.png"><br><br> <img src="gallery/tab.png">
<img src="gallery/tab.png"><br><br>
<img src="gallery/pillprompt.png"> <img src="gallery/pillprompt.png">
</div> </div>
# Getting Hilbish # Getting Hilbish
**NOTE:** Hilbish is not guaranteed to work properly on Windows, starting **NOTE:** Hilbish is not guaranteed to work properly on Windows, starting
from the 2.0 version. It will still be able to compile, but functionality from the 2.0 version. It will still be able to compile, but functionality
may be lacking. may be lacking. If you want to contribute to make the situation better,
comment on the Windows discussion.
You can check the [install page](https://rosettea.github.io/Hilbish/install/) You can check the [install page](https://rosettea.github.io/Hilbish/install/)
on the website for distributed binaries from GitHub or other package repositories. on the website for distributed binaries from GitHub or other package repositories.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

View File

@ -13,6 +13,7 @@ var (
var ( var (
ver = "v2.2.0" ver = "v2.2.0"
releaseName = "Poppy" releaseName = "Poppy"
gitCommit string gitCommit string
gitBranch string gitBranch string
) )

View File

@ -8,11 +8,11 @@ description: 'Something Unique. Hilbish is the new interactive shell for Lua fan
<div class="text-center"> <div class="text-center">
<h1 class="fw-light">Something Unique.</h1> <h1 class="fw-light">Something Unique.</h1>
<p> <p>
<strong>Hilbish</strong> is the new interactive shell for Lua fans.<br> <strong>🌺 Hilbish</strong> is the new Moon-powered interactive shell for Lua fans!<br>
Extensible, scriptable, configurable: All in Lua. Extensible, scriptable, configurable: All in Lua.
</p> </p>
<a href="install" class="btn btn-primary">Install</a> <a href="install" class="btn btn-primary">Install</a>
<a href="https://github.com/Rosettea/Hilbish" class="btn btn-secondary" target="_blank">Github</a> <a href="https://github.com/Rosettea/Hilbish" class="btn btn-secondary" target="_blank">GitHub</a>
</div> </div>
<hr> <hr>
@ -108,14 +108,28 @@ description: 'Something Unique. Hilbish is the new interactive shell for Lua fan
<hr> <hr>
<h1 class="fw-light">Screenshots</h1>
<div class="row row-cols-1 row-cols-md-2 g-4">
<div class="col">
<img src="/Hilbish/pillprompt.png">
</div>
<div class="col">
<img src="/Hilbish/default.png">
</div>
<div class="col">
<img src="/Hilbish/tab.png">
</div>
</div>
<br>
<h1 class="fw-light">Why not just Lua?</h1> <h1 class="fw-light">Why not just Lua?</h1>
<p> <p>
Hilbish is your interactive shell as well as a just a Lua interpreter Hilbish is your interactive shell as well as a just a Lua interpreter
and enhanced REPL.<br> and enhanced REPL.<br>
</p> </p>
<ul class="list-group" style="max-width: 64em;"> <ul class="list-group">
<li class="list-group-item"><i class="fa-solid fa-battery-full"></i> Batteries included Lua runtime that's also your user shell!</li> <li class="list-group-item"><i class="fa-solid fa-battery-full"></i> Batteries included Lua runtime that's also your user shell!</li>
<li class="list-group-item"><i class="fa-solid fa-network-wired"></i> Hilbish is easily cross platform. It has OS agnostic interfaces for easy cross platform Lua code.</li> <li class="list-group-item"><i class="fa-solid fa-network-wired"></i> Provides cross-platform and OS agnostic APIs to ensure your Lua code works everywhere Hilbish does, as expected.</li>
</ul> </ul>
<hr> <hr>
@ -123,11 +137,10 @@ description: 'Something Unique. Hilbish is the new interactive shell for Lua fan
<h1 class="fw-light">Try It Today!</h1> <h1 class="fw-light">Try It Today!</h1>
<p> <p>
Hilbish is known to run on the 3 major platforms (Windows, MacOS, Linux) Hilbish is known to run on the 3 major platforms (Windows, MacOS, Linux)
but likely builds on other Unixes! but likely builds on other Unixes! Windows doesn't work as well as it should,
<br> so if you're a Windows user,
Windows doesn't work as well as it should, so if you're a Windows user,
<a href="https://github.com/Rosettea/Hilbish/discussions/165">say something</a>! <a href="https://github.com/Rosettea/Hilbish/discussions/165">say something</a>!
<ul class="list-group" style="max-width: 64em;"> <ul class="list-group">
<li class="list-group-item"><i class="fa-solid fa-cloud-arrow-down"></i> <a href="/Hilbish/install" style="text-decoration: none;"><strong>Download</strong></a> the binary</li> <li class="list-group-item"><i class="fa-solid fa-cloud-arrow-down"></i> <a href="/Hilbish/install" style="text-decoration: none;"><strong>Download</strong></a> the binary</li>
<li class="list-group-item"><i class="fa-solid fa-screwdriver-wrench"></i> <a href="https://github.com/Rosettea/Hilbish#manual-build" style="text-decoration: none;"><strong>Build</strong></a> from source</li> <li class="list-group-item"><i class="fa-solid fa-screwdriver-wrench"></i> <a href="https://github.com/Rosettea/Hilbish#manual-build" style="text-decoration: none;"><strong>Build</strong></a> from source</li>
</ul> </ul>

View File

@ -0,0 +1,66 @@
---
title: "Improving Hilbish's Branding"
date: 2023-04-13T22:15:31-04:00
draft: false
---
Happy birthday Hilbish! As of last month, Hilbish is now 2 years old.
Unfortunately I missed the official date, but I will still make a more
focused post on the date (19st).
I decided to fix up this website and Hilbish's logo, so that can
be thought of as something for the 2 years milestone?
# Logo
Hilbish's old logo was.. not that good. It definitely functioned
as a logo, but the yellow part of it looked ugly (sorry old logo).
<img src="https://safe.kashima.moe/4c6e9q484pcy.png" width=256>
<br>
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:
<img src="https://safe.kashima.moe/oy72vpev2yi4.png" width=256>
<br>
# Website
Ever since this website was first made, from the release of v2.0, it has
been doing it's job of being a website good enough, but there were a few issues.
# Padding
Padding is very important! The edges of your screen need space to do nothing,
after all. On mobile or screens small enough, there would not be enough space
for the auto margin to fill, and since there was no padding besides that,
it means things would look a bit cramped. This was simple to fix.
Here it is before:
![Before](https://safe.kashima.moe/nupzzalt2oa4.png)
and after:
![After](https://safe.kashima.moe/r0ox4nazfi0q.png)
# 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't look that good.
A few months ago I made it collapse with the site wide navigation, but it
was not hidden by default. So a few improvements were made:
- 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
Here's a before:
![](https://safe.kashima.moe/krn0a6qwegdj.png)
and after:
![](https://safe.kashima.moe/sk11ighz47yb.png)
Looks a lot better now.
# Other Changes
If you haven'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.

View File

@ -0,0 +1,38 @@
---
title: "v2.1.1 Release"
date: 2023-04-01T18:15:42-04:00
draft: false
---
> The release with full changelogs and prebuilt binaries can be
seen at the [v2.1.1](https://github.com/Rosettea/Hilbish/releases/tag/v2.1.1)
tag.
Welcome to a fresh new release of Hilbish! Some people (or none) may be awaiting
the long coming v2.2 release with lots of features, but I *needed* to push
out this little bug fix (wink) release.
# Bug Fixes
## Validation checks for command input
When running this version, you may have noticed an odd message that sometimes
comes up when running commands. This is from the new TMOLI42SH
(The Meaning of Life is 42 String Hash) input validation scheme.
## 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!!!!!
## 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.
# Features
There is only 1 new feature in this glorious release.
## Fix your mistakes for the future
If you run a command that does not exist, Hilbish will say goodbye.
# 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. :)))

View File

@ -0,0 +1,15 @@
---
title: "v2.1.2 Release"
date: 2023-04-10T12:27:41-04:00
draft: false
---
> The release with full changelogs and prebuilt binaries can be
seen at the [v2.1.2](https://github.com/Rosettea/Hilbish/releases/tag/v2.1.2)
tag.
This release reverts the April Fool's code additions in v2.1.1. It is
functionally equal to v2.1.0. Nice!
A real release will come possibly in a few days or next week, so stay tuned for
the good and feature-filled release of v2.2!

View File

@ -5,7 +5,7 @@ weight: -40
menu: docs menu: docs
--- ---
Hilbish has a wide range of features to enhance the user's experience and Hilbish has a wide range of features to enhance the user's experience
is always adding new ones. If there is something missing here or something new ones are always being added. If there is something missing here or
you would like to see, please [start a discussion](https://github.com/Rosettea/Hilbish/discussions) something you would like to see, please [start a discussion](https://github.com/Rosettea/Hilbish/discussions)
or comment on any existing ones which match your request. or comment on any existing ones which match your request.

View File

@ -15,3 +15,7 @@ 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 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, Hilbish as a REPL. This also allows users to add alternative languages,
instead of either like Fennel. instead of either like Fennel.
Runner mode can also be used to handle specific kinds of input before
evaluating like normal, which is how [Link.hsh](https://github.com/TorchedSammy/Link.hsh)
handles links.

View File

@ -15,9 +15,10 @@ To exit, you can either run the `exit` command or hit Ctrl+D.
There are a few ways to make Hilbish your default shell. A simple way is There are a few ways to make Hilbish your default shell. A simple way is
to make it your user/login shell. to make it your user/login shell.
{{< warning `It is not recommended to set Hilbish as your login shell. That is expected to be a {{< warning `It is not recommended to set Hilbish as your login shell. That
POSIX compliant shell, which Hilbish is not. At most, there will just be a is expected to be a POSIX compliant shell, which Hilbish is not. Though if
few variables missing in your environment` >}} you still decide to do it, there will just be a few variables missing in
your environment` >}}
To do that, simply run `chsh -s /usr/bin/hilbish`. To do that, simply run `chsh -s /usr/bin/hilbish`.
Some distros (namely Fedora) might have `lchsh` instead, which is used like `lchsh <user>`. Some distros (namely Fedora) might have `lchsh` instead, which is used like `lchsh <user>`.

View File

@ -15,7 +15,12 @@ have breaking changes.
For the latest **stable release**, check here: https://github.com/Rosettea/Hilbish/releases/latest For the latest **stable release**, check here: https://github.com/Rosettea/Hilbish/releases/latest
For a **development build**: https://nightly.link/Rosettea/Hilbish/workflows/build/master For a **development build**: https://nightly.link/Rosettea/Hilbish/workflows/build/master
## Compiling
To read the steps for compiling Hilbish, head over to the [GitHub repository.](https://github.com/Rosettea/Hilbish#build)
## Package Repositories ## Package Repositories
Methods of installing Hilbish for your Linux distro.
### Fedora (COPR) ### Fedora (COPR)
An official COPR is offered to install Hilbish easily on Fedora. An official COPR is offered to install Hilbish easily on Fedora.
Enable the repo: Enable the repo:

Binary file not shown.

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 99 KiB

View File

@ -1,8 +1,17 @@
{{ define "main" }} {{ define "main" }}
<div class="container py-3 row"> <style>
<div class="container" style="width: 240px;"> @media (min-width: 768px) {
<div class="p-3 col"> .sidenav {
<ul class="nav nav-pills mb-auto-collapse" id="navbarSupportedContent"> width: 240px;
}
}
</style>
<div class="row">
<nav class="navbar-expand-md bg-light sidenav border-end">
<div class="container">
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<nav class="navbar navbar-expand-md bg-light sidenav col" style="margin-top: -20px;">
<ul class="navbar-nav me-auto mb-2 mb-lg-0 flex-column col mt-4">
{{ $currentPage := . }} {{ $currentPage := . }}
{{ range .Site.Menus.docs.ByWeight.Reverse }} {{ range .Site.Menus.docs.ByWeight.Reverse }}
<li class="nav-item"> <li class="nav-item">
@ -23,9 +32,12 @@
{{ end }} {{ end }}
{{ end }} {{ end }}
</ul> </ul>
</nav>
</div> </div>
</div> </div>
<div class="p-3 col"> </nav>
<container class="col mt-2" style="padding-left: 20px; padding-right: 20px;">
<div> <div>
<h1>{{ .Title }}</h1> <h1>{{ .Title }}</h1>
<p><em> <p><em>
@ -47,7 +59,7 @@
Want to help improve this page? <a href="https://github.com/Rosettea/Hilbish/issues/new/choose">Create an issue.</a> Want to help improve this page? <a href="https://github.com/Rosettea/Hilbish/issues/new/choose">Create an issue.</a>
</p> </p>
</div> </div>
</div> </container>
</div> </div>
{{ end }} {{ end }}

View File

@ -1,5 +1,5 @@
{{ define "main" }} {{ define "main" }}
<main> <main class="mt-4 mb-4">
<div class="row row-cols-1 row-cols-md-1 g-4"> <div class="row row-cols-1 row-cols-md-1 g-4">
{{ range where .Site.RegularPages "Section" "in" "blog" }} {{ range where .Site.RegularPages "Section" "in" "blog" }}
<div class="col d-flex justify-content-center"> <div class="col d-flex justify-content-center">

View File

@ -1,6 +1,8 @@
{{ define "main" }} {{ define "main" }}
<main style="max-width: 80em; margin: auto;"> <div>
<main style="padding-left: 20px; padding-right: 20px; padding-top: 15px; max-width: 84em; margin: auto;">
{{.Content}} {{.Content}}
</main> </main>
</div>
{{ end }} {{ end }}

View File

@ -1,24 +1,11 @@
<footer class="footer mt-auto mt-auto py-3 bg-light row"> <footer class="footer mt-auto mt-auto py-3 bg-light row border-top">
<div class="col mb-3"> <div class="col mb-3">
</div> </div>
<div class="col mb-3"> <div class="col mb-3">
<a href="/Hilbish" class="d-flex align-items-center mb-3 link-dark text-decoration-none"> <a href="/Hilbish" class="d-flex align-items-center mb-3 link-dark text-decoration-none">
<img src="/Hilbish/hilbish-flower.png" alt="" height="48" class="d-inline-block align-text-top"> <img src="/Hilbish/hilbish-logo-and-text.png" alt="" height="48" class="d-inline-block align-text-top" style="margin-left: -20px">
</a> </a>
<p class="text-muted">
Rosettea &copy; 2022
<br>
Made with <i class="fa-solid fa-heart" style="color: #f6345b;"></i>
</p>
</div>
<div class="col mb-3"></div>
<div class="col mb-3"></div>
<div class="col mb-3"></div>
<div class="col mb-3">
<h5>Hilbish</h5>
<ul class="nav flex-column"> <ul class="nav flex-column">
<li class="nav-item mb-2"><a href="/Hilbish" class="nav-link p-0 text-muted">Home</a></li> <li class="nav-item mb-2"><a href="/Hilbish" class="nav-link p-0 text-muted">Home</a></li>
<li class="nav-item mb-2"><a href="/Hilbish/docs/faq" class="nav-link p-0 text-muted">FAQ</a></li> <li class="nav-item mb-2"><a href="/Hilbish/docs/faq" class="nav-link p-0 text-muted">FAQ</a></li>
@ -29,4 +16,16 @@
</div> </div>
<div class="col mb-3"></div> <div class="col mb-3"></div>
<div class="col mb-3"></div>
<div class="col mb-3"></div>
<div class="col mb-3">
<p class="text-muted mt-4">
Rosettea &copy; 2022-2023
<br>
Made with <i class="fa-solid fa-heart" style="color: #f6345b;"></i>
</p>
</div>
<div class="col mb-3"></div>
</footer> </footer>

View File

@ -1,9 +1,8 @@
<header> <header>
<nav class="navbar navbar-expand-md sticky-top bg-light"> <nav class="navbar navbar-expand-md sticky-top bg-light border-bottom">
<div class="container-fluid"> <div class="container-fluid">
<a class="navbar-brand" href="/Hilbish"> <a class="navbar-brand" href="/Hilbish">
<img src="/Hilbish/hilbish-flower.png" alt="" height="24" class="d-inline-block align-text-top"> <img src="/Hilbish/hilbish-logo-and-text.png" alt="" height="48">
Hilbish
</a> </a>
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation"> <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span> <span class="navbar-toggler-icon"></span>