Compare commits

...

48 Commits

Author SHA1 Message Date
sammyette 105b4dd3ce
website: remove "why hilbish" heading 2022-12-13 14:15:26 -04:00
sammyette c1d4f20b9f
website: add icons for list items, remove underline from links 2022-12-13 14:14:34 -04:00
sammyette 7b694f2919
website: remove bullet for doc navigation, make main pages bold 2022-12-13 14:02:44 -04:00
TorchedSammy 05570ec29a
website: add subpages to doc navigation and description 2022-12-12 20:50:56 -04:00
TorchedSammy dff65d6d03
website: add places to get hilbish at the try it today header 2022-12-10 17:18:24 -04:00
TorchedSammy dc4343c562
website: set (or change) max width of content to 80em specifically 2022-12-10 14:54:23 -04:00
TorchedSammy 8975ee8d2c
website(footer): reduce space in text 2022-12-10 14:53:15 -04:00
TorchedSammy 1097986fbb
website(footer): add correct links to footer 2022-12-10 14:52:46 -04:00
TorchedSammy 39a40fb08e
docs(website): add boostrap svg icons 2022-07-09 13:10:03 -04:00
TorchedSammy e1289c1da6
docs(website): use multiline string for shortcode 2022-07-09 13:05:53 -04:00
TorchedSammy 4ebf5a757c
docs(website): fix warning shortcode syntax 2022-07-09 12:57:55 -04:00
TorchedSammy 9757b1d16e
docs(website/getting-started): fix warning shortcode 2022-07-09 12:50:10 -04:00
TorchedSammy 7e85ee1ac3
docs(website): add warning shortcode and basic 404 page 2022-07-09 12:40:29 -04:00
TorchedSammy d5d8c05230
docs(website): add more content for website docs 2022-07-09 12:39:38 -04:00
TorchedSammy c293d442a9
ci: don't build website on prs 2022-06-26 19:08:18 -04:00
TorchedSammy 29d876e38e
chore: revert golua upgrade 2022-06-22 22:27:59 -04:00
TorchedSammy 94423173f3
docs(website): add content to front page 2022-06-22 22:05:10 -04:00
TorchedSammy a773c974f9
fix(website): make footer stay at bottom properly 2022-06-22 22:04:43 -04:00
TorchedSammy 9fefd7b53c
fix(website): fix footer to bottom of page 2022-06-22 17:06:44 -04:00
TorchedSammy 9a88b0c1ec
docs(website): add faq page 2022-06-22 17:04:26 -04:00
TorchedSammy 0138a30151
fix(website): use permalink for docs page instead of url 2022-06-22 16:08:37 -04:00
TorchedSammy 5a2fd055d1
fix(website): only hide x overflow 2022-06-22 15:56:55 -04:00
TorchedSammy ce13e50579
feat(website): improve doc side of website 2022-06-22 15:50:40 -04:00
TorchedSammy 2032795815
fix(website): don't center text content for main pages 2022-06-22 15:49:30 -04:00
TorchedSammy 09f5a3102e
fix(website): dont remove url on active page in navbar 2022-06-22 15:34:22 -04:00
TorchedSammy 50fbe72aa2
fix(website): page refs on navbar 2022-06-22 15:33:38 -04:00
TorchedSammy a6aa58f8fb
fix(website): block out link and highlight current page in nav bar 2022-06-22 15:18:57 -04:00
TorchedSammy 2e0eabbac7
fix(website): hide overflow 2022-06-22 13:24:41 -04:00
TorchedSammy 00c8cab8bb
fix(website): add doc layout for doc pages 2022-06-22 13:22:36 -04:00
TorchedSammy 1d7a34e0c5
fix(website): use dash to separate title and site title instead of vertical bar 2022-06-22 12:21:53 -04:00
TorchedSammy 54fc4f72ae
fix(website): clean up footer/header and make footer bg color match header 2022-06-22 11:57:32 -04:00
TorchedSammy c886a585e7
docs(website): fix typo in install steps and add docs landing 2022-06-22 10:55:08 -04:00
TorchedSammy 00d7942e1c
docs(website): fix description for home page 2022-06-21 23:31:21 -04:00
TorchedSammy 025a5b0925
docs(website): use either description or summary for embed 2022-06-21 23:27:32 -04:00
TorchedSammy a80487e287
docs: flip order of page title 2022-06-21 23:10:37 -04:00
TorchedSammy 2cb48afe44
docs(website): add title to install page 2022-06-21 23:10:21 -04:00
TorchedSammy b8ad86d341
docs(website): fix references to logo on website 2022-06-21 23:07:50 -04:00
TorchedSammy 1fb855286b
docs(website): fix headers in home page properly 2022-06-21 23:03:03 -04:00
TorchedSammy c80bede1d3
docs(website): fix base url casing 2022-06-21 22:51:08 -04:00
TorchedSammy 350162d084
docs(website): only make header light if it is on home 2022-06-21 22:50:52 -04:00
TorchedSammy 5b8820beab
docs(website): include more embed info 2022-06-21 22:50:24 -04:00
TorchedSammy 1c2e0fbe72
ci(website): combine cd and hugo in 1 run cmd 2022-06-21 22:36:51 -04:00
TorchedSammy b89b49e3de
ci: fix website build 2022-06-21 22:32:46 -04:00
TorchedSammy 635f89aa3a
docs(website): add install steps 2022-06-21 22:28:39 -04:00
TorchedSammy 3ef564a26d
ci: allow builds on website branch 2022-06-21 22:09:01 -04:00
TorchedSammy 6e2e85a830
docs: add website 2022-06-21 22:05:46 -04:00
TorchedSammy 7af90eb1f1
chore: fix go sum 2022-06-20 20:37:54 -04:00
TorchedSammy a6b52047f2
chore: update golua to popen branch 2022-06-20 20:33:09 -04:00
28 changed files with 636 additions and 0 deletions

