From 65624cfcba56f7f558dd6dd00ebaa5c46325cb1c Mon Sep 17 00:00:00 2001 From: Pragmatic Software Date: Thu, 23 Jul 2020 12:37:34 -0700 Subject: [PATCH] Update Plang documentation --- doc/Plugins/Plang.md | 39 ++++++++++++++++++--------------------- 1 file changed, 18 insertions(+), 21 deletions(-) diff --git a/doc/Plugins/Plang.md b/doc/Plugins/Plang.md index 32c30dde..3727803f 100644 --- a/doc/Plugins/Plang.md +++ b/doc/Plugins/Plang.md @@ -2,22 +2,21 @@ * [About](#about) - * [The Plang Language](#the-plang-language) - * [PBot `plang` and `plangrepl` commands](#pbot-plang-and-plangrepl-commands) - * [`plang`](#plang-1) - * [`plangrepl`](#plangrepl) - * [PBot built-in Plang functions](#pbot-built-in-plang-functions) - * [factget](#factget) - * [factset](#factset) - * [factappend](#factappend) - * [userget](#userget) +* [The Plang Language](#the-plang-language) +* [`plang` command](#plang-command) +* [`plangrepl` command](#plangrepl-command) +* [PBot built-in Plang functions](#pbot-built-in-plang-functions) + * [factget](#factget) + * [factset](#factset) + * [factappend](#factappend) + * [userget](#userget) ## About This Plang plugin provides a scripting interface to PBot. It has access to PBot internal APIs and state. -### The Plang Language +## The Plang Language The scripting language is [Plang](https://github.com/pragma-/Plang). It was written specifically for PBot, but is powerful enough to be used as a general-purpose scripting language embedded into any Perl application. @@ -25,21 +24,20 @@ scripting language embedded into any Perl application. This document describes PBot's Plang plugin. To learn how to use the Plang scripting language, see the [Plang documentation](https://github.com/pragma-/Plang/blob/master/README.md). -### PBot `plang` and `plangrepl` commands -#### `plang` +## `plang` command Use the `plang` command to run a Plang script. Usage: `plang ` -#### `plangrepl` +## `plangrepl` command The `plangrepl` command is identical to the `plang` command, except the environment is preserved in-between commands and the types of values is output along with the value. -### PBot built-in Plang functions -[Plang](https://github.com/pragma-/Plang) lets you add custom built-in functions. We -have added several for PBot. They are described here. +## PBot built-in Plang functions +[Plang](https://github.com/pragma-/Plang) lets you add custom built-in functions. +Several have been added for PBot; they are described here. -#### factget +### factget factget(channel, keyword, meta = "action") Use the `factget` function to retrieve metadata from factoids. @@ -49,7 +47,7 @@ parameter can be omitted and will default to `"action"`. The `factget` function returns a `String` containing the value of the factoid metadata key. -#### factset +### factset factset(channel, keyword, text) Use the `factset` function to set the `action` metadata value for factoids. @@ -58,7 +56,7 @@ The `factset` function takes three parameters: `channel`, `keyword` and `text`. The `factset` function returns a `String` containing the value of `text`. -#### factappend +### factappend factappend(channel, keyword, text) Use the `factappend` function to append text to the `action` metadata for factoids. @@ -68,7 +66,7 @@ The `factappend` function takes three parameters: `channel`, `keyword` and `text The `factappend` function returns a `String` containing the value of factoid's `action` metadata with `text` appended. -#### userget +### userget userget(name) Use the `userget` function to retrieve user metadata. @@ -87,4 +85,3 @@ Examples: !plang userget('pragma-')['botowner'] 1 -