gloo 1.0.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (85) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -1
  3. data/.ruby-gemset +1 -0
  4. data/.ruby-version +1 -0
  5. data/gloo.gemspec +5 -2
  6. data/lib/VERSION +1 -1
  7. data/lib/gloo/verbs/help.rb +82 -0
  8. data/lib/gloo/verbs/version.rb +37 -0
  9. metadata +10 -82
  10. data/Gemfile.lock +0 -175
  11. data/lib/gloo/help/app/application.txt +0 -22
  12. data/lib/gloo/help/app/configuration.txt +0 -7
  13. data/lib/gloo/help/app/default_help.txt +0 -14
  14. data/lib/gloo/help/app/logging.txt +0 -16
  15. data/lib/gloo/help/core/color.txt +0 -31
  16. data/lib/gloo/help/core/error.txt +0 -33
  17. data/lib/gloo/help/core/events.txt +0 -21
  18. data/lib/gloo/help/core/gloo_system.txt +0 -57
  19. data/lib/gloo/help/core/here.txt +0 -30
  20. data/lib/gloo/help/core/it.txt +0 -23
  21. data/lib/gloo/help/core/ops.txt +0 -16
  22. data/lib/gloo/help/core/pathname.txt +0 -29
  23. data/lib/gloo/help/objs/basic/alias.txt +0 -36
  24. data/lib/gloo/help/objs/basic/boolean.txt +0 -28
  25. data/lib/gloo/help/objs/basic/container.txt +0 -33
  26. data/lib/gloo/help/objs/basic/decimal.txt +0 -28
  27. data/lib/gloo/help/objs/basic/integer.txt +0 -27
  28. data/lib/gloo/help/objs/basic/script.txt +0 -29
  29. data/lib/gloo/help/objs/basic/string.txt +0 -28
  30. data/lib/gloo/help/objs/basic/text.txt +0 -27
  31. data/lib/gloo/help/objs/basic/untyped.txt +0 -22
  32. data/lib/gloo/help/objs/cli/banner.txt +0 -49
  33. data/lib/gloo/help/objs/cli/bar.txt +0 -37
  34. data/lib/gloo/help/objs/cli/colorize.txt +0 -33
  35. data/lib/gloo/help/objs/cli/confirm.txt +0 -26
  36. data/lib/gloo/help/objs/cli/menu.txt +0 -44
  37. data/lib/gloo/help/objs/cli/menu_item.txt +0 -26
  38. data/lib/gloo/help/objs/cli/pastel.txt +0 -43
  39. data/lib/gloo/help/objs/cli/prompt.txt +0 -27
  40. data/lib/gloo/help/objs/cli/select.txt +0 -34
  41. data/lib/gloo/help/objs/ctrl/each.txt +0 -48
  42. data/lib/gloo/help/objs/ctrl/repeat.txt +0 -38
  43. data/lib/gloo/help/objs/data/markdown.txt +0 -25
  44. data/lib/gloo/help/objs/data/mysql.txt +0 -40
  45. data/lib/gloo/help/objs/data/query.txt +0 -37
  46. data/lib/gloo/help/objs/data/sqlite.txt +0 -26
  47. data/lib/gloo/help/objs/data/table.txt +0 -46
  48. data/lib/gloo/help/objs/dev/git_repo.txt +0 -36
  49. data/lib/gloo/help/objs/dev/stats.txt +0 -36
  50. data/lib/gloo/help/objs/dt/date.txt +0 -23
  51. data/lib/gloo/help/objs/dt/datetime.txt +0 -24
  52. data/lib/gloo/help/objs/dt/time.txt +0 -23
  53. data/lib/gloo/help/objs/ror/erb.txt +0 -37
  54. data/lib/gloo/help/objs/ror/eval.txt +0 -24
  55. data/lib/gloo/help/objs/snd/play.txt +0 -23
  56. data/lib/gloo/help/objs/snd/say.txt +0 -28
  57. data/lib/gloo/help/objs/system/file.txt +0 -48
  58. data/lib/gloo/help/objs/system/ssh_exec.txt +0 -30
  59. data/lib/gloo/help/objs/system/system.txt +0 -32
  60. data/lib/gloo/help/objs/web/http_get.txt +0 -35
  61. data/lib/gloo/help/objs/web/http_post.txt +0 -34
  62. data/lib/gloo/help/objs/web/json.txt +0 -34
  63. data/lib/gloo/help/objs/web/slack.txt +0 -33
  64. data/lib/gloo/help/objs/web/teams.txt +0 -30
  65. data/lib/gloo/help/objs/web/uri.txt +0 -38
  66. data/lib/gloo/help/verbs/alert.txt +0 -33
  67. data/lib/gloo/help/verbs/beep.txt +0 -25
  68. data/lib/gloo/help/verbs/cls.txt +0 -24
  69. data/lib/gloo/help/verbs/context.txt +0 -43
  70. data/lib/gloo/help/verbs/create.txt +0 -33
  71. data/lib/gloo/help/verbs/execute.txt +0 -27
  72. data/lib/gloo/help/verbs/help.txt +0 -34
  73. data/lib/gloo/help/verbs/if.txt +0 -37
  74. data/lib/gloo/help/verbs/list.txt +0 -34
  75. data/lib/gloo/help/verbs/load.txt +0 -38
  76. data/lib/gloo/help/verbs/move.txt +0 -42
  77. data/lib/gloo/help/verbs/put.txt +0 -38
  78. data/lib/gloo/help/verbs/quit.txt +0 -25
  79. data/lib/gloo/help/verbs/run.txt +0 -41
  80. data/lib/gloo/help/verbs/save.txt +0 -26
  81. data/lib/gloo/help/verbs/show.txt +0 -30
  82. data/lib/gloo/help/verbs/tell.txt +0 -34
  83. data/lib/gloo/help/verbs/unless.txt +0 -38
  84. data/lib/gloo/help/verbs/version.txt +0 -32
  85. data/lib/gloo/help/verbs/wait.txt +0 -29
