gloo 0.5.4 → 0.7.2

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 (178) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/Gemfile.lock +1 -1
  4. data/lib/gloo/app/args.rb +48 -6
  5. data/lib/gloo/app/engine.rb +60 -38
  6. data/lib/gloo/app/help.rb +137 -16
  7. data/lib/gloo/app/info.rb +3 -1
  8. data/lib/gloo/app/log.rb +23 -0
  9. data/lib/gloo/app/mode.rb +2 -0
  10. data/lib/gloo/app/settings.rb +98 -47
  11. data/lib/gloo/convert/converter.rb +35 -0
  12. data/lib/gloo/convert/string_to_datetime.rb +1 -1
  13. data/lib/gloo/convert/string_to_decimal.rb +1 -1
  14. data/lib/gloo/convert/string_to_integer.rb +1 -1
  15. data/lib/gloo/core/dictionary.rb +99 -22
  16. data/lib/gloo/core/error.rb +19 -8
  17. data/lib/gloo/core/event_manager.rb +4 -0
  18. data/lib/gloo/core/factory.rb +11 -0
  19. data/lib/gloo/core/gloo_system.rb +1 -1
  20. data/lib/gloo/core/heap.rb +11 -3
  21. data/lib/gloo/core/here.rb +36 -0
  22. data/lib/gloo/core/it.rb +6 -0
  23. data/lib/gloo/core/literal.rb +5 -0
  24. data/lib/gloo/core/obj.rb +22 -0
  25. data/lib/gloo/core/op.rb +7 -0
  26. data/lib/gloo/core/parser.rb +6 -0
  27. data/lib/gloo/core/pn.rb +38 -0
  28. data/lib/gloo/core/tokens.rb +66 -22
  29. data/lib/gloo/core/verb.rb +12 -0
  30. data/lib/gloo/exec/action.rb +48 -0
  31. data/lib/gloo/exec/dispatch.rb +15 -5
  32. data/lib/gloo/exec/exec_env.rb +74 -0
  33. data/lib/gloo/exec/runner.rb +4 -2
  34. data/lib/gloo/{core → exec}/script.rb +21 -9
  35. data/lib/gloo/exec/stack.rb +78 -0
  36. data/lib/gloo/expr/expression.rb +26 -4
  37. data/lib/gloo/expr/l_boolean.rb +6 -0
  38. data/lib/gloo/expr/l_decimal.rb +5 -0
  39. data/lib/gloo/expr/l_integer.rb +7 -0
  40. data/lib/gloo/expr/l_string.rb +7 -0
  41. data/lib/gloo/expr/op_div.rb +2 -0
  42. data/lib/gloo/expr/op_minus.rb +2 -0
  43. data/lib/gloo/expr/op_mult.rb +2 -0
  44. data/lib/gloo/expr/op_plus.rb +2 -0
  45. data/lib/gloo/help/app/application.txt +22 -0
  46. data/lib/gloo/help/app/configuration.txt +7 -0
  47. data/lib/gloo/help/app/default_help.txt +14 -0
  48. data/lib/gloo/help/app/logging.txt +16 -0
  49. data/lib/gloo/help/core/color.txt +31 -0
  50. data/lib/gloo/help/core/error.txt +33 -0
  51. data/lib/gloo/help/core/events.txt +21 -0
  52. data/lib/gloo/help/core/gloo_system.txt +54 -0
  53. data/lib/gloo/help/core/here.txt +30 -0
  54. data/lib/gloo/help/core/it.txt +23 -0
  55. data/lib/gloo/help/core/ops.txt +16 -0
  56. data/lib/gloo/help/core/pathname.txt +29 -0
  57. data/lib/gloo/help/objs/basic/alias.txt +36 -0
  58. data/lib/gloo/help/objs/basic/boolean.txt +28 -0
  59. data/lib/gloo/help/objs/basic/container.txt +33 -0
  60. data/lib/gloo/help/objs/basic/decimal.txt +28 -0
  61. data/lib/gloo/help/objs/basic/integer.txt +27 -0
  62. data/lib/gloo/help/objs/basic/script.txt +29 -0
  63. data/lib/gloo/help/objs/basic/string.txt +28 -0
  64. data/lib/gloo/help/objs/basic/text.txt +27 -0
  65. data/lib/gloo/help/objs/basic/untyped.txt +22 -0
  66. data/lib/gloo/help/objs/cli/banner.txt +49 -0
  67. data/lib/gloo/help/objs/cli/bar.txt +34 -0
  68. data/lib/gloo/help/objs/cli/colorize.txt +33 -0
  69. data/lib/gloo/help/objs/cli/confirm.txt +26 -0
  70. data/lib/gloo/help/objs/cli/menu.txt +44 -0
  71. data/lib/gloo/help/objs/cli/menu_item.txt +26 -0
  72. data/lib/gloo/help/objs/cli/pastel.txt +43 -0
  73. data/lib/gloo/help/objs/cli/prompt.txt +27 -0
  74. data/lib/gloo/help/objs/cli/select.txt +34 -0
  75. data/lib/gloo/help/objs/ctrl/each.txt +48 -0
  76. data/lib/gloo/help/objs/ctrl/repeat.txt +38 -0
  77. data/lib/gloo/help/objs/data/markdown.txt +25 -0
  78. data/lib/gloo/help/objs/data/table.txt +46 -0
  79. data/lib/gloo/help/objs/dev/git_repo.txt +35 -0
  80. data/lib/gloo/help/objs/dt/date.txt +23 -0
  81. data/lib/gloo/help/objs/dt/datetime.txt +24 -0
  82. data/lib/gloo/help/objs/dt/time.txt +23 -0
  83. data/lib/gloo/help/objs/ror/erb.txt +37 -0
  84. data/lib/gloo/help/objs/ror/eval.txt +24 -0
  85. data/lib/gloo/help/objs/snd/play.txt +23 -0
  86. data/lib/gloo/help/objs/snd/say.txt +28 -0
  87. data/lib/gloo/help/objs/system/file.txt +41 -0
  88. data/lib/gloo/help/objs/system/system.txt +32 -0
  89. data/lib/gloo/help/objs/web/http_get.txt +35 -0
  90. data/lib/gloo/help/objs/web/http_post.txt +32 -0
  91. data/lib/gloo/help/objs/web/json.txt +34 -0
  92. data/lib/gloo/help/objs/web/slack.txt +33 -0
  93. data/lib/gloo/help/objs/web/teams.txt +30 -0
  94. data/lib/gloo/help/objs/web/uri.txt +37 -0
  95. data/lib/gloo/help/verbs/alert.txt +33 -0
  96. data/lib/gloo/help/verbs/beep.txt +25 -0
  97. data/lib/gloo/help/verbs/cls.txt +24 -0
  98. data/lib/gloo/help/verbs/context.txt +43 -0
  99. data/lib/gloo/help/verbs/create.txt +33 -0
  100. data/lib/gloo/help/verbs/execute.txt +27 -0
  101. data/lib/gloo/help/verbs/help.txt +34 -0
  102. data/lib/gloo/help/verbs/if.txt +37 -0
  103. data/lib/gloo/help/verbs/list.txt +34 -0
  104. data/lib/gloo/help/verbs/load.txt +38 -0
  105. data/lib/gloo/help/verbs/move.txt +42 -0
  106. data/lib/gloo/help/verbs/put.txt +38 -0
  107. data/lib/gloo/help/verbs/quit.txt +25 -0
  108. data/lib/gloo/help/verbs/run.txt +41 -0
  109. data/lib/gloo/help/verbs/save.txt +26 -0
  110. data/lib/gloo/help/verbs/show.txt +30 -0
  111. data/lib/gloo/help/verbs/tell.txt +34 -0
  112. data/lib/gloo/help/verbs/unless.txt +38 -0
  113. data/lib/gloo/help/verbs/version.txt +32 -0
  114. data/lib/gloo/help/verbs/wait.txt +29 -0
  115. data/lib/gloo/objs/basic/alias.rb +0 -33
  116. data/lib/gloo/objs/basic/boolean.rb +6 -27
  117. data/lib/gloo/objs/basic/container.rb +0 -33
  118. data/lib/gloo/objs/basic/decimal.rb +8 -28
  119. data/lib/gloo/objs/basic/integer.rb +5 -26
  120. data/lib/gloo/objs/basic/script.rb +1 -27
  121. data/lib/gloo/objs/basic/string.rb +6 -26
  122. data/lib/gloo/objs/basic/text.rb +0 -25
  123. data/lib/gloo/objs/basic/untyped.rb +0 -26
  124. data/lib/gloo/objs/cli/banner.rb +0 -29
  125. data/lib/gloo/objs/cli/bar.rb +0 -29
  126. data/lib/gloo/objs/cli/colorize.rb +4 -34
  127. data/lib/gloo/objs/cli/confirm.rb +6 -36
  128. data/lib/gloo/objs/cli/menu.rb +6 -36
  129. data/lib/gloo/objs/cli/menu_item.rb +0 -33
  130. data/lib/gloo/objs/cli/pastel.rb +4 -27
  131. data/lib/gloo/objs/cli/prompt.rb +4 -28
  132. data/lib/gloo/objs/cli/select.rb +4 -31
  133. data/lib/gloo/objs/ctrl/each.rb +33 -33
  134. data/lib/gloo/objs/ctrl/repeat.rb +8 -29
  135. data/lib/gloo/objs/data/markdown.rb +0 -25
  136. data/lib/gloo/objs/data/table.rb +4 -32
  137. data/lib/gloo/objs/dev/git.rb +12 -30
  138. data/lib/gloo/objs/dt/date.rb +3 -25
  139. data/lib/gloo/objs/dt/datetime.rb +4 -26
  140. data/lib/gloo/objs/dt/time.rb +3 -25
  141. data/lib/gloo/objs/ror/erb.rb +11 -45
  142. data/lib/gloo/objs/ror/eval.rb +11 -38
  143. data/lib/gloo/objs/snd/play.rb +2 -25
  144. data/lib/gloo/objs/snd/say.rb +9 -31
  145. data/lib/gloo/objs/system/file_handle.rb +0 -38
  146. data/lib/gloo/objs/system/system.rb +16 -46
  147. data/lib/gloo/objs/web/http_get.rb +57 -83
  148. data/lib/gloo/objs/web/http_post.rb +8 -31
  149. data/lib/gloo/objs/web/json.rb +11 -31
  150. data/lib/gloo/objs/web/slack.rb +7 -34
  151. data/lib/gloo/objs/web/teams.rb +13 -48
  152. data/lib/gloo/objs/web/uri.rb +0 -29
  153. data/lib/gloo/persist/file_loader.rb +8 -0
  154. data/lib/gloo/persist/file_saver.rb +6 -0
  155. data/lib/gloo/persist/file_storage.rb +2 -0
  156. data/lib/gloo/persist/line_splitter.rb +2 -0
  157. data/lib/gloo/persist/persist_man.rb +6 -0
  158. data/lib/gloo/verbs/alert.rb +30 -44
  159. data/lib/gloo/verbs/beep.rb +0 -30
  160. data/lib/gloo/verbs/cls.rb +0 -30
  161. data/lib/gloo/verbs/context.rb +9 -39
  162. data/lib/gloo/verbs/create.rb +17 -32
  163. data/lib/gloo/verbs/execute.rb +52 -0
  164. data/lib/gloo/verbs/help.rb +151 -115
  165. data/lib/gloo/verbs/if.rb +46 -44
  166. data/lib/gloo/verbs/list.rb +36 -54
  167. data/lib/gloo/verbs/load.rb +8 -37
  168. data/lib/gloo/verbs/move.rb +12 -51
  169. data/lib/gloo/verbs/put.rb +28 -52
  170. data/lib/gloo/verbs/quit.rb +0 -31
  171. data/lib/gloo/verbs/run.rb +23 -39
  172. data/lib/gloo/verbs/save.rb +0 -33
  173. data/lib/gloo/verbs/show.rb +6 -31
  174. data/lib/gloo/verbs/tell.rb +31 -31
  175. data/lib/gloo/verbs/unless.rb +47 -46
  176. data/lib/gloo/verbs/version.rb +0 -30
  177. data/lib/gloo/verbs/wait.rb +0 -31
  178. metadata +79 -3