31
.github/workflows/website.yml vendored 100644
View File

@ -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

View File

View File

@ -0,0 +1,6 @@
---
title: "{{ replace .Name "-" " " | title }}"
date: {{ .Date }}
draft: true
---

View File

@ -0,0 +1,24 @@
baseURL = 'https://rosettea.github.io/Hilbish/'
languageCode = 'en-us'
title = 'Hilbish'
theme = 'hsh'
[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

View File

@ -0,0 +1,134 @@
---
description: 'Something Unique. Hilbish is the new interactive shell for Lua fans. Extensible, scriptable, configurable: All in Lua.'
---
[//]: <>
<!-- hugo (prob goldmark) is funny; the html wont work if its the first thing -->
<div class="text-center">
<h1 class="fw-light">Something Unique.</h1>
<p>
<strong>Hilbish</strong> is the new interactive shell for Lua fans.<br>
Extensible, scriptable, configurable: All in Lua.
</p>
<a href="install" class="btn btn-primary">Install</a>
<a href="https://github.com/Rosettea/Hilbish" class="btn btn-secondary" target="_blank">Github</a>
</div>
<hr>
<div class="row row-cols-1 row-cols-md-2 g-4">
<div class="col">
<div class="card border-light mb-3">
<div class="row g-0">
<div class="col-md-4">
<a href="https://safe.kashima.moe/6njmopm47u1x.png">
<img src="https://safe.kashima.moe/6njmopm47u1x.png" class="img-fluid rounded-start">
</a>
</div>
<div class="col-md-8">
<h5 class="card-header">Simple and Easy Scripting</h5>
<div class="card-body">
<p class="card-text">
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).
</p>
</div>
</div>
</div>
</div>
</div>
<div class="col">
<div class="card border-light mb-3">
<div class="row g-0">
<div class="col-md-4">
<a href="https://safe.kashima.moe/jkndbi636lzj.png">
<img src="https://safe.kashima.moe/jkndbi636lzj.png" class="img-fluid rounded-start">
</a>
</div>
<div class="col-md-8">
<h5 class="card-header">History and Completion Menus</h5>
<div class="card-body">
<p class="card-text">
Hilbish provides the user with proper menus for completions,
history searching. Want to see your previous commands? Hit Ctrl-R.
</p>
</div>
</div>
</div>
</div>
</div>
<div class="col">
<div class="card border-light mb-3">
<div class="row g-0">
<div class="col-md-4">
<a href="https://safe.kashima.moe/6yfeooamzro4.png">
<img src="https://safe.kashima.moe/6yfeooamzro4.png" class="img-fluid rounded-start">
</a>
</div>
<div class="col-md-8">
<h5 class="card-header">Tons of Features, and More to Come</h5>
<div class="card-body">
<p class="card-text">
Hilbish offers a bunch of features to make your interactive
shell experience rich. Things like syntax highlighting and hinting
available via the Lua API.
</p>
<p class="card-small text-muted">* Command hints shown in photo are not default.</p>
</div>
</div>
</div>
</div>
</div>
<!-- uncomment, replace top when editor interface can be replaced (and replace the images) -->
<!--
<div class="col">
<div class="card border-light mb-3">
<div class="row g-0">
<div class="col-md-4">
<a href="https://safe.kashima.moe/6yfeooamzro4.png">
<img src="https://safe.kashima.moe/6yfeooamzro4.png" class="img-fluid rounded-start">
</a>
</div>
<div class="col-md-8">
<h5 class="card-header">Highly Extensible</h5>
<div class="card-body">
<p class="card-text">
Hilbish can be turned into an all new shell if wanted. One of our
main goals is that most (if not all) interfaces can be replaced.
</p>
</div>
</div>
</div>
</div>
</div>
-->
</div>
<hr>
<h1 class="fw-light">Why not just Lua?</h1>
<p>
Hilbish is your interactive shell as well as a just a Lua interpreter
and enhanced REPL.<br>
</p>
<ul class="list-group" style="max-width: 64em;">
<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>
</ul>
<hr>
<h1 class="fw-light">Try It Today!</h1>
<p>
Hilbish is known to run on the 3 major platforms (Windows, MacOS, Linux)
but likely builds on other Unixes!
<br>
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>!
<ul class="list-group" style="max-width: 64em;">
<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>
</ul>
</p>

View File

@ -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.

View File

@ -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.

View File

@ -0,0 +1,8 @@
---
title: Features
layout: doc
weight: -40
menu: docs
---

View File

@ -0,0 +1,67 @@
---
title: Runner Mode
description: Customize the interactive script/command runner.
layout: doc
menu:
docs:
parent: "Features"
---
Hilbish is *unique,* when interactive it first attempts to run input as
Lua and then tries shell script. But if you're normal, you wouldn't
really be using Hilbish anyway but you'd also not want this
(or maybe want Lua only in some cases.)
The "runner mode" of Hilbish is customizable via `hilbish.runnerMode`,
which determines how Hilbish will run user input. By default, this is
set to `hybrid` 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 `hybridRev` and for isolated modes there is `sh` and `lua`
respectively.
You can also set it to a function, which will be called everytime Hilbish
needs to run interactive input. For example, you can set this to a simple
function to compile and evaluate Fennel, and now you can run Fennel.
You can even mix it with sh to make a hybrid mode with Lua replaced by
Fennel.
An example:
```lua
hilbish.runnerMode(function(input)
local ok = pcall(fennel.eval, input)
if ok then
return input, 0, nil
end
return hilbish.runner.sh(input)
end)
```
The `hilbish.runner` interface is an alternative to using `hilbish.runnerMode`
and also provides the sh and Lua runner functions that Hilbish itself uses.
A runner function is expected to return 3 values: the input, exit code, and an error.
The input return is there incase you need to prompt for more input.
If you don't, just return the input passed to the runner function.
The exit code has to be a number, it will be 0 otherwise and the error can be
`nil` to indicate no error.
## Functions
These are the "low level" functions for the `hilbish.runner` interface.
+ setMode(mode) > The same as `hilbish.runnerMode`
+ sh(input) -> input, code, err > Runs `input` in Hilbish's sh interpreter
+ lua(input) -> input, code, err > Evals `input` as Lua code
The others here are defined in Lua and have EmmyLua documentation.
These functions should be preferred over the previous ones.
+ setCurrent(mode) > The same as `setMode`, but works with runners managed
via the functions below.
+ add(name, runner) > Adds a runner to a table of available runners. The `runner`
argument is either a function or a table with a run callback.
+ set(name, runner) > The same as `add` but requires passing a table and
overwrites if the `name`d runner already exists.
+ get(name) > runner > Gets a runner by name. It is a table with at least a
run function, to run input.
+ exec(cmd, runnerName) > Runs `cmd` with a runner. If `runnerName` isn't passed,
the current runner mode is used.

View File

@ -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 <user>`.
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.

View File

@ -0,0 +1,32 @@
---
title: Install
description: Steps on how to install Hilbish on all the OSes and distros supported.
layout: page
---
# Github Prebuilt Binaries
The easiest and best way to get Hilbish is directly from Github.
For official stable releases, check out the latest [Github release.](https://github.com/Rosettea/Hilbish/releases/latest)
# Linux Repositories
Hilbish is packaged in a *few* repositories for some distros.
## 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 install hilbish
```

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -0,0 +1,21 @@
MIT License
Copyright (c) 2022 Rosettea
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -0,0 +1,2 @@
+++
+++

View File

@ -0,0 +1,7 @@
{{ define "main"}}
<main id="main">
<div>
<h1><a href="{{ "/" | relURL }}">Go Home</a></h1>
</div>
</main>
{{ end }}

View File

@ -0,0 +1,6 @@
<h{{ (add .Level 1) }} id="{{ .Anchor | safeURL }}">
{{ .Text | safeHTML }}
</h{{ (add .Level 1) }}>
{{ if eq .Text ""}}
<hr>
{{ end }}

View File

@ -0,0 +1,4 @@
<a href="{{ .Destination | safeURL }}"{{ with .Title}} title="{{ . }}"{{ end }}{{ if eq (substr .Destination 0 4) "http" }} target="_blank" rel="noopener"{{ end }}>
{{ .Text | safeHTML }}
</a>

View File

@ -0,0 +1,21 @@
<!DOCTYPE html>
<html>
{{- partial "head.html" . -}}
<body class="d-flex flex-column min-vh-100" style="overflow-x: hidden;">
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;">
<symbol id="check-circle-fill" fill="currentColor" viewBox="0 0 16 16">
<path d="M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zm-3.97-3.03a.75.75 0 0 0-1.08.022L7.477 9.417 5.384 7.323a.75.75 0 0 0-1.06 1.06L6.97 11.03a.75.75 0 0 0 1.079-.02l3.992-4.99a.75.75 0 0 0-.01-1.05z"/>
</symbol>
<symbol id="info-fill" fill="currentColor" viewBox="0 0 16 16">
<path d="M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zm.93-9.412-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.47l-.451-.081.082-.381 2.29-.287zM8 5.5a1 1 0 1 1 0-2 1 1 0 0 1 0 2z"/>
</symbol>
<symbol id="exclamation-triangle-fill" fill="currentColor" viewBox="0 0 16 16">
<path d="M8.982 1.566a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566zM8 5c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995A.905.905 0 0 1 8 5zm.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2z"/>
</symbol>
</svg>
{{- partial "header.html" . -}}
{{- block "main" . }}{{- end }}
{{- partial "footer.html" . -}}
</body>
</html>

View File

@ -0,0 +1,39 @@
{{ define "main" }}
<div class="container py-3 row">
<div class="container" style="width: 240px;">
<div class="p-3 col">
<ul class="nav nav-pills mb-auto">
{{ $currentPage := . }}
{{ range .Site.Menus.docs.ByWeight.Reverse }}
<li class="nav-item">
<a href="{{ .URL }}" class="nav-link">
<strong>{{ .Title }}</strong>
</a>
</li>
{{ if .Children }}
<ul style="list-style: none;">
{{ range .Children }}
<li class="nav-item">
<a href="{{ .URL }}" class="nav-link">
{{ .Title }}
</a>
</li>
{{ end }}
</ul>
{{ end }}
{{ end }}
</ul>
</div>
</div>
<div class="col" style="max-width: 80em; margin: auto;">
<div>
<h1>{{ .Title }}</h1>
{{ if .Description }}
<p><i>{{ .Description }}</i></p>
{{ end}}
{{.Content}}
</div>
</div>
</div>
{{ end }}

View File

@ -0,0 +1,7 @@
{{ define "main" }}
<main>
<div class="container mt-2">
{{.Content}}
</div>
</main>
{{ end }}

View File

@ -0,0 +1,8 @@
{{ define "main" }}
<main>
<div class="container mt-2">
<h1>{{ .Title }}</h1>
{{.Content}}
</div>
</main>
{{ end }}

View File

@ -0,0 +1,6 @@
{{ define "main" }}
<main style="max-width: 80em; margin: auto;">
{{.Content}}
</main>
{{ end }}

View File

@ -0,0 +1,32 @@
<footer class="footer mt-auto mt-auto py-3 bg-light row">
<div class="col mb-3">
</div>
<div class="col mb-3">
<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">
</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">
<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="https://github.com/Rosettea/Hilbish" class="nav-link p-0 text-muted">Source</a></li>
<li class="nav-item mb-2"><a href="https://github.com/Rosettea/Hilbish/releases" class="nav-link p-0 text-muted">Releases</a></li>
<li class="nav-item mb-2"><a href="/Hilbish/docs" class="nav-link p-0 text-muted">Documentation</a></li>
</ul>
</div>
<div class="col mb-3"></div>
</footer>

View File

@ -0,0 +1,26 @@
<head>
{{ $title := print .Title " — " .Site.Title }}
{{ if .IsHome }}{{ $title = .Site.Title }}{{ end }}
<title>{{ $title }}</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1.0, user-scalable=no"/>
<meta name="theme-color" content="#ff89dd">
<meta content="/Hilbish/hilbish-flower.png" property="og:image" />
<meta property="og:site_name" content="Hilbish" />
<meta content="{{ $title }}" property="og:title" />
<meta content="{{if .Description}}{{ .Description }}{{ else }}{{ .Summary }}{{ end }}" property="og:description" />
<meta content="{{if .Description}}{{ .Description }}{{ else }}{{ .Summary }}{{ end }}" name="description" />
<meta name="revisit-after" content="2 days">
<meta name="keywords" content="Lua, Hilbish, Linux, Shell">
<meta property="og:locale" content="en_GB" />
<link rel="canonical" href="https://rosettea.github.io/Hilbish/" />
<meta property="og:url" content="https://rosettea.github.io/Hilbish/" />
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0-beta1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-0evHe/X+R7YkIZDRvuzKMRqM+OrBnVFBL6DOitfPri4tjfHxaWutUpFmBp4vmVor" crossorigin="anonymous">
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.0-beta1/dist/js/bootstrap.bundle.min.js" integrity="sha384-pprn3073KE6tl6bjs2QrFaJGz5/SUsLqktiwsUTF55Jfv3qYSDhgCecCxMW52nD2" crossorigin="anonymous"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.1/css/all.min.css" integrity="sha512-KfkfwYDsLkIlwQp6LFnl8zNdLGxu9YAA1QvwINks4PhcElQSvqcyVLLD9aMhXd13uQjoXtEKNosOWaZqXgel0g==" crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>

View File

@ -0,0 +1,25 @@
<header>
<nav class="navbar navbar-expand-md sticky-top bg-light">
<div class="container-fluid">
<a class="navbar-brand" href="/Hilbish">
<img src="/Hilbish/hilbish-flower.png" alt="" height="24" class="d-inline-block align-text-top">
Hilbish
</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">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarSupportedContent">
<ul class="navbar-nav me-auto mb-2 mb-lg-0">
{{ $currentPage := . }}
{{ range .Site.Menus.nav }}
<li class="nav-item">
<a href="{{ .URL }}" class="nav-link {{ if $currentPage.IsMenuCurrent "nav" . }}active{{ end }}">
{{ .Name }}
</a>
</li>
{{ end }}
</ul>
</div>
</div>
</nav>
</header>

View File

@ -0,0 +1,6 @@
<div class="alert alert-warning d-flex align-items-center" role="alert">
<svg class="bi flex-shrink-0 me-2" width="24" height="24" role="img" aria-label="Warning:"><use xlink:href="#exclamation-triangle-fill"/></svg>
<div>
{{ .Get 0 }}
</div>
</div>

View File

@ -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 = ""