mirror of https://github.com/Hilbis/Hilbish
fix: doc generation for hilbish module
parent
65e35dbab9
commit
e258f9c8ba
|
@ -78,9 +78,10 @@ func main() {
|
||||||
for l, f := range pkgs {
|
for l, f := range pkgs {
|
||||||
p := doc.New(f, "./", doc.AllDecls)
|
p := doc.New(f, "./", doc.AllDecls)
|
||||||
pieces := []docPiece{}
|
pieces := []docPiece{}
|
||||||
for _, t := range p.Funcs {
|
|
||||||
mod := l
|
mod := l
|
||||||
|
for _, t := range p.Funcs {
|
||||||
if strings.HasPrefix(t.Name, "hl") { mod = "hilbish" }
|
if strings.HasPrefix(t.Name, "hl") { mod = "hilbish" }
|
||||||
|
if !strings.HasPrefix(t.Name, "hl") && l == "main" { continue }
|
||||||
if !strings.HasPrefix(t.Name, prefix[mod]) || t.Name == "Loader" { continue }
|
if !strings.HasPrefix(t.Name, prefix[mod]) || t.Name == "Loader" { continue }
|
||||||
parts := strings.Split(strings.TrimSpace(t.Doc), "\n")
|
parts := strings.Split(strings.TrimSpace(t.Doc), "\n")
|
||||||
funcsig := parts[0]
|
funcsig := parts[0]
|
||||||
|
@ -151,7 +152,7 @@ func main() {
|
||||||
descParts := strings.Split(strings.TrimSpace(p.Doc), "\n")
|
descParts := strings.Split(strings.TrimSpace(p.Doc), "\n")
|
||||||
shortDesc := descParts[0]
|
shortDesc := descParts[0]
|
||||||
desc := descParts[1:]
|
desc := descParts[1:]
|
||||||
docs[l] = module{
|
docs[mod] = module{
|
||||||
Docs: pieces,
|
Docs: pieces,
|
||||||
ShortDescription: shortDesc,
|
ShortDescription: shortDesc,
|
||||||
Description: strings.Join(desc, "\n"),
|
Description: strings.Join(desc, "\n"),
|
||||||
|
|
|
@ -1,7 +1,14 @@
|
||||||
---
|
---
|
||||||
name: Module hilbish
|
name: Module hilbish
|
||||||
|
description: Here is the core api for the hilbi shell itself
|
||||||
|
layout: apidoc
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## Introduction
|
||||||
|
Basically, stuff about the shell itself and other functions
|
||||||
|
go here.
|
||||||
|
|
||||||
|
## Functions
|
||||||
### alias(cmd, orig)
|
### alias(cmd, orig)
|
||||||
Sets an alias of `cmd` to `orig`
|
Sets an alias of `cmd` to `orig`
|
||||||
|
|
||||||
|
@ -82,3 +89,113 @@ Returns a `timer` object (see `doc timers`).
|
||||||
### which(name)
|
### which(name)
|
||||||
Checks if `name` is a valid command
|
Checks if `name` is a valid command
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
###
|
||||||
|
|
||||||
|
|
|
@ -2,82 +2,108 @@
|
||||||
|
|
||||||
local hilbish = {}
|
local hilbish = {}
|
||||||
|
|
||||||
---
|
--- Sets an alias of `cmd` to `orig`
|
||||||
--- @param cmd string
|
--- @param cmd string
|
||||||
--- @param orig string
|
--- @param orig string
|
||||||
function hilbish.alias(cmd, orig) end
|
function hilbish.alias(cmd, orig) end
|
||||||
|
|
||||||
---
|
--- Appends `dir` to $PATH
|
||||||
--- @param dir string|table
|
--- @param dir string|table
|
||||||
function hilbish.appendPath(dir) end
|
function hilbish.appendPath(dir) end
|
||||||
|
|
||||||
---
|
--- Registers a completion handler for `scope`.
|
||||||
|
--- A `scope` is currently only expected to be `command.<cmd>`,
|
||||||
|
--- replacing <cmd> with the name of the command (for example `command.git`).
|
||||||
|
--- `cb` must be a function that returns a table of "completion groups."
|
||||||
|
--- Check `doc completions` for more information.
|
||||||
--- @param scope string
|
--- @param scope string
|
||||||
--- @param cb function
|
--- @param cb function
|
||||||
function hilbish.complete(scope, cb) end
|
function hilbish.complete(scope, cb) end
|
||||||
|
|
||||||
---
|
--- Returns the current directory of the shell
|
||||||
function hilbish.cwd() end
|
function hilbish.cwd() end
|
||||||
|
|
||||||
---
|
--- Replaces running hilbish with `cmd`
|
||||||
--- @param cmd string
|
--- @param cmd string
|
||||||
function hilbish.exec(cmd) end
|
function hilbish.exec(cmd) end
|
||||||
|
|
||||||
---
|
--- Puts `fn` in a goroutine
|
||||||
--- @param fn function
|
--- @param fn function
|
||||||
function hilbish.goro(fn) end
|
function hilbish.goro(fn) end
|
||||||
|
|
||||||
---
|
--- Line highlighter handler. This is mainly for syntax highlighting, but in
|
||||||
|
--- reality could set the input of the prompt to *display* anything. The
|
||||||
|
--- callback is passed the current line and is expected to return a line that
|
||||||
|
--- will be used as the input display.
|
||||||
--- @param line string
|
--- @param line string
|
||||||
function hilbish.highlighter(line) end
|
function hilbish.highlighter(line) end
|
||||||
|
|
||||||
---
|
--- The command line hint handler. It gets called on every key insert to
|
||||||
|
--- determine what text to use as an inline hint. It is passed the current
|
||||||
|
--- line and cursor position. It is expected to return a string which is used
|
||||||
|
--- as the text for the hint. This is by default a shim. To set hints,
|
||||||
|
--- override this function with your custom handler.
|
||||||
--- @param line string
|
--- @param line string
|
||||||
--- @param pos int
|
--- @param pos int
|
||||||
function hilbish.hinter(line, pos) end
|
function hilbish.hinter(line, pos) end
|
||||||
|
|
||||||
---
|
--- Sets the input mode for Hilbish's line reader. Accepts either emacs or vim
|
||||||
--- @param mode string
|
--- @param mode string
|
||||||
function hilbish.inputMode(mode) end
|
function hilbish.inputMode(mode) end
|
||||||
|
|
||||||
---
|
--- Runs the `cb` function every `time` milliseconds.
|
||||||
|
--- Returns a `timer` object (see `doc timers`).
|
||||||
--- @param cb function
|
--- @param cb function
|
||||||
--- @param time number
|
--- @param time number
|
||||||
--- @return table
|
--- @return table
|
||||||
function hilbish.interval(cb, time) end
|
function hilbish.interval(cb, time) end
|
||||||
|
|
||||||
---
|
--- Changes the continued line prompt to `str`
|
||||||
--- @param str string
|
--- @param str string
|
||||||
function hilbish.multiprompt(str) end
|
function hilbish.multiprompt(str) end
|
||||||
|
|
||||||
---
|
--- Prepends `dir` to $PATH
|
||||||
--- @param dir string
|
--- @param dir string
|
||||||
function hilbish.prependPath(dir) end
|
function hilbish.prependPath(dir) end
|
||||||
|
|
||||||
---
|
--- Changes the shell prompt to `str`
|
||||||
|
--- There are a few verbs that can be used in the prompt text.
|
||||||
|
--- These will be formatted and replaced with the appropriate values.
|
||||||
|
--- `%d` - Current working directory
|
||||||
|
--- `%u` - Name of current user
|
||||||
|
--- `%h` - Hostname of device
|
||||||
--- @param str string
|
--- @param str string
|
||||||
--- @param typ string Type of prompt, being left or right. Left by default.
|
--- @param typ string Type of prompt, being left or right. Left by default.
|
||||||
function hilbish.prompt(str, typ) end
|
function hilbish.prompt(str, typ) end
|
||||||
|
|
||||||
---
|
--- Read input from the user, using Hilbish's line editor/input reader.
|
||||||
|
--- This is a separate instance from the one Hilbish actually uses.
|
||||||
|
--- Returns `input`, will be nil if ctrl + d is pressed, or an error occurs (which shouldn't happen)
|
||||||
--- @param prompt string
|
--- @param prompt string
|
||||||
function hilbish.read(prompt) end
|
function hilbish.read(prompt) end
|
||||||
|
|
||||||
---
|
--- Runs `cmd` in Hilbish's sh interpreter.
|
||||||
|
--- If returnOut is true, the outputs of `cmd` will be returned as the 2nd and
|
||||||
|
--- 3rd values instead of being outputted to the terminal.
|
||||||
--- @param cmd string
|
--- @param cmd string
|
||||||
function hilbish.run(cmd) end
|
function hilbish.run(cmd) end
|
||||||
|
|
||||||
---
|
--- Sets the execution/runner mode for interactive Hilbish. This determines whether
|
||||||
|
--- Hilbish wll try to run input as Lua and/or sh or only do one of either.
|
||||||
|
--- Accepted values for mode are hybrid (the default), hybridRev (sh first then Lua),
|
||||||
|
--- sh, and lua. It also accepts a function, to which if it is passed one
|
||||||
|
--- will call it to execute user input instead.
|
||||||
--- @param mode string|function
|
--- @param mode string|function
|
||||||
function hilbish.runnerMode(mode) end
|
function hilbish.runnerMode(mode) end
|
||||||
|
|
||||||
---
|
--- Runs the `cb` function after `time` in milliseconds
|
||||||
|
--- Returns a `timer` object (see `doc timers`).
|
||||||
--- @param cb function
|
--- @param cb function
|
||||||
--- @param time number
|
--- @param time number
|
||||||
--- @return table
|
--- @return table
|
||||||
function hilbish.timeout(cb, time) end
|
function hilbish.timeout(cb, time) end
|
||||||
|
|
||||||
---
|
--- Checks if `name` is a valid command
|
||||||
--- @param binName string
|
--- @param binName string
|
||||||
function hilbish.which(binName) end
|
function hilbish.which(binName) end
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue