feat: adds some friendly tips (#315)

Co-authored-by: Nathan Helmig <nathanhelmig@pop-os.attlocal.net>
pull/314/merge
Nathan J Helmig 2024-07-21 18:02:46 -05:00 committed by GitHub
parent 8a1614ab59
commit 35a8d0eaa4
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 41 additions and 1 deletions

View File

@ -1,5 +1,10 @@
# 🎀 Changelog
## Unreleased
### Added
- `nature.opts.tips` was added to randomly generate tips on start up.
Follows the pattern of motd and greeting. Displays after greeting on start up.
## [2.3.0] - 2024-07-20
### Added
- `commander.registry` function to get all registered commanders.

View File

@ -14,7 +14,8 @@ The nice lil shell for {blue}Lua{reset} fanatics!
motd = true,
fuzzy = false,
notifyJobFinish = true,
crimmas = true
crimmas = true,
tips = true
}
for optsName, default in pairs(defaultOpts) do

View File

@ -0,0 +1,34 @@
local bait = require 'bait'
local lunacolors = require 'lunacolors'
PREAMBLE = [[
Getting Started: https://rosettea.github.io/Hilbish/docs/getting-started/
{yellow}🛈 These tips can be disabled with hilbish.opts.tips = false{reset}
]]
hilbish.tips = {
"Join the discord and say hi! -> https://discord.gg/3PDdcQz",
"{green}hilbish.alias{reset} -> Sets an alias to another cmd",
"{green}hilbish.appendPath{reset} -> Appends the provided dir to the command path ($PATH)",
"{green}hilbish.completions{reset} -> Are use to control suggestions when tab completing.",
"{green}hilbish.message{reset} -> Simple notification system which can be used by other plugins and parts of the shell to notify the user of various actions.",
[[
{green}hilbish.opts{reset} -> Simple toggle or value options a user can set.
- EX: hilbish.opts.greeting = false, will cause the greeting message on start-up to not display.
]],
[[
{green}hilbish.runner{reset} -> The runner interface contains functions that allow the user to change how Hilbish interprets interactive input.
- The default runners can run shell script and Lua code.
]],
[[
Add Lua-written commands with the commander module!
Checkout the docs here -> https://rosettea.github.io/Hilbish/docs/api/commander/
]]
}
bait.catch('hilbish.init', function()
if hilbish.interactive and hilbish.opts.tip then
local idx = math.random(1, #hilbish.tips)
print(lunacolors.format(PREAMBLE .. "\nTip: " .. hilbish.tips[idx]))
end
end)