@@ -0,0 +1,23 @@
1
+ TIME OBJECT TYPE
2
+ NAME: time
3
+ SHORTCUT: time
4
+
5
+ DESCRIPTION
6
+ A reference to a time, but without a date.
7
+
8
+ CHILDREN
9
+ None
10
+
11
+ MESSAGES
12
+ now - Set to the current system time.
13
+
14
+ EXAMPLE
15
+
16
+ date [can] :
17
+ d [date] :
18
+ on_load [script] :
19
+ tell date.d to now
20
+ show date.d
21
+
22
+ SEE ALSO
23
+ date, datetime
@@ -0,0 +1,37 @@
1
+ ERB OBJECT TYPE
2
+ NAME: erb
3
+ SHORTCUT: erb
4
+
5
+ DESCRIPTION
6
+ Use the ERB templating system to generate content.
7
+
8
+ CHILDREN
9
+ template - text
10
+ The template that will be used the the ERB object is run.
11
+ params - container
12
+ The collection of children values that will be used
13
+ when the template object is rendered.
14
+ result - text
15
+ The result of the template rendering.
16
+
17
+ MESSAGES
18
+ run - Render the result based on the template and the
19
+ parameter values.
20
+
21
+ EXAMPLE
22
+
23
+ e [can] :
24
+ erb [erb] :
25
+ template [text] : BEGIN
26
+ Hello <%= first %> <%= last %>!
27
+ END
28
+ params [container] :
29
+ first [string] : Eric
30
+ last [string] : Crane
31
+ result [text] :
32
+ on_load [script] :
33
+ run e.erb
34
+ show e.erb.result
35
+
36
+ SEE ALSO
37
+ eval, system, execute
@@ -0,0 +1,24 @@
1
+ EVAL OBJECT TYPE
2
+ NAME: eval
3
+ SHORTCUT: ruby
4
+
5
+ DESCRIPTION
6
+ Execute a ruby expression.
7
+
8
+ CHILDREN
9
+ command - string
10
+ The ruby expression or command that will be run.
11
+ result - string
12
+ The result of the command or expression after it is run.
13
+
14
+ MESSAGES
15
+ run - Execute the ruby command and update the result.
16
+
17
+ EXAMPLE
18
+
19
+ eval [ruby] :
20
+ command [string] : 3 * 7
21
+ result [string] : 21
22
+
23
+ SEE ALSO
24
+ system, erb, execute
@@ -0,0 +1,23 @@
1
+ PLAY OBJECT TYPE
2
+ NAME: play
3
+ SHORTCUT: play
4
+
5
+ DESCRIPTION
6
+ Play an audio file, an MP3 for example.
7
+ The value of the play object is the path to the audio file.
8
+
9
+ CHILDREN
10
+ None.
11
+
12
+ MESSAGES
13
+ run - Play the audio file.
14
+
15
+ EXAMPLE
16
+
17
+ play [can] :
18
+ snd [play] : ~/path/to/snd.mp3
19
+ on_load [script] :
20
+ run play.snd
21
+
22
+ SEE ALSO
23
+ say, beep
@@ -0,0 +1,28 @@
1
+ SAY OBJECT TYPE
2
+ NAME: say
3
+ SHORTCUT: say
4
+
5
+ DESCRIPTION
6
+ Use the Mac text to speech function to convert text to audio.
7
+ From the Mac CLI, run this to get a list of voices:
8
+ say -v '?'
9
+
10
+ CHILDREN
11
+ voice - string
12
+ The Voice to use. If left blank, the default voice will be used.
13
+ message - string - 'talk to me'
14
+ The message to speak.
15
+
16
+ MESSAGES
17
+ run - Speak the message, optionally in the voice specified.
18
+
19
+ EXAMPLE
20
+
21
+ say [say] :
22
+ voice [string] : Moira
23
+ message [string] : So long, and thanks for all the fish!
24
+ on_load [script] :
25
+ tell say to run
26
+
27
+ SEE ALSO
28
+ play, beep
@@ -0,0 +1,41 @@
1
+ FILE OBJECT TYPE
2
+ NAME: file
3
+ SHORTCUT: dir
4
+
5
+ DESCRIPTION
6
+ Reference to a file or folder (directory) on disk.
7
+ The string value of the file object is the path and name
8
+ of the file.
9
+
10
+ CHILDREN
11
+ None.
12
+
13
+ MESSAGES
14
+ read <into.obj> - Read file and put data in the specified object.
15
+ If the <into.obj> is not specified, the data will be in <it>.
16
+ write <from.obj> - Write the data in the <from.object> into
17
+ the file.
18
+ show - Show the contents of the file.
19
+ page - Show the contents of the file, paginated
20
+ open - Open the file with the default application for the type.
21
+ check_exists - Check to see if the file exists.
22
+ <It> will be true or false.
23
+ check_is_file - Check to see if the file specified is a
24
+ regular file. <It> will be true or false.
25
+ check_is_dir - Check to see if the file specified is a
26
+ diretory. <It> will be true or false.
27
+
28
+ EXAMPLE
29
+
30
+ exists [can] :
31
+ f [file] : /Users/me/tmp
32
+ on_load [script] :
33
+ show "Checking to see if file exists: " + exists.f
34
+ tell exists.f to check_exists
35
+ show it
36
+ tell exists.f to check_is_dir
37
+ show "is a directory? " + it
38
+ tell exists.f to check_is_file
39
+ show "is a file? " + it
40
+
41
+ SEE ALSO
@@ -0,0 +1,32 @@
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
@@ -0,0 +1,35 @@
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
@@ -0,0 +1,32 @@
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
+
17
+ MESSAGES
18
+ run - Run the HTTP Post sending the body data to the
19
+ endpoint specified in the URI.
20
+
21
+ EXAMPLE
22
+
23
+ post [post] :
24
+ txt [str] : Message from gloo!
25
+ uri [str] : https://my.service.com/my-long-token
26
+ body [can] :
27
+ text [alias] : post.txt
28
+ username [str] : me
29
+ on_load [script] : run post
30
+
31
+ SEE ALSO
32
+ http_get, json, uri
@@ -0,0 +1,34 @@
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
@@ -0,0 +1,33 @@
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
@@ -0,0 +1,30 @@
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
@@ -0,0 +1,37 @@
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 parameterse; example: id=121
17
+ get_fragment - get the URI fragment
18
+
19
+ EXAMPLE
20
+
21
+ url [can] :
22
+ on_load [script] :
23
+ tell url.u to get_scheme
24
+ show "scheme: " + it
25
+
26
+ tell url.u to get_host
27
+ show "host: " + it
28
+
29
+ tell url.u to get_path
30
+ show "path: " + it
31
+
32
+ show "opening URL: " + url.u
33
+ tell url.u to open
34
+ u [uri] : https://my.url/path/1234
35
+
36
+ SEE ALSO
37
+ http_get, http_post, json
@@ -0,0 +1,33 @@
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