Interactive help

From Rosetta Code
Revision as of 12:25, 8 February 2019 by rosettacode>Btiffin
Interactive help is a draft programming task. It is not yet considered ready to be promoted as a complete task, for reasons that should be found in its talk page.

Demonstrate any interactive (or command line) help offered by the language implementation.

This can be for exploring features or syntax, or perhaps a simple message on where to find more information.

Examples

Jsish

prompt$ jsish
Jsish interactive: see 'help [cmd]'
# help
Jsish interactive executes commands, uses tab for completions, and has help for the following builtin commands:

     Array Boolean CData CEnum CStruct CType Channel Debugger Event File
     Function Info Interp JSON Math Number Object RegExp Signal Socket
     Sqlite String System Util Vfs WebSocket Zvfs assert clearInterval
     console decodeURI encodeURI exec exit format isFinite isMain isNaN
     load log noOp parseFloat parseInt parseOpts printf provide puts quote
     require runModule setInterval setTimeout sleep source strftime strptime
     unload update 

Help can also take options.  For example to display in a web browser try:

    help -web true WebSocket

Module help can also be displayed (non-web), as in 'help Jsi_Websrv`.
Builtin modules include:

     Jsi_Archive Jsi_CData Jsi_Csspp Jsi_Debug Jsi_DebugUI Jsi_GenDeep
     Jsi_Help Jsi_Htmlpp Jsi_Jspp Jsi_Markdeep Jsi_Module Jsi_Safe Jsi_SqliteUI
     Jsi_UnitTest Jsi_Vfs Jsi_Websrv Jsi_Wget
# help File
File.method(...)
Commands for accessing the filesystem
Methods: atime chdir chmod copy dirname executable exists extension glob isdir isfile isrelative join link lstat mkdir mknod mtime owned pwd read readable readlink realpath remove rename rootname size stat tail tempfile truncate type writable write

[File.glob options]
Option          Type    Description [Flags]
----------------------------------------------------------------------------
dir             STRING  The start directory: this path will not be prepended to results.
maxDepth        INT     Maximum directory depth to recurse into.
maxDiscard      INT     Maximum number of items to discard before giving up.
dirFilter       FUNC    Filter function for directories, returning false to discard. @function(dir:string)
filter          FUNC    Filter function to call with each file, returning false to discard. @function(file:string)
limit           INT     The maximum number of results to return/count.
noTypes         STRKEY  Filter files to exclude these "types".
prefix          STRKEY  String prefix to add to each file in list.
recurse         BOOL    Recurse into sub-directories.
retCount        BOOL    Return only the count of matches.
tails           BOOL    Returned only tail of path.
types           STRKEY  Filter files to include type: one or more of chars 'fdlpsbc' for file, directory, link, etc.