yaml_command 0.1.0 → 0.1.1
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.
- checksums.yaml +7 -0
- data/.index +7 -9
- data/HISTORY.md +11 -0
- data/README.md +32 -6
- data/bin/yaml +1 -1
- data/lib/yaml_command.yml +7 -9
- data/lib/yaml_command/base.rb +2 -2
- data/lib/yaml_command/set.rb +11 -1
- data/lib/yaml_command/view.rb +6 -1
- metadata +15 -38
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: bd14765c4b9ae102ae3622ee561bcfc58336a685
|
4
|
+
data.tar.gz: 44dfcac00ad6cfb59b88646cfc50b0567088ade9
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 40fa853c61b8c86aaf1e5d3843c1aeb45213b4365df070531690e0cd9c195455c2e17d90d7d2d3aa5f5f4c268383dccf90aabb7a491bd21a0a5968e74c07defc
|
7
|
+
data.tar.gz: 1c550231c07f6eea0fa3f499c40f9aa4fe5fe6a295b644a4ff323a45c4099b8d22a13fa053ccc98c06c5449960f235aa90962af8a7e6c3e6421b846ca1b0306c
|
data/.index
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
---
|
2
|
-
type: ruby
|
3
2
|
revision: 2013
|
3
|
+
type: ruby
|
4
4
|
sources:
|
5
5
|
- Index.yml
|
6
6
|
authors:
|
@@ -11,10 +11,6 @@ organizations:
|
|
11
11
|
requirements:
|
12
12
|
- name: ansi
|
13
13
|
- name: executable
|
14
|
-
- groups:
|
15
|
-
- build
|
16
|
-
development: true
|
17
|
-
name: detroit
|
18
14
|
- groups:
|
19
15
|
- test
|
20
16
|
development: true
|
@@ -42,17 +38,19 @@ repositories:
|
|
42
38
|
scm: git
|
43
39
|
uri: git://github.com/rubyworks/yaml_command.git
|
44
40
|
categories: []
|
45
|
-
load_path:
|
46
|
-
- lib
|
47
41
|
copyrights:
|
48
42
|
- holder: RubyWorks
|
49
43
|
year: '2011'
|
50
44
|
license: BSD-2-Clause
|
45
|
+
customs: []
|
46
|
+
paths:
|
47
|
+
lib:
|
48
|
+
- lib
|
51
49
|
name: yaml_command
|
52
50
|
title: YAML Command
|
53
|
-
version: 0.1.
|
51
|
+
version: 0.1.1
|
54
52
|
summary: Command-line access to YAML files.
|
55
53
|
description: YAML Command provides a command line interface to teasing apart and reconstructing
|
56
54
|
YAML files.
|
57
55
|
created: '2011-10-22'
|
58
|
-
date: '
|
56
|
+
date: '2014-08-23'
|
data/HISTORY.md
CHANGED
@@ -1,5 +1,16 @@
|
|
1
1
|
# RELEASE HISTORY
|
2
2
|
|
3
|
+
## 0.1.1 / 2014-08-23
|
4
|
+
|
5
|
+
This release simply contains an accumilation of small changes made over
|
6
|
+
the last two years addressing issues raised.
|
7
|
+
|
8
|
+
Changes:
|
9
|
+
|
10
|
+
* Make sure input is valid YAML. (Alexey Zakhlestin)
|
11
|
+
* Set now supports any YAML key and value.
|
12
|
+
|
13
|
+
|
3
14
|
## 0.1.0 / 2012-12-12
|
4
15
|
|
5
16
|
The project has been renamed `yaml-command` instead of the
|
data/README.md
CHANGED
@@ -15,6 +15,10 @@ for a standardized `yaml` command line tool. While this early
|
|
15
15
|
implementation is written in Ruby, ultimately the final version
|
16
16
|
would be written in C and be widely available.
|
17
17
|
|
18
|
+
IMPORTANT NOTE! YPath is not yet implemented so only simple name
|
19
|
+
references can be used at this point.
|
20
|
+
|
21
|
+
|
18
22
|
## Usage
|
19
23
|
|
20
24
|
Commands are invoked on the command line with:
|
@@ -30,8 +34,8 @@ The following commands are currently supported:
|
|
30
34
|
it to stdout.
|
31
35
|
|
32
36
|
* **set** <br/>
|
33
|
-
The `set`
|
34
|
-
a portion of a YAML file. By
|
37
|
+
The `set` command is the opposite of `get` in that it lets you change
|
38
|
+
a portion of a YAML file. By default the changed YAML document will go
|
35
39
|
to stdout, using the `-s/--save` option rewrites the file with the change.
|
36
40
|
|
37
41
|
* **sort** <br/>
|
@@ -41,7 +45,7 @@ The following commands are currently supported:
|
|
41
45
|
The `slurp` command takes a directory and converts it's contents into a YAML file.
|
42
46
|
|
43
47
|
* **splat** <br/>
|
44
|
-
The `splat` command
|
48
|
+
The `splat` command takes a YAML file and converts it into a file directory structure.
|
45
49
|
It is essentially the opposite of slurp.
|
46
50
|
|
47
51
|
* **edit** <br/>
|
@@ -70,7 +74,7 @@ All (or nearly all) commands support the following options.
|
|
70
74
|
Output results in JSON format.
|
71
75
|
|
72
76
|
* **-m** / **--mute** <br/>
|
73
|
-
|
77
|
+
Suppress all output.
|
74
78
|
|
75
79
|
* **-f** / **--force** <br/>
|
76
80
|
Used to force overwrites when necessary.
|
@@ -79,16 +83,38 @@ All (or nearly all) commands support the following options.
|
|
79
83
|
Turn on debug mode to get detailed error report if there is a problem.
|
80
84
|
|
81
85
|
|
82
|
-
##
|
86
|
+
## Installation
|
87
|
+
|
88
|
+
### Ruby Interpreter
|
89
|
+
|
90
|
+
The `yaml` command is a Ruby script, so you will need a Ruby interpreter installed on your system.
|
91
|
+
There are a few of these now, such as Rubinius, JRuby and the original MRI. The latter is the typical
|
92
|
+
choice, and usually can be installed via your operating system's package manager. For example, on
|
93
|
+
dpkg-based systems like Ubuntu, you can type in a shell console:
|
94
|
+
|
95
|
+
$ apt-get install ruby
|
96
|
+
|
97
|
+
### Using RubyGems
|
98
|
+
|
99
|
+
With Ruby installed, the easiest way to install a Ruby library is via RubyGems. To install YAML Command
|
100
|
+
just type:
|
101
|
+
|
102
|
+
$ gem install yaml_command
|
103
|
+
|
104
|
+
### Requirements
|
105
|
+
|
106
|
+
YAML Command requires the following other packages be installed:
|
83
107
|
|
84
108
|
* [Executable](http://rubyworks.github.com/executable) library handle CLI parsing.
|
85
109
|
* [ANSI](http://rubyworks.github.com/ansi) library provides console colorization.
|
86
110
|
|
111
|
+
If you are using RubyGems these will be install automatically.
|
112
|
+
|
87
113
|
|
88
114
|
## Copyrights
|
89
115
|
|
90
116
|
Copyright (c) 2011 Rubyworks. All rights reserved.
|
91
117
|
|
92
|
-
YAML
|
118
|
+
YAML Command may be distributed in accordance with the **BSD-2-Clause** license.
|
93
119
|
|
94
120
|
See the LICENSE.txt file for details.
|
data/bin/yaml
CHANGED
data/lib/yaml_command.yml
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
---
|
2
|
-
type: ruby
|
3
2
|
revision: 2013
|
3
|
+
type: ruby
|
4
4
|
sources:
|
5
5
|
- Index.yml
|
6
6
|
authors:
|
@@ -11,10 +11,6 @@ organizations:
|
|
11
11
|
requirements:
|
12
12
|
- name: ansi
|
13
13
|
- name: executable
|
14
|
-
- groups:
|
15
|
-
- build
|
16
|
-
development: true
|
17
|
-
name: detroit
|
18
14
|
- groups:
|
19
15
|
- test
|
20
16
|
development: true
|
@@ -42,17 +38,19 @@ repositories:
|
|
42
38
|
scm: git
|
43
39
|
uri: git://github.com/rubyworks/yaml_command.git
|
44
40
|
categories: []
|
45
|
-
load_path:
|
46
|
-
- lib
|
47
41
|
copyrights:
|
48
42
|
- holder: RubyWorks
|
49
43
|
year: '2011'
|
50
44
|
license: BSD-2-Clause
|
45
|
+
customs: []
|
46
|
+
paths:
|
47
|
+
lib:
|
48
|
+
- lib
|
51
49
|
name: yaml_command
|
52
50
|
title: YAML Command
|
53
|
-
version: 0.1.
|
51
|
+
version: 0.1.1
|
54
52
|
summary: Command-line access to YAML files.
|
55
53
|
description: YAML Command provides a command line interface to teasing apart and reconstructing
|
56
54
|
YAML files.
|
57
55
|
created: '2011-10-22'
|
58
|
-
date: '
|
56
|
+
date: '2014-08-23'
|
data/lib/yaml_command/base.rb
CHANGED
data/lib/yaml_command/set.rb
CHANGED
@@ -3,7 +3,10 @@ module YAMLCommand
|
|
3
3
|
class Command::SetCommand < Command
|
4
4
|
|
5
5
|
# Set an indexed value of a YAML document.
|
6
|
-
def call(name,
|
6
|
+
def call(name, value)
|
7
|
+
name = yaml_value(name) if String === name
|
8
|
+
new_value = yaml_value(value) if String === name
|
9
|
+
|
7
10
|
case data
|
8
11
|
when Array
|
9
12
|
raise ArgumentError unless name.to_s =~ /d+/
|
@@ -19,6 +22,9 @@ module YAMLCommand
|
|
19
22
|
key = name.to_sym
|
20
23
|
old_value = data[key]
|
21
24
|
data[key] = new_value
|
25
|
+
else
|
26
|
+
old_value = nil
|
27
|
+
data[name] = new_value
|
22
28
|
end
|
23
29
|
else
|
24
30
|
raise NotImplementedError
|
@@ -28,7 +34,11 @@ module YAMLCommand
|
|
28
34
|
#TODO: save
|
29
35
|
output data
|
30
36
|
end
|
37
|
+
end
|
31
38
|
|
39
|
+
#
|
40
|
+
def yaml_value(value)
|
41
|
+
YAML.load(value)
|
32
42
|
end
|
33
43
|
|
34
44
|
end
|
data/lib/yaml_command/view.rb
CHANGED
@@ -1,8 +1,10 @@
|
|
1
1
|
module YAMLCommand
|
2
2
|
|
3
|
-
# TODO: View could use a better
|
3
|
+
# TODO: View could use a better implementation, it is very simplistic
|
4
4
|
# at this point.
|
5
5
|
|
6
|
+
# TODO: Color coordinate matching achors and references.
|
7
|
+
|
6
8
|
# TODO: Should view make a YAML stream if given multiple files ?
|
7
9
|
|
8
10
|
|
@@ -30,6 +32,9 @@ module YAMLCommand
|
|
30
32
|
end
|
31
33
|
end
|
32
34
|
|
35
|
+
# Make sure it is valid YAML.
|
36
|
+
YAML.load(text)
|
37
|
+
|
33
38
|
text.each_line do |line|
|
34
39
|
case line
|
35
40
|
when /^---/
|
metadata
CHANGED
@@ -1,78 +1,55 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yaml_command
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
5
|
-
prerelease:
|
4
|
+
version: 0.1.1
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Thomas Sawyer
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2014-08-23 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: ansi
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - '>='
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - '>='
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: executable
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - '>='
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: '0'
|
46
|
-
- !ruby/object:Gem::Dependency
|
47
|
-
name: detroit
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
|
-
requirements:
|
51
|
-
- - ! '>='
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version: '0'
|
54
|
-
type: :development
|
55
|
-
prerelease: false
|
56
|
-
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
|
-
requirements:
|
59
|
-
- - ! '>='
|
38
|
+
- - '>='
|
60
39
|
- !ruby/object:Gem::Version
|
61
40
|
version: '0'
|
62
41
|
- !ruby/object:Gem::Dependency
|
63
42
|
name: qed
|
64
43
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
44
|
requirements:
|
67
|
-
- -
|
45
|
+
- - '>='
|
68
46
|
- !ruby/object:Gem::Version
|
69
47
|
version: '0'
|
70
48
|
type: :development
|
71
49
|
prerelease: false
|
72
50
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
51
|
requirements:
|
75
|
-
- -
|
52
|
+
- - '>='
|
76
53
|
- !ruby/object:Gem::Version
|
77
54
|
version: '0'
|
78
55
|
description: YAML Command provides a command line interface to teasing apart and reconstructing
|
@@ -84,8 +61,8 @@ executables:
|
|
84
61
|
extensions: []
|
85
62
|
extra_rdoc_files:
|
86
63
|
- LICENSE.txt
|
87
|
-
- HISTORY.md
|
88
64
|
- README.md
|
65
|
+
- HISTORY.md
|
89
66
|
files:
|
90
67
|
- .index
|
91
68
|
- bin/yaml
|
@@ -126,26 +103,26 @@ files:
|
|
126
103
|
homepage: http://rubyworks.github.com/yaml_command
|
127
104
|
licenses:
|
128
105
|
- BSD-2-Clause
|
106
|
+
metadata: {}
|
129
107
|
post_install_message:
|
130
108
|
rdoc_options: []
|
131
109
|
require_paths:
|
132
110
|
- lib
|
133
111
|
required_ruby_version: !ruby/object:Gem::Requirement
|
134
|
-
none: false
|
135
112
|
requirements:
|
136
|
-
- -
|
113
|
+
- - '>='
|
137
114
|
- !ruby/object:Gem::Version
|
138
115
|
version: '0'
|
139
116
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
140
|
-
none: false
|
141
117
|
requirements:
|
142
|
-
- -
|
118
|
+
- - '>='
|
143
119
|
- !ruby/object:Gem::Version
|
144
120
|
version: '0'
|
145
121
|
requirements: []
|
146
122
|
rubyforge_project:
|
147
|
-
rubygems_version:
|
123
|
+
rubygems_version: 2.0.3
|
148
124
|
signing_key:
|
149
|
-
specification_version:
|
125
|
+
specification_version: 4
|
150
126
|
summary: Command-line access to YAML files.
|
151
127
|
test_files: []
|
128
|
+
has_rdoc:
|