349380ae6b
* refactor: put file history handler in line reader instance instead of global * feat: add lua history handler in go * feat: use lua to retrieve readline history * refactor: handle history in lua this also introduces a new opt: history if it is false, command history won't get added * fix: remove nature.history require * docs: add changes in changelog * fix: add comma after history opt |
||
---|---|---|
.github | ||
assets | ||
cmd/docgen | ||
docs | ||
emmyLuaDocs | ||
gallery | ||
golibs | ||
libs | ||
nature | ||
readline | ||
util | ||
.gitignore | ||
.gitmodules | ||
.hilbishrc.lua | ||
CHANGELOG.md | ||
CONTRIBUTING.md | ||
LICENSE | ||
README.md | ||
Taskfile.yaml | ||
aliases.go | ||
api.go | ||
complete.go | ||
editor.go | ||
exec.go | ||
execfile_unix.go | ||
execfile_windows.go | ||
go.mod | ||
go.sum | ||
history.go | ||
init_windows.go | ||
job.go | ||
job_unix.go | ||
job_windows.go | ||
lua.go | ||
main.go | ||
rl.go | ||
runnermode.go | ||
signal_unix.go | ||
signal_windows.go | ||
timer.go | ||
timerhandler.go | ||
vars.go | ||
vars_darwin.go | ||
vars_linux.go | ||
vars_windows.go |
README.md
Hilbish is a extensible shell (framework). It was made to be very customizable via the Lua programming language. It aims to be easy to use for the casual people but powerful for those who want to tinker more with their shell, the thing used to interface with most of the system.
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, 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!
Table of Contents
Screenshots
Installation
Prebuilt binaries
Go here for builds on the master branch.
AUR
Arch Linux users can install Hilbish from the AUR with the following command:
yay -S hilbish
Or from the latest master
commit with:
yay -S hilbish-git
Nixpkgs
Nix/NixOS users can install Hilbish from the central repository, nixpkgs, through the usual ways. If you're new to nix you should probably read up on how to do that here.
Manual Build
Prerequisites
Build
First, clone Hilbish. The recursive is required, as some Lua libraries are submodules.
git clone --recursive https://github.com/Rosettea/Hilbish
cd Hilbish
go get -d ./...
To build, run:
task
Or, if you want a stable branch, run these commands:
git checkout $(git describe --tags `git rev-list --tags --max-count=1`)
task build
After you did all that, run sudo task install
to install Hilbish globally.
Contributing
Any kind of contributions are welcome! Hilbish is very easy to contribute to. Read CONTRIBUTING.md as a guideline to doing so.
Thanks to everyone below who's contributed!
Made with contributors-img.
License
Hilbish is licensed under the MIT license.
Images and assets are licensed under CC-BY-SA 4.0