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,27 +0,0 @@
1
- PROMPT OBJECT TYPE
2
- NAME: prompt
3
- SHORTCUT: ask
4
-
5
- DESCRIPTION
6
- CLI prompt for user input.
7
-
8
- CHILDREN
9
- prompt - string - '> '
10
- The prompt displayed to the user.
11
- result - string - none
12
- The result with the user's input.
13
-
14
- MESSAGES
15
- run - Prompt the user and then set the result.
16
- multiline - Show a multiline prompt.
17
-
18
- EXAMPLE
19
-
20
- ask [ask] :
21
- prompt [string] : What is your name?
22
- result [string] :
23
- on_load [script] :
24
- run ask
25
- show 'Hello, ' + ask.result + '! Thanks for playing'
26
-
27
- SEE ALSO
@@ -1,34 +0,0 @@
1
- SELECT OBJECT TYPE
2
- NAME: select
3
- SHORTCUT: sel
4
-
5
- DESCRIPTION
6
- Prompt for user to select from a list of options.
7
-
8
- CHILDREN
9
- prompt - string - '> '
10
- The prompt displayed to the user.
11
- options - container
12
- The list of options for the selection list.
13
- The name of each option will be presented to the user, but
14
- the value will be put in the result.
15
- result - string - none
16
- The result with the user's selection.
17
-
18
- MESSAGES
19
- run - Prompt the user for a selection and then set the result.
20
-
21
- EXAMPLE
22
-
23
- select [select] :
24
- prompt [string] : What is your favorite color?
25
- options [can] :
26
- red : r
27
- green : g
28
- blue : b
29
- result [string] :
30
- on_load [script] :
31
- run select
32
- show select.result
33
-
34
- SEE ALSO
@@ -1,48 +0,0 @@
1
- EACH OBJECT TYPE
2
- NAME: each
3
- SHORTCUT: each
4
-
5
- DESCRIPTION
6
- Perform an action for each item in a collection.
7
-
8
- CHILDREN
9
- child | word | line | repo - string - none
10
- The entity we want to loop for.
11
- It will hold the current value while the script is running.
12
- in - string - none
13
- The collection we will iterate in.
14
- In the case of <word> or <line> this will be a string or text.
15
- In the case of <repo> this will be the root path.
16
- do - script - none
17
- The action we want to perform for each found item.
18
-
19
- MESSAGES
20
- run - Look through the collecion and perform this for each
21
- found item.
22
-
23
- EXAMPLE
24
-
25
- #
26
- # Show each child in a container.
27
- #
28
-
29
- for [each] :
30
- child [alias] :
31
- in [alias] : objs
32
- do [script] : show for.child
33
- objs [can] :
34
- 1 [string] : one
35
- 2 [string] : two
36
- 3 [string] : three
37
-
38
- #
39
- # Show each word in a string.
40
- #
41
-
42
- for [each] :
43
- word [string] :
44
- in [string] : one word at a time
45
- do [script] : show for.word
46
-
47
-
48
- SEE ALSO
@@ -1,38 +0,0 @@
1
- REPEAT OBJECT TYPE
2
- NAME: repeat
3
- SHORTCUT: repeat
4
-
5
- DESCRIPTION
6
- Run a script a given number of times.
7
-
8
- CHILDREN
9
- times integer - 0
10
- The number of times to run the script.
11
- index integer - 0
12
- The current iteration when the repeat loop is running.
13
- do - script - none
14
- The action we want to perform for iteration of the loop.
15
-
16
- MESSAGES
17
- run - Run the script for the given number of times.
18
-
19
- EXAMPLE
20
-
21
- repeat [can] :
22
- s [string] :
23
- on_load [script] :
24
- put $.screen_cols / 2 into repeat.x.times
25
- tell repeat.x to run
26
- show repeat.s
27
- tell repeat.y to run
28
- show repeat.s
29
- x [repeat] :
30
- times [integer] : 30
31
- index [integer] : 0
32
- do [script] : put repeat.s + '-' into repeat.s
33
- y [repeat] :
34
- times [integer] : 10
35
- index [integer] : 0
36
- do [script] : show repeat.y.index
37
-
38
- SEE ALSO
@@ -1,25 +0,0 @@
1
- MARKDOWN OBJECT TYPE
2
- NAME: markdown
3
- SHORTCUT: md
4
-
5
- DESCRIPTION
6
- Markdown data in a text string.
7
-
8
- CHILDREN
9
- None
10
-
11
- MESSAGES
12
- show - Show the markdown data in the terminal.
13
- page - Show the markdown data in the terminal, paginated.
14
-
15
- EXAMPLE
16
-
17
- md [can] :
18
- f [file] :
19
- on_load [script] :
20
- put $.gloo.projects + "/o/data/txt.md" into md.f
21
- tell md.f to read (md.data)
22
- tell md.data to show
23
- data [md] :
24
-
25
- SEE ALSO
@@ -1,40 +0,0 @@
1
- SYSTEM OBJECT TYPE
2
- NAME: mysql
3
- SHORTCUT: mysql
4
-
5
- DESCRIPTION
6
- A MySQL database connection.
7
-
8
- CHILDREN
9
- host - string
10
- The database server host
11
- database - string
12
- The name of the database.
13
- username - string
14
- The username with which to connect.
15
- pasword - string
16
- The user's password.
17
-
18
- MESSAGES
19
- verify - Verify that the database connection can be established.
20
-
21
- EXAMPLE
22
-
23
- mysql [can] :
24
- on_load [script] :
25
- run mysql.get_passwd
26
- run mysql.sql
27
- db [mysql] :
28
- host : localhost
29
- database : my_database
30
- username : my_user
31
- password [alias] : mysql.get_passwd.result
32
- sql [query] :
33
- database [alias] : mysql.db
34
- sql : SELECT first, last, phone FROM people
35
- get_passwd [ask] :
36
- prompt [string] : Database Password?
37
- result [string] :
38
-
39
- SEE ALSO
40
- query, sqlite
@@ -1,37 +0,0 @@
1
- SYSTEM OBJECT TYPE
2
- NAME: query
3
- SHORTCUT: sql
4
-
5
- DESCRIPTION
6
- A SQL Query.
7
- A SELECT, INSERT, UPDATE or other SQL statement.
8
- The query requires a valid database connection.
9
-
10
- CHILDREN
11
- database - string
12
- The name of the database.
13
- sql - string
14
- The SQL query to execute.
15
- result - container
16
- The result of the query will be a container for each row,
17
- with an object for each column.
18
- The result container is optional. If it is not present,
19
- the results will be displayed in the console.
20
- params - container
21
- Optional list of parameters for the query.
22
-
23
- MESSAGES
24
- run - Run the query and get back the data.
25
-
26
- EXAMPLE
27
-
28
- sqlite [can] :
29
- on_load [script] : run sqlite.sql
30
- db [sqlite] :
31
- database : test.db
32
- sql [query] :
33
- database [alias] : sqlite.db
34
- sql : SELECT id, key, value FROM key_values
35
-
36
- SEE ALSO
37
- mysql, sqlite
@@ -1,26 +0,0 @@
1
- SYSTEM OBJECT TYPE
2
- NAME: sqlite
3
- SHORTCUT: sqlite
4
-
5
- DESCRIPTION
6
- A Sqlite3 database connection.
7
-
8
- CHILDREN
9
- database - string - 'test.db'
10
- The path to the database file.
11
-
12
- MESSAGES
13
- verify - Verify that the database connection can be established.
14
-
15
- EXAMPLE
16
-
17
- sqlite [can] :
18
- on_load [script] : run sqlite.sql
19
- db [sqlite] :
20
- database : test.db
21
- sql [query] :
22
- database [alias] : sqlite.db
23
- sql : SELECT id, key, value FROM key_values
24
-
25
- SEE ALSO
26
- query, mysql
@@ -1,46 +0,0 @@
1
- TABLE OBJECT TYPE
2
- NAME: table
3
- SHORTCUT: tbl
4
-
5
- DESCRIPTION
6
- A data table.
7
-
8
- CHILDREN
9
- headers - container
10
- A list of headers.
11
- The name of the header object needs to be the same as the
12
- name of the object in the data container.
13
- The value of the header is what will be displayed.
14
- data - container
15
- The table's data.
16
- The data container will have one or more containers, each
17
- of which represents one row of data.
18
-
19
- MESSAGES
20
- show - Show the contents of the table in the CLI.
21
-
22
- EXAMPLE
23
-
24
- t [tbl] :
25
- on_load [script] :
26
- tell t to show
27
- headers [can] :
28
- name : Name
29
- phone : Tel
30
- notes : Notes
31
- data [alias] : table_data
32
- table_data [can] :
33
- 1 [can] :
34
- name : Joe
35
- phone : 312-555-1212
36
- notes : Play golf with Joe
37
- 2 [can] :
38
- name : Sally
39
- phone : 708-555-1212
40
- notes : met Sally at the meetup last week
41
- 3 [can] :
42
- name : Frank
43
- phone : 312-555-1213
44
- notes : Frank Lee Speaking
45
-
46
- SEE ALSO
@@ -1,36 +0,0 @@
1
- GIT OBJECT TYPE
2
- NAME: git_repo
3
- SHORTCUT: git
4
-
5
- DESCRIPTION
6
- Reference to a git repository in the file system.
7
- The value of the git_repo object is a string.
8
- There are no children needed.
9
-
10
- CHILDREN
11
- None
12
-
13
- MESSAGES
14
- validate - Validate that this is a git repo.
15
- check_changes - Check to see if there are any pending changes.
16
- get_changes - Get the list of pending changes.
17
- commit - Commit changes.
18
- get_branch - Get the current branch.
19
- review - Review pending changes.
20
-
21
- EXAMPLE
22
-
23
- changes [can] :
24
- on_load [script] :
25
- show "Finding repos with local changes..."
26
- put $.user.home + "/dev" into changes.for.in
27
- run changes.for
28
- show "Done."
29
- for [each] :
30
- repo [git] :
31
- in [string] :
32
- do [script] :
33
- tell changes.for.repo to check_changes
34
- if it then show changes.for.repo
35
-
36
- SEE ALSO
@@ -1,36 +0,0 @@
1
- GIT OBJECT TYPE
2
- NAME: stats
3
- SHORTCUT: stats
4
-
5
- DESCRIPTION
6
- Development project statistics.
7
-
8
- CHILDREN
9
- folder - file
10
- The project's root folder.
11
- types - string
12
- The list of code file types.
13
- We'll use this to count lines of code and to find the
14
- longest files.
15
- The list is a string of space-delimited file extensions.
16
- For example: rb erb js
17
- skip - string
18
- List of files or folders we'll skip while building stats.
19
- For example: .git tmp
20
-
21
- MESSAGES
22
- show_all - Show all project statistics
23
- show_busy_folders - Show a list of folders with the most files
24
- show_types - Show file types and counts
25
-
26
- EXAMPLE
27
-
28
- main [can] :
29
- stats [stats] :
30
- folder [file] : /Users/me/dev/project
31
- types [string] : rb erb js
32
- skip [string] : .git tmp
33
- on_load [script] :
34
- tell main.stats to show_all
35
-
36
- SEE ALSO
@@ -1,23 +0,0 @@
1
- DATE OBJECT TYPE
2
- NAME: date
3
- SHORTCUT: date
4
-
5
- DESCRIPTION
6
- A reference to a date, but without time.
7
-
8
- CHILDREN
9
- None
10
-
11
- MESSAGES
12
- now - Set to the current system date.
13
-
14
- EXAMPLE
15
-
16
- time [can] :
17
- t [time] :
18
- on_load [script] :
19
- tell time.t to now
20
- show time.t
21
-
22
- SEE ALSO
23
- datetime, time
@@ -1,24 +0,0 @@
1
- DATETIME OBJECT TYPE
2
- NAME: datetime
3
- SHORTCUT: dt
4
-
5
- DESCRIPTION
6
- A reference to a date and time.
7
-
8
- CHILDREN
9
- None
10
-
11
- MESSAGES
12
- now - Set to the current system date and time.
13
-
14
- EXAMPLE
15
-
16
- dt [can] :
17
- d [datetime] :
18
- on_load [script] :
19
- tell dt.d to now
20
- show dt.d
21
- next [script] : put '1 week from now' into dt.d
22
-
23
- SEE ALSO
24
- date, time
@@ -1,23 +0,0 @@
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
@@ -1,37 +0,0 @@
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
@@ -1,24 +0,0 @@
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
@@ -1,23 +0,0 @@
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
@@ -1,28 +0,0 @@
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
@@ -1,48 +0,0 @@
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
- find_match - Look for the existence of a file matching
28
- the file's pattern. <It> will be true or false.
29
-
30
- EXAMPLE
31
-
32
- exists [can] :
33
- f [file] : /Users/me/tmp
34
- on_load [script] :
35
- show "Checking to see if file exists: " + exists.f
36
- tell exists.f to check_exists
37
- show it
38
- tell exists.f to check_is_dir
39
- show "is a directory? " + it
40
- tell exists.f to check_is_file
41
- show "is a file? " + it
42
-
43
- f [file] : /Users/me/gloo/*.gemspec
44
- pattern [script] :
45
- tell f to find_match
46
- show it
47
-
48
- SEE ALSO
@@ -1,30 +0,0 @@
1
- SYSTEM OBJECT TYPE
2
- NAME: ssh_exec
3
- SHORTCUT: ssh
4
-
5
- DESCRIPTION
6
- Open an SSH session to host and execute a system command.
7
-
8
- CHILDREN
9
- host - string - 'localhost'
10
- The remote host to which to open a connection.
11
- The object assumes that the user has password-less SSH
12
- set up to the remote host.
13
- cmd - string
14
- The command to execute on the remote system.
15
- result - string
16
- The result of running the command.
17
-
18
- MESSAGES
19
- run - Open the connection and execute the command.
20
- Set the result value to the output of the command.
21
-
22
- EXAMPLE
23
-
24
- remote [ssh_exec] :
25
- host [string] : localhost
26
- cmd [string] : hostname
27
- result [string] :
28
-
29
- SEE ALSO
30
- execute, system