Go to file
sammyette f661db158b
chore: add missing entries to changelog
2022-12-20 00:27:47 -04:00
.github refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
assets docs: slight refactor of the readme 2021-10-12 16:01:17 -04:00
cmd/docgen refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
docs refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
emmyLuaDocs refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
gallery docs: update image for readme gallery 2022-03-22 21:19:36 -04:00
golibs refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
libs chore: update lunacolors 2022-12-05 14:16:43 -04:00
nature refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
readline fix(readline): dont do anything if length of input rune slice is 0 2022-12-10 17:27:42 -04:00
util refactor: move out home abbreviating code to a util function 2022-05-17 21:37:42 -04:00
website chore: add rpm spec file (package for copr/fedora) (#220) 2022-12-19 23:19:48 -04:00
.editorconfig chore: add .editorconfig file (#217) 2022-12-01 09:29:27 -04:00
.gitignore refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
.gitmodules chore: update lunacolors 2022-03-13 16:37:33 -04:00
.hilbishrc.lua refactor!: move hilbish.greeting to an opt (closes #184) 2022-07-09 17:15:13 -04:00
CHANGELOG.md chore: add missing entries to changelog 2022-12-20 00:27:47 -04:00
CONTRIBUTING.md docs: update contributing info to include writing changes to changelog 2022-05-30 18:16:36 -04:00
LICENSE chore: update license 2022-02-12 16:46:41 -04:00
README.md docs: change task link and notice 2022-12-12 21:03:36 -04:00
Taskfile.yaml chore: add rpm spec file (package for copr/fedora) (#220) 2022-12-19 23:19:48 -04:00
aliases.go refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
api.go refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
complete.go refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
editor.go refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
exec.go feat: print command errors via hook 2022-12-13 12:57:27 -04:00
execfile_unix.go feat: job enhancements (#153) 2022-05-21 20:53:36 -04:00
execfile_windows.go feat: job enhancements (#153) 2022-05-21 20:53:36 -04:00
go.mod chore: update golua for popen (#172) 2022-12-13 15:37:01 -04:00
go.sum chore: update golua for popen (#172) 2022-12-13 15:37:01 -04:00
hilbish-git.spec chore: add rpm spec file (package for copr/fedora) (#220) 2022-12-19 23:19:48 -04:00
history.go perf: preallocate history slice 2022-11-30 13:20:00 -04:00
init_windows.go fix: set vt in on stdin 2022-07-13 15:11:06 -04:00
job.go refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
job_unix.go feat: implement job foregrounding/backgrounding (#155) 2022-05-24 19:15:02 -04:00
job_windows.go feat: implement job foregrounding/backgrounding (#155) 2022-05-24 19:15:02 -04:00
lua.go feat(bait): add error hook and hooks function (closes #205) 2022-10-11 17:41:13 -04:00
main.go feat: add hilbish.cancel hook (closes #213) 2022-11-25 19:21:36 -04:00
os.go refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
rl.go refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
rpkg.conf chore: add rpm spec file (package for copr/fedora) (#220) 2022-12-19 23:19:48 -04:00
rpkg.macros chore: add rpm spec file (package for copr/fedora) (#220) 2022-12-19 23:19:48 -04:00
runnermode.go refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
signal_unix.go refactor: use custom event emitter (#193) 2022-08-17 18:01:32 -04:00
signal_windows.go refactor: use custom event emitter (#193) 2022-08-17 18:01:32 -04:00
timer.go refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
timerhandler.go refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
userdir.go refactor!: rework docs and doc command (#218) 2022-12-15 00:00:54 -04:00
vars.go chore: prepare for v2.0 2022-12-19 23:46:45 -04:00
vars_darwin.go refactor: (re)organize and change prelude path and structure 2022-04-23 00:03:50 -04:00
vars_linux.go build!: set datadir of hilbish and change default prefix to /usr/local (#221) 2022-12-12 21:01:44 -04:00
vars_windows.go fix: add dot to sample config path on windows 2022-08-16 12:30:39 -04:00

README.md



🌺 The flower shell. A comfy and nice little shell for Lua fans!

GitHub commit activity GitHub commits since latest release (by date) GitHub contributors
help wanted GitHub license Discord

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

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 may be lacking.

Prebuilt binaries

Go here for builds on the master branch.

AUR

AUR maintainer
Arch Linux users can install Hilbish from the AUR with the following command:

yay -S hilbish

AUR maintainer
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

  • Go 1.17+
  • Task (Go on the hyperlink here to see Task's install method for your OS.)

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