@@ -1,32 +0,0 @@
1
- SYSTEM OBJECT TYPE
2
- NAME: system
3
- SHORTCUT: sys
4
-
5
- DESCRIPTION
6
- Execute a system command.
7
-
8
- CHILDREN
9
- command - string - 'date'
10
- The command that will be sent to the system.
11
- get_output - boolean - true
12
- Should executing the command get the output and put it
13
- in the result object?
14
- result - string
15
- The result of running the command.
16
- The result will only be set if the 'get_output' child
17
- is set to true.
18
-
19
- MESSAGES
20
- run - Run the system level command.
21
- Set the result value to the output of the command if the
22
- 'get_output' child is marked as true.
23
-
24
- EXAMPLE
25
-
26
- date [system] :
27
- command [string] : date
28
- get_output [bool] : true
29
- result [string] :
30
-
31
- SEE ALSO
32
- execute, eval, erb
@@ -1,35 +0,0 @@
1
- HTTP_GET OBJECT TYPE
2
- NAME: http_get
3
- SHORTCUT: get
4
-
5
- DESCRIPTION
6
- Perform an HTTP Get.
7
-
8
- CHILDREN
9
- uri - string - 'https://web.site/'
10
- The URI for the HTTP Get request.
11
- params - container
12
- Collection of parameters for the HTTP Get.
13
- result - string
14
- The result of the request. Whatever was returned from
15
- the HTTP Get call.
16
- skip_ssl_verify - boolean (optional)
17
- Skip the SSL verification as part of the request.
18
-
19
- MESSAGES
20
- run - Run the HTTP Get and update the result.
21
-
22
- EXAMPLE
23
-
24
- g [http_get] :
25
- uri [string] : http://api.sunrise-sunset.org/json
26
- params [container] :
27
- lat [string] : 36.7201600
28
- lng [string] : -4.4203400
29
- date [string] : today
30
- result [string] :
31
-
32
- > run g
33
-
34
- SEE ALSO
35
- http_post, json, uri
@@ -1,34 +0,0 @@
1
- HTTP_POST OBJECT TYPE
2
- NAME: http_post
3
- SHORTCUT: post
4
-
5
- DESCRIPTION
6
- Perform an HTTP Post.
7
-
8
- CHILDREN
9
- uri - string - 'https://web.site/'
10
- The URI for the HTTP Post.
11
- body - container
12
- Collection of parameters for the HTTP Post.
13
- result - string - Optional parameter
14
- The result of the request. Whatever was returned in the body
15
- of the HTTP POST.
16
- skip_ssl_verify - boolean (optional)
17
- Skip the SSL verification as part of the request.
18
-
19
- MESSAGES
20
- run - Run the HTTP Post sending the body data to the
21
- endpoint specified in the URI.
22
-
23
- EXAMPLE
24
-
25
- post [post] :
26
- txt [str] : Message from gloo!
27
- uri [str] : https://my.service.com/my-long-token
28
- body [can] :
29
- text [alias] : post.txt
30
- username [str] : me
31
- on_load [script] : run post
32
-
33
- SEE ALSO
34
- http_get, json, uri
@@ -1,34 +0,0 @@
1
- JSON OBJECT TYPE
2
- NAME: json
3
- SHORTCUT: json
4
-
5
- DESCRIPTION
6
- JSON data in a text string.
7
-
8
- CHILDREN
9
- None
10
-
11
- MESSAGES
12
- get - get a value from the JSON data
13
- Example: tell myjson to get ("title")
14
- The additional parameter is the path to the value.
15
- parse - parse the JSON data and put values in the
16
- object specified by the additional parameter
17
- Example: tell myjson to parse ("path.to.objects")
18
- pretty - make the JSON format pretty
19
-
20
- EXAMPLE
21
-
22
- json [can] :
23
- on_load [script] :
24
- list json.objs
25
- show json.j
26
- tell json.j to parse (json.objs)
27
- list json.objs
28
- j [json] : {"title":"Brute Force","quotation":"When in doubt, use brute force.","author":"Eric Steven Raymond","source":"The Art of Unix Programming"}
29
- objs [can] :
30
- title [string] :
31
- quotation [string] :
32
-
33
- SEE ALSO
34
- http_get, http_post, uri
@@ -1,33 +0,0 @@
1
- SLACK OBJECT TYPE
2
- NAME: slack
3
- SHORTCUT: slack
4
-
5
- DESCRIPTION
6
- Send message to channel in Slack.
7
-
8
- CHILDREN
9
- uri - string - 'https://hooks.slack.com/services/...'
10
- The URI with access to the Slack channel.
11
- message - string - 'textual message'
12
- Message to send to Slack.
13
- username - string - 'Slack Bot'
14
- Attribute the message to this user.
15
- channel - string - 'general'
16
- The name of the channel for the post.
17
- icon_emoji - string - ':ghost:'
18
- The emoji to use for the attribution.
19
-
20
- MESSAGES
21
- run - Post the message to Slack.
22
-
23
- EXAMPLE
24
-
25
- slack [slack] :
26
- uri [string] : https://hooks.slack.com/services/MYTOKEN
27
- message [string] : Slackbot is here to help!
28
- username [string] : SlackBot
29
- channel [string] : general
30
- icon_emoji [string] : :ghost:
31
-
32
- SEE ALSO
33
- http_get, http_post, json, uri
@@ -1,30 +0,0 @@
1
- TEAMS OBJECT TYPE
2
- NAME: teams
3
- SHORTCUT: team
4
-
5
- DESCRIPTION
6
- Send message to channel in Teams.
7
-
8
- CHILDREN
9
- uri - string - 'https://outlook.office.com/webhook/...'
10
- The URI with access to the Teams channel.
11
- title - string
12
- Message title; header.
13
- color - string - '008000'
14
- Color theme for the message.
15
- message - string
16
- The message to post in Teams.
17
-
18
- MESSAGES
19
- run - Post the message to Teams.
20
-
21
- EXAMPLE
22
-
23
- team [teams] :
24
- uri [string] : https://outlook.office.com/webhook/MYTOKEN/IncomingWebhook/MYTOKEN
25
- title [string] : Success
26
- color [string] : 008000
27
- message [string] : This worked!
28
-
29
- SEE ALSO
30
- http_get, http_post, json, uri
@@ -1,38 +0,0 @@
1
- URI OBJECT TYPE
2
- NAME: uri
3
- SHORTCUT: url
4
-
5
- DESCRIPTION
6
- A URI or URL.
7
-
8
- CHILDREN
9
- None
10
-
11
- MESSAGES
12
- open - open the URL in the default browser
13
- get_scheme - get the URI scheme; example: http
14
- get_host - get the URI host; example: google.com
15
- get_path - get the URI resource path; example: /post
16
- get_query - get the URI query parameters; example: id=121
17
- get_fragment - get the URI fragment
18
- get_cert_expires - get the web site's certificate expiration date
19
-
20
- EXAMPLE
21
-
22
- url [can] :
23
- on_load [script] :
24
- tell url.u to get_scheme
25
- show "scheme: " + it
26
-
27
- tell url.u to get_host
28
- show "host: " + it
29
-
30
- tell url.u to get_path
31
- show "path: " + it
32
-
33
- show "opening URL: " + url.u
34
- tell url.u to open
35
- u [uri] : https://my.url/path/1234
36
-
37
- SEE ALSO
38
- http_get, http_post, json
@@ -1,33 +0,0 @@
1
- ALERT VERB
2
- NAME: alert
3
- SHORTCUT: !
4
-
5
- DESCRIPTION
6
- Show a pop-up notification.
7
- This has only been implemented for the Mac OS X as of yet.
8
-
9
- SYNTAX
10
- alert <messsage>
11
-
12
- PARAMETERS
13
- messsage - The message that will be displayed in the alert.
14
-
15
- RESULT
16
- On the Mac, a notification will popup on screen.
17
- <it> will be set to the message.
18
-
19
- ERRORS
20
- Missing Expression!
21
- - No expression is provided as parameter to the verb.
22
- Expression evaluated with no result!
23
- - Expression is provided but evaluates to nil.
24
-
25
- EXAMPLE
26
-
27
- > create s as string : "boo"
28
- > alert s
29
-
30
- > alert "important message!"
31
-
32
- SEE ALSO
33
- show
@@ -1,25 +0,0 @@
1
- BEEP VERB
2
- NAME: beep
3
- SHORTCUT: b
4
-
5
- DESCRIPTION
6
- Play a standard system beep sound.
7
-
8
- SYNTAX
9
- beep
10
-
11
- PARAMETERS
12
- None
13
-
14
- RESULT
15
- None
16
-
17
- ERRORS
18
- None
19
-
20
- EXAMPLE
21
-
22
- > beep
23
-
24
- SEE ALSO
25
- play, say
@@ -1,24 +0,0 @@
1
- CLS VERB
2
- NAME: cls
3
- SHORTCUT: cls
4
-
5
- DESCRIPTION
6
- Clear the console screen.
7
-
8
- SYNTAX
9
- cls
10
-
11
- PARAMETERS
12
- None
13
-
14
- RESULT
15
- The screen is cleared and cursor set to the top.
16
-
17
- ERRORS
18
- None
19
-
20
- EXAMPLE
21
-
22
- > cls
23
-
24
- SEE ALSO
@@ -1,43 +0,0 @@
1
- CONTEXT VERB
2
- NAME: context
3
- SHORTCUT: @
4
-
5
- DESCRIPTION
6
- Get or set the current context.
7
- When no parameter is provided, the context will be shown.
8
- The the optional path parameter is provided, the context will
9
- be set to that path.
10
- Use 'context root' to set the context back to the root level.
11
-
12
- SYNTAX
13
- context <path.to.new.context>
14
-
15
- PARAMETERS
16
- path.to.new.context - Optional. The path to the new context.
17
-
18
- RESULT
19
- Context is optionally set.
20
- <it> will be set to the new context path when we are changing context.
21
- Context is show in either case.
22
-
23
- ERRORS
24
- None
25
-
26
- Note that providing a context does not exist will not initially
27
- be a problem. In other words, you can set the context to an
28
- object before it exists. However use of context that doesn't exist
29
- will be a problem.
30
-
31
- EXAMPLE
32
-
33
- > context
34
- Context: root
35
-
36
- > context my.object.path
37
- Context: my.object.path
38
-
39
- > context root
40
- Context: root
41
-
42
- SEE ALSO
43
- list
@@ -1,33 +0,0 @@
1
- CREATE VERB
2
- NAME: create
3
- SHORTCUT: `
4
-
5
- DESCRIPTION
6
- Create a new object of given type with given value.
7
- Both type and value are optional when creating an object.
8
-
9
- SYNTAX
10
- create <new.object.path> as <type> : <value>
11
-
12
- PARAMETERS
13
- new.object.path - The path and name of the new object
14
- type - The type of the new object
15
- value - The initial value for the new object
16
-
17
- RESULT
18
- The new object will be created and added to the object heap.
19
- <it> will be set to the new object's initial value.
20
-
21
- ERRORS
22
- Object name is missing!
23
- - The name of the object was not specified and the object
24
- cannot be created.
25
-
26
- EXAMPLE
27
-
28
- > create x as integer : 1
29
- > create s : "abc"
30
- > create t
31
-
32
- SEE ALSO
33
- objects
@@ -1,27 +0,0 @@
1
- EXECUTE VERB
2
- NAME: execute
3
- SHORTCUT: exec
4
-
5
- DESCRIPTION
6
- Execute a shell command.
7
-
8
- SYNTAX
9
- exec <expression>
10
-
11
- PARAMETERS
12
- expression
13
- - Evaluate the expression and execute in the shell.
14
-
15
- RESULT
16
- none
17
-
18
- ERRORS
19
- Missing Expression!
20
- - No expression is provided as parameter to the verb.
21
-
22
- EXAMPLE
23
-
24
- > exec 'rake test'
25
-
26
- SEE ALSO
27
- system, eval, erb
@@ -1,34 +0,0 @@
1
- HELP VERB
2
- NAME: help
3
- SHORTCUT: ?
4
-
5
- DESCRIPTION
6
- Show information about the application.
7
- The help command can also be used to show a list of objects,
8
- verbs, or to show detail about a single object or a
9
- single verb.
10
-
11
- SYNTAX
12
- help <topic>
13
-
14
- PARAMETERS
15
- about - Optional parameter.
16
- If no parameter is given, shows the default help screen
17
- keywords - List all keywords
18
- verbs - List available verbs
19
- objects - List available objects
20
- settings - List application settings
21
- topics - List all help topics
22
- <verb> - Look up detail about a verb
23
- <object> - Look up detail about an object
24
-
25
- RESULT
26
- The help screen will be shown with relevant information.
27
-
28
- ERRORS
29
- Help command could not be found
30
- - Trying to access a help topic that does not exist will result
31
- in an error.
32
-
33
- SEE ALSO
34
- application
@@ -1,37 +0,0 @@
1
- IF VERB
2
- NAME: if
3
- SHORTCUT: if
4
-
5
- DESCRIPTION
6
- If an expression is true then do something.
7
-
8
- SYNTAX
9
- if <true> then <do>
10
-
11
- PARAMETERS
12
- true - Does the expression evaluate to true?
13
- do - Execute command if the expression is true.
14
-
15
- RESULT
16
- Unchanged if the expression is not true.
17
- If true, then the result will be based on the command
18
- specified after the 'then' keyword.
19
-
20
- ERRORS
21
- Missing Expression!
22
- - No expression is provided as parameter to the verb.
23
-
24
- Other errors depend on the command that is run.
25
-
26
- EXAMPLE
27
-
28
- if [container] :
29
- x [bool] : false
30
- true_msg [string] : It is true!
31
- on_load [script] :
32
- if if.x then show "first time: " + if.true_msg
33
- put true into if.x
34
- if if.x then show "second time: " + if.true_msg
35
-
36
- SEE ALSO
37
- unless
@@ -1,34 +0,0 @@
1
- LIST VERB
2
- NAME: list
3
- SHORTCUT: .
4
-
5
- DESCRIPTION
6
- List out objects (and children) at the current context.
7
- When a path is provided, it will be listed instead of the
8
- current context.
9
-
10
- When using context, the current context will be shown, but
11
- when context has not been set, the root will be shown.
12
-
13
- SYNTAX
14
- list <path.to.object>
15
-
16
- PARAMETERS
17
- path.to.object - Optional path to object that will be listed.
18
- When no path is provided, the current context is used.
19
-
20
- RESULT
21
- Object and children are listed out in the CLI.
22
-
23
- ERRORS
24
- Object does not exist
25
- - The object specified that is to be listed could not be found.
26
-
27
- EXAMPLE
28
-
29
- > list
30
- > list my.container
31
- > list root
32
-
33
- SEE ALSO
34
- context
@@ -1,38 +0,0 @@
1
- LOAD VERB
2
- NAME: load
3
- SHORTCUT: <
4
-
5
- DESCRIPTION
6
- Load an object file.
7
- There are two ways to specify the file. Give either the full path
8
- and file name or use a relative path from the gloo project folder.
9
- For the latter, the extension is not needed. For the former, the
10
- file extension is necessary.
11
-
12
- Using * instead of a file name will load all gloo files in the folder.
13
-
14
- SYNTAX
15
- load <file_name>
16
-
17
- PARAMETERS
18
- file_name - Name of the object file that is to be loaded.
19
-
20
- RESULT
21
- Objects are loaded into the heap.
22
- on_load scripts are run within the loaded objects.
23
-
24
- ERRORS
25
- Missing Expression!
26
- - No expression is provided as parameter to the verb.
27
-
28
- If the file specified can't be found or can't be loaded,
29
- an error condition will result.
30
-
31
- EXAMPLE
32
-
33
- > load my/project/file
34
- > load my/app/*
35
- > load ~/.my_app/settings.gloo
36
-
37
- SEE ALSO
38
- save
@@ -1,42 +0,0 @@
1
- MOVE VERB
2
- NAME: move
3
- SHORTCUT: mv
4
-
5
- DESCRIPTION
6
- Move an object to a new parent.
7
-
8
- SYNTAX
9
- move <path.to.object> to <new.parent>
10
-
11
- PARAMETERS
12
- path.to.object - The object that we want to move.
13
- new.parent - The new location for the object.
14
-
15
- RESULT
16
- The object will now be in the new location.
17
-
18
- ERRORS
19
- Object to move was not specified
20
- - The <path.to.object> is not specified.
21
-
22
- Could not find object to move
23
- - The <path.to.object> cannot be resolved.
24
-
25
- Move' must include 'to' parent object
26
- - The 'to' keyword is missing.
27
- - The <new.parent> is not specified.
28
-
29
- Could not resolve target
30
- - The <new.parent> cannot be resolved.
31
-
32
- EXAMPLE
33
-
34
- can [can] :
35
- two [string] : def
36
- data [can] :
37
- one [string] : abc
38
- on_load [script] :
39
- move can.two to can.data
40
-
41
- SEE ALSO
42
- create
@@ -1,38 +0,0 @@
1
- PUT VERB
2
- NAME: put
3
- SHORTCUT: p
4
-
5
- DESCRIPTION
6
- Put a value into an object.
7
- The value is the result of an expression.
8
-
9
- SYNTAX
10
- put <expression> into <dst.path>
11
-
12
- PARAMETERS
13
- expression - The expression that is evaluated.
14
- dst.path - The path to the destination object.
15
-
16
- RESULT
17
- <it> will contain the result of the evaluation.
18
-
19
- ERRORS
20
- Missing Expression
21
- - The 'into' keyword is missing.
22
- - No source expression is provided.
23
-
24
- Target (into) missing
25
- - The destination is not specified.
26
-
27
- Target could not be resolved
28
- - The destination of the put cannot be resolved.
29
-
30
- EXAMPLE
31
-
32
- > put 'one' into str
33
- > put "two" into str
34
- > put 123 into x
35
- > put 3 + 5 into x
36
- > put TRUE into flag
37
-
38
- SEE ALSO
@@ -1,25 +0,0 @@
1
- QUIT VERB
2
- NAME: quit
3
- SHORTCUT: q
4
-
5
- DESCRIPTION
6
- Stop running the gloo application.
7
- Cleanup and shutdown.
8
-
9
- SYNTAX
10
- quit
11
-
12
- PARAMETERS
13
- None
14
-
15
- RESULT
16
- None
17
-
18
- ERRORS
19
- None
20
-
21
- EXAMPLE
22
-
23
- > quit
24
-
25
- SEE ALSO