From 7b3dc951c9ce5e99b911ec4ad136aef45ce54ca6 Mon Sep 17 00:00:00 2001 From: sammyette Date: Tue, 13 Dec 2022 15:14:48 -0400 Subject: [PATCH] docs: add website (#176) --- .github/workflows/website.yml | 31 ++++ website/.hugo_build.lock | 0 website/archetypes/default.md | 6 + website/config.toml | 25 ++++ website/content/_index.md | 134 ++++++++++++++++++ website/content/docs/_index.md | 19 +++ website/content/docs/faq.md | 25 ++++ website/content/docs/features/_index.md | 11 ++ website/content/docs/features/runner-mode.md | 17 +++ website/content/docs/getting-started.md | 59 ++++++++ website/content/install.md | 38 +++++ website/static/hilbish-flower.png | Bin 0 -> 15941 bytes website/themes/hsh/LICENSE | 21 +++ website/themes/hsh/archetypes/default.md | 2 + website/themes/hsh/layouts/404.html | 7 + .../_default/_markup/render-heading.html | 6 + .../layouts/_default/_markup/render-link.html | 4 + .../themes/hsh/layouts/_default/baseof.html | 21 +++ website/themes/hsh/layouts/_default/doc.html | 53 +++++++ website/themes/hsh/layouts/_default/list.html | 0 website/themes/hsh/layouts/_default/page.html | 7 + .../themes/hsh/layouts/_default/single.html | 8 ++ website/themes/hsh/layouts/index.html | 6 + .../themes/hsh/layouts/partials/footer.html | 32 +++++ website/themes/hsh/layouts/partials/head.html | 26 ++++ .../themes/hsh/layouts/partials/header.html | 25 ++++ .../hsh/layouts/shortcodes/warning.html | 6 + website/themes/hsh/theme.toml | 21 +++ 28 files changed, 610 insertions(+) create mode 100644 .github/workflows/website.yml create mode 100644 website/.hugo_build.lock create mode 100644 website/archetypes/default.md create mode 100644 website/config.toml create mode 100644 website/content/_index.md create mode 100644 website/content/docs/_index.md create mode 100644 website/content/docs/faq.md create mode 100644 website/content/docs/features/_index.md create mode 100644 website/content/docs/features/runner-mode.md create mode 100644 website/content/docs/getting-started.md create mode 100644 website/content/install.md create mode 100644 website/static/hilbish-flower.png create mode 100644 website/themes/hsh/LICENSE create mode 100644 website/themes/hsh/archetypes/default.md create mode 100644 website/themes/hsh/layouts/404.html create mode 100644 website/themes/hsh/layouts/_default/_markup/render-heading.html create mode 100644 website/themes/hsh/layouts/_default/_markup/render-link.html create mode 100644 website/themes/hsh/layouts/_default/baseof.html create mode 100644 website/themes/hsh/layouts/_default/doc.html create mode 100644 website/themes/hsh/layouts/_default/list.html create mode 100644 website/themes/hsh/layouts/_default/page.html create mode 100644 website/themes/hsh/layouts/_default/single.html create mode 100644 website/themes/hsh/layouts/index.html create mode 100644 website/themes/hsh/layouts/partials/footer.html create mode 100644 website/themes/hsh/layouts/partials/head.html create mode 100644 website/themes/hsh/layouts/partials/header.html create mode 100644 website/themes/hsh/layouts/shortcodes/warning.html create mode 100644 website/themes/hsh/theme.toml diff --git a/.github/workflows/website.yml b/.github/workflows/website.yml new file mode 100644 index 0000000..fc06a70 --- /dev/null +++ b/.github/workflows/website.yml @@ -0,0 +1,31 @@ +name: Build website + +on: + push: + branches: + - master + - website + +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + with: + submodules: true + fetch-depth: 0 + + - name: Setup Hugo + uses: peaceiris/actions-hugo@v2 + with: + hugo-version: 'latest' + extended: true + + - name: Build + run: 'cd website && hugo --minify' + + - name: Deploy + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: ./website/public diff --git a/website/.hugo_build.lock b/website/.hugo_build.lock new file mode 100644 index 0000000..e69de29 diff --git a/website/archetypes/default.md b/website/archetypes/default.md new file mode 100644 index 0000000..00e77bd --- /dev/null +++ b/website/archetypes/default.md @@ -0,0 +1,6 @@ +--- +title: "{{ replace .Name "-" " " | title }}" +date: {{ .Date }} +draft: true +--- + diff --git a/website/config.toml b/website/config.toml new file mode 100644 index 0000000..ff6b801 --- /dev/null +++ b/website/config.toml @@ -0,0 +1,25 @@ +baseURL = 'https://rosettea.github.io/Hilbish/' +languageCode = 'en-us' +title = 'Hilbish' +theme = 'hsh' +enableGitInfo = true + +[menu] +[[menu.nav]] + identifier = 'home' + name = 'Home' + pageref = '/' + weight = 1 +[[menu.nav]] + identifier = 'install' + name = 'Install' + pageref = '/install' + weight = 2 +[[menu.nav]] + identifier = 'docs' + name = 'Docs' + pageref = '/docs' + weight = 3 + +[markup.goldmark.renderer] +unsafe = true diff --git a/website/content/_index.md b/website/content/_index.md new file mode 100644 index 0000000..2b1087b --- /dev/null +++ b/website/content/_index.md @@ -0,0 +1,134 @@ +--- +description: 'Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua.' +--- + +[//]: <> + + +
+

Something Unique.

+

+ Hilbish is the new interactive shell for Lua fans.
+ Extensible, scriptable, configurable: All in Lua. +

+ Install + Github +
+ +
+ +
+
+
+
+
+ + + +
+
+
Simple and Easy Scripting
+
+

+ Hilbish is configured and scripted in the Lua programming language. + This removes all the old, ugly things about Shell script and introduces + everything good about Lua, including other languages (Moonscript & Fennel). +

+
+
+
+
+
+
+
+
+
+ + + +
+
+
History and Completion Menus
+
+

+ Hilbish provides the user with proper menus for completions, + history searching. Want to see your previous commands? Hit Ctrl-R. +

+
+
+
+
+
+
+
+
+
+ + + +
+
+
Tons of Features, and More to Come
+
+

+ Hilbish offers a bunch of features to make your interactive + shell experience rich. Things like syntax highlighting and hinting + available via the Lua API. +

+

* Command hints shown in photo are not default.

+
+
+
+
+
+ + +
+ +
+ +

Why not just Lua?

+

+ Hilbish is your interactive shell as well as a just a Lua interpreter + and enhanced REPL.
+

+ + +
+ +

Try It Today!

+

+ Hilbish is known to run on the 3 major platforms (Windows, MacOS, Linux) + but likely builds on other Unixes! +
+ Windows doesn't work as well as it should, so if you're a Windows user, + say something! +

+

diff --git a/website/content/docs/_index.md b/website/content/docs/_index.md new file mode 100644 index 0000000..4f30ab3 --- /dev/null +++ b/website/content/docs/_index.md @@ -0,0 +1,19 @@ +--- +title: Introduction +layout: doc +weight: -1 +menu: docs +--- + +Here lies the documentation for Hilbish, the hyper extensible Lua shell. +Hilbish provides you with a few quality of life features and useful +functions to ensure you can make the shell fully yours. + +These features include: +- Completion and history search menus +- Hinting and syntax highlighting (scripted by user) + +# Installation +Steps on installing Hilbish will be at the Install page in the navigation bar +at the top. This also included getting development builds from the GitHub +repository. diff --git a/website/content/docs/faq.md b/website/content/docs/faq.md new file mode 100644 index 0000000..d5cd1a2 --- /dev/null +++ b/website/content/docs/faq.md @@ -0,0 +1,25 @@ +--- +title: Frequently Asked Questions +layout: doc +weight: -20 +menu: docs +--- + +# 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's main goal, but ....) + +# Windows Support? +It compiles for Windows (CI ensures it does), but otherwise it is not +directly supported. If you'd like to improve this situation, +checkout [the discussion](https://github.com/Rosettea/Hilbish/discussions/165). + +# Where is the API documentation? +The builtin `doc` command supplies all documentation of Hilbish provided +APIs. This will be on the website in the near future. + +# Why? +Hilbish emerged from the desire of a Lua configured shell. +It was the initial reason that it was created, but now it's more: +to be hyper extensible, simpler and more user friendly. diff --git a/website/content/docs/features/_index.md b/website/content/docs/features/_index.md new file mode 100644 index 0000000..0e14346 --- /dev/null +++ b/website/content/docs/features/_index.md @@ -0,0 +1,11 @@ +--- +title: Features +layout: doc +weight: -40 +menu: docs +--- + +Hilbish has a wide range of features to enhance the user's experience and +is always adding new ones. If there is something missing here or 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. diff --git a/website/content/docs/features/runner-mode.md b/website/content/docs/features/runner-mode.md new file mode 100644 index 0000000..87ecc8b --- /dev/null +++ b/website/content/docs/features/runner-mode.md @@ -0,0 +1,17 @@ +--- +title: Runner Mode +description: Customize the interactive script/command runner. +layout: doc +menu: + docs: + parent: "Features" +--- + +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. + +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, +instead of either like Fennel. diff --git a/website/content/docs/getting-started.md b/website/content/docs/getting-started.md new file mode 100644 index 0000000..f0fe56d --- /dev/null +++ b/website/content/docs/getting-started.md @@ -0,0 +1,59 @@ +--- +title: Getting Started +layout: doc +weight: -10 +menu: docs +--- + +To start Hilbish, open a terminal. If Hilbish has been installed and is not the +default shell, you can simply run `hilbish` to start it. This will launch +a normal interactive session. +To exit, you can either run the `exit` command or hit Ctrl+D. + +# Setting as Default +## Login shell +There are a few ways to make Hilbish your default shell. A simple way is +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 +POSIX compliant shell, which Hilbish is not. At most, there will just be a +few variables missing in your environment` >}} + +To do that, simply run `chsh -s /usr/bin/hilbish`. +Some distros (namely Fedora) might have `lchsh` instead, which is used like `lchsh `. +When prompted, you can put the path for Hilbish. + +## 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. + +## 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: + +``` +exec hilbish -S -l +``` + +This will replace the shell with Hilbish, set $SHELL to Hilbish and launch it as a login shell. + +# 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. + +Hilbish's sample configuration is usually located in `hilbish.dataDir .. '/.hilbishrc.lua'`. +You can print that path via Lua to see what it is: `print(hilbish.dataDir .. '/.hilbishrc.lua')`. +As an example, it will usually will result in `/usr/share/hilbish/.hilbishrc.lua` on Linux. + +To edit your user configuration, you can copy that file to `hilbish.userDir.config .. '/hilbish/init.lua'`, +which follows XDG on Linux and MacOS, and is located in %APPDATA% on Windows. + +As the directory is usually `~/.config` on Linux, you can run this command to copy it: +`cp /usr/share/hilbish/.hilbishrc.lua ~/.config/hilbish/init.lua` + +Now you can get to editing it. Since it's just a Lua file, having basic +knowledge of Lua would help. All of Lua's standard libraries and functions +from Lua 5.4 are available. Hilbish has some custom and modules that are +available. To see them, you can run the `doc` command. This also works as +general documentation for other things. diff --git a/website/content/install.md b/website/content/install.md new file mode 100644 index 0000000..731b8c0 --- /dev/null +++ b/website/content/install.md @@ -0,0 +1,38 @@ +--- +title: Install +description: Steps on how to install Hilbish on all the OSes and distros supported. +layout: page +--- + +## 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. + +You can download both at any time, but note that the development builds may +have breaking changes. + +For the latest **stable release**, check here: https://github.com/Rosettea/Hilbish/releases/latest +For a **development build**: https://nightly.link/Rosettea/Hilbish/workflows/build/master + +## Package Repositories +### Arch Linux (AUR) +Hilbish is on the AUR. Setup an AUR helper, and install. +Example with yay: + +``` +yay -S hilbish +``` + +Or, from master branch: +``` +yay -S hilbish-git +``` + +### Alpine Linux +Hilbish is currentlty in the testing/edge repository for Alpine. +Follow the steps [here](https://wiki.alpinelinux.org/wiki/Enable_Community_Repository) +(Using testing repositories) and install: +``` +apk add hilbish +``` diff --git a/website/static/hilbish-flower.png b/website/static/hilbish-flower.png new file mode 100644 index 0000000000000000000000000000000000000000..b4fb0f72d2cb09e1a301e0ca24cd857e7435be6c GIT binary patch literal 15941 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 +
+

Go Home

+
+ +{{ end }} diff --git a/website/themes/hsh/layouts/_default/_markup/render-heading.html b/website/themes/hsh/layouts/_default/_markup/render-heading.html new file mode 100644 index 0000000..6ea5346 --- /dev/null +++ b/website/themes/hsh/layouts/_default/_markup/render-heading.html @@ -0,0 +1,6 @@ + + {{ .Text | safeHTML }} + +{{ if eq .Text ""}} +
+{{ end }} diff --git a/website/themes/hsh/layouts/_default/_markup/render-link.html b/website/themes/hsh/layouts/_default/_markup/render-link.html new file mode 100644 index 0000000..9c2a95e --- /dev/null +++ b/website/themes/hsh/layouts/_default/_markup/render-link.html @@ -0,0 +1,4 @@ + + {{ .Text | safeHTML }} + + diff --git a/website/themes/hsh/layouts/_default/baseof.html b/website/themes/hsh/layouts/_default/baseof.html new file mode 100644 index 0000000..dad9ef8 --- /dev/null +++ b/website/themes/hsh/layouts/_default/baseof.html @@ -0,0 +1,21 @@ + + + {{- partial "head.html" . -}} + + + + + + + + + + + + + + {{- partial "header.html" . -}} + {{- block "main" . }}{{- end }} + {{- partial "footer.html" . -}} + + diff --git a/website/themes/hsh/layouts/_default/doc.html b/website/themes/hsh/layouts/_default/doc.html new file mode 100644 index 0000000..bebbf5e --- /dev/null +++ b/website/themes/hsh/layouts/_default/doc.html @@ -0,0 +1,53 @@ +{{ define "main" }} +
+
+
+ +
+
+
+
+

{{ .Title }}

+

+ {{ $date := .Date.UTC.Format "Jan 2, 2006" }} + {{ $lastmod := .Lastmod.UTC.Format "Jan 2, 2006" }} + {{ if and (ne $lastmod $date) (gt .Lastmod .Date) }} + Last updated {{ $lastmod }}
+ {{ end }} + + {{ if .Description }} + {{ .Description }}
+ {{ end}} +

+ {{.Content}} +
+ + +
+
+{{ end }} + diff --git a/website/themes/hsh/layouts/_default/list.html b/website/themes/hsh/layouts/_default/list.html new file mode 100644 index 0000000..e69de29 diff --git a/website/themes/hsh/layouts/_default/page.html b/website/themes/hsh/layouts/_default/page.html new file mode 100644 index 0000000..69aaf99 --- /dev/null +++ b/website/themes/hsh/layouts/_default/page.html @@ -0,0 +1,7 @@ +{{ define "main" }} +
+
+ {{.Content}} +
+
+{{ end }} diff --git a/website/themes/hsh/layouts/_default/single.html b/website/themes/hsh/layouts/_default/single.html new file mode 100644 index 0000000..0ac0e37 --- /dev/null +++ b/website/themes/hsh/layouts/_default/single.html @@ -0,0 +1,8 @@ +{{ define "main" }} +
+
+

{{ .Title }}

+ {{.Content}} +
+
+{{ end }} diff --git a/website/themes/hsh/layouts/index.html b/website/themes/hsh/layouts/index.html new file mode 100644 index 0000000..a9f64d2 --- /dev/null +++ b/website/themes/hsh/layouts/index.html @@ -0,0 +1,6 @@ +{{ define "main" }} +
+ {{.Content}} +
+{{ end }} + diff --git a/website/themes/hsh/layouts/partials/footer.html b/website/themes/hsh/layouts/partials/footer.html new file mode 100644 index 0000000..15aa193 --- /dev/null +++ b/website/themes/hsh/layouts/partials/footer.html @@ -0,0 +1,32 @@ + diff --git a/website/themes/hsh/layouts/partials/head.html b/website/themes/hsh/layouts/partials/head.html new file mode 100644 index 0000000..3556074 --- /dev/null +++ b/website/themes/hsh/layouts/partials/head.html @@ -0,0 +1,26 @@ + + {{ $title := print .Title " — " .Site.Title }} + {{ if .IsHome }}{{ $title = .Site.Title }}{{ end }} + {{ $title }} + + + + + + + + + + + + + + + + + + + + + + diff --git a/website/themes/hsh/layouts/partials/header.html b/website/themes/hsh/layouts/partials/header.html new file mode 100644 index 0000000..281b602 --- /dev/null +++ b/website/themes/hsh/layouts/partials/header.html @@ -0,0 +1,25 @@ +
+ +
diff --git a/website/themes/hsh/layouts/shortcodes/warning.html b/website/themes/hsh/layouts/shortcodes/warning.html new file mode 100644 index 0000000..b217b57 --- /dev/null +++ b/website/themes/hsh/layouts/shortcodes/warning.html @@ -0,0 +1,6 @@ + diff --git a/website/themes/hsh/theme.toml b/website/themes/hsh/theme.toml new file mode 100644 index 0000000..a567739 --- /dev/null +++ b/website/themes/hsh/theme.toml @@ -0,0 +1,21 @@ +# theme.toml template for a Hugo theme +# See https://github.com/gohugoio/hugoThemes#themetoml for an example + +name = "Hsh" +license = "MIT" +licenselink = "https://github.com/yourname/yourtheme/blob/master/LICENSE" +description = "" +homepage = "http://example.com/" +tags = [] +features = [] +min_version = "0.41.0" + +[author] + name = "" + homepage = "" + +# If porting an existing theme +[original] + name = "" + homepage = "" + repo = ""