ppl 1.16.0 → 1.17.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.
- checksums.yaml +4 -4
- data/completions/bash +25 -0
- data/completions/zsh +53 -0
- data/features/init/create_repository.feature +8 -0
- data/features/step_definitions/address_book_steps.rb +6 -0
- data/features/step_definitions/cwd_steps.rb +11 -0
- data/features/step_definitions/ppl_steps.rb +5 -0
- data/lib/ppl.rb +1 -1
- data/lib/ppl/application/shell.rb +0 -10
- data/ppl.gemspec +4 -3
- data/spec/ppl/adapter/vcard/greencard_spec.rb +12 -0
- metadata +24 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 534e964077775b5213a6a424cbd7e7fafdd3bdc1
|
4
|
+
data.tar.gz: 591219daa582fb9f4f0ce4513407a11aca5c340e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a163c7310507391c86a9605dec4c07154ad9b7e91304948d09ba77dc72a4f92488ef7a679da6fc0b31d95e18260e98783ade8492491fa9f273018d05658cad6c
|
7
|
+
data.tar.gz: 5c23014db12338370ab46ee21098bbcb15ee9e2ef6cb3b4917ed8dcef59a7df6e58ac28b1611862ce8b1a0f4bdbaa2429b06657a1f18277a82a8d4f9d455ac03
|
data/completions/bash
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
_ppl()
|
2
|
+
{
|
3
|
+
local cur prev opts nick_cmds base
|
4
|
+
COMPREPLY=()
|
5
|
+
cur="${COMP_WORDS[COMP_CWORD]}"
|
6
|
+
prev="${COMP_WORDS[COMP_CWORD-1]}"
|
7
|
+
|
8
|
+
# Complete options
|
9
|
+
opts="add age bday email init ls mutt mv name nick org phone post pull push remote rm shell show url version"
|
10
|
+
if [[ ${prev} == "ppl" ]]; then
|
11
|
+
COMPREPLY=($(compgen -W "${opts}" -- ${cur}))
|
12
|
+
return 0
|
13
|
+
fi
|
14
|
+
|
15
|
+
# Complete nicknames
|
16
|
+
nick_cmds=([age]="" [bday]="" [email]="" [mv]="" [name]="" [nick]="" [org]="" [phone]="" [post]="" [rm]="" [show]="" [url]="")
|
17
|
+
if [[ $nick_cmds[${prev}] ]]; then
|
18
|
+
local nicknames=$(for x in `ppl nick | cut -d ':' -f 1`; do echo ${x} ; done )
|
19
|
+
COMPREPLY=( $(compgen -W "${nicknames}" -- ${cur}) )
|
20
|
+
return 0
|
21
|
+
fi
|
22
|
+
}
|
23
|
+
|
24
|
+
complete -F _ppl ppl
|
25
|
+
|
data/completions/zsh
ADDED
@@ -0,0 +1,53 @@
|
|
1
|
+
#compdef ppl
|
2
|
+
#autoload
|
3
|
+
|
4
|
+
_ppl_contacts() {
|
5
|
+
contacts=(`ppl nick | cut -d ':' -f 1`)
|
6
|
+
}
|
7
|
+
|
8
|
+
local -a _1st_arguments
|
9
|
+
_1st_arguments=(
|
10
|
+
"add:Add a new contact"
|
11
|
+
"age:List or show contacts's ages"
|
12
|
+
"bday:List, show or change birthdays"
|
13
|
+
"email:Show or change a contact's email address"
|
14
|
+
"init:Create an empty address book"
|
15
|
+
"ls:List all contacts"
|
16
|
+
"mutt:Integration with mutt's query_command"
|
17
|
+
"mv:Rename a contact"
|
18
|
+
"name:List, show or change names"
|
19
|
+
"nick:List, show or change nicknames"
|
20
|
+
"org:List, show or change organizations"
|
21
|
+
"phone:List, show or change phone numbers"
|
22
|
+
"post:List, show or change postal addresses"
|
23
|
+
"pull:Execute 'git pull' in the address book directory"
|
24
|
+
"push:Execute 'git push' in the address book directory"
|
25
|
+
"remote:Execute 'git remote' in the address book directory"
|
26
|
+
"rm:Delete a contact"
|
27
|
+
"shell:Interactive mode"
|
28
|
+
"show:Display the full details of a contact"
|
29
|
+
"url:List, show or change URLs"
|
30
|
+
"version:Display ppl version information"
|
31
|
+
)
|
32
|
+
|
33
|
+
local expl
|
34
|
+
local -a contacts
|
35
|
+
|
36
|
+
_arguments \
|
37
|
+
'*:: :->subcmds' && return 0
|
38
|
+
|
39
|
+
if (( CURRENT == 1 )); then
|
40
|
+
_describe -t commands "ppl command" _1st_arguments
|
41
|
+
return
|
42
|
+
fi
|
43
|
+
|
44
|
+
# Commands which take nicknames
|
45
|
+
local -a nick_cmds
|
46
|
+
nick_cmds=(age bday email mv name nick org phone post rm show url)
|
47
|
+
|
48
|
+
# Complete nick names if appropriate
|
49
|
+
if (( CURRENT == 2 )) && [[ -n ${(M)nick_cmds:#${words[1]}} ]] ; then
|
50
|
+
_ppl_contacts
|
51
|
+
_wanted contacts expl 'current contacts' compadd -a contacts
|
52
|
+
fi
|
53
|
+
|
data/lib/ppl.rb
CHANGED
@@ -7,19 +7,9 @@ class Ppl::Application::Shell
|
|
7
7
|
|
8
8
|
def run(input, output)
|
9
9
|
outcome = false
|
10
|
-
begin
|
11
10
|
command = select_command(input)
|
12
11
|
prepare_command(command, input)
|
13
12
|
outcome = execute_command(command, input, output)
|
14
|
-
rescue Ppl::Error::ContactNotFound
|
15
|
-
output.error("ppl: Contact '#{$!}' not found")
|
16
|
-
rescue OptionParser::InvalidOption, OptionParser::MissingArgument, Ppl::Error::IncorrectUsage
|
17
|
-
output.error($!)
|
18
|
-
output.error(@optparse.to_s)
|
19
|
-
rescue
|
20
|
-
output.error("ppl: " + $!.message)
|
21
|
-
outcome = false
|
22
|
-
end
|
23
13
|
return outcome
|
24
14
|
end
|
25
15
|
|
data/ppl.gemspec
CHANGED
@@ -2,8 +2,8 @@
|
|
2
2
|
Gem::Specification.new do |spec|
|
3
3
|
|
4
4
|
spec.name = "ppl"
|
5
|
-
spec.version = "1.
|
6
|
-
spec.date = "2013-04-
|
5
|
+
spec.version = "1.17.0"
|
6
|
+
spec.date = "2013-04-14"
|
7
7
|
|
8
8
|
spec.required_ruby_version = ">= 1.9.3"
|
9
9
|
|
@@ -15,8 +15,9 @@ Gem::Specification.new do |spec|
|
|
15
15
|
spec.add_dependency("inifile", "2.0.2")
|
16
16
|
spec.add_dependency("morphine", "0.1.1")
|
17
17
|
spec.add_dependency("rugged", "0.17.0.b6")
|
18
|
-
spec.add_dependency("greencard", "0.0.
|
18
|
+
spec.add_dependency("greencard", "0.0.5")
|
19
19
|
|
20
|
+
spec.add_development_dependency("cucumber")
|
20
21
|
spec.add_development_dependency("rspec")
|
21
22
|
spec.add_development_dependency("rake")
|
22
23
|
spec.add_development_dependency("fakefs")
|
@@ -254,5 +254,17 @@ describe Ppl::Adapter::Vcard::GreenCard, "#decode" do
|
|
254
254
|
contact.nicknames.first.should eq "Happy"
|
255
255
|
end
|
256
256
|
|
257
|
+
it "should not choke on utf8" do
|
258
|
+
vcard = [
|
259
|
+
"BEGIN:VCARD",
|
260
|
+
"VERSION:3.0",
|
261
|
+
"N:;Straße;;;",
|
262
|
+
"FN:Straße",
|
263
|
+
"END:VCARD",
|
264
|
+
].join("\n")
|
265
|
+
contact = @adapter.decode(vcard)
|
266
|
+
contact.name.should eq "Straße"
|
267
|
+
end
|
268
|
+
|
257
269
|
end
|
258
270
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ppl
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.17.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Henry Smith
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-04-
|
11
|
+
date: 2013-04-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: colored
|
@@ -72,14 +72,28 @@ dependencies:
|
|
72
72
|
requirements:
|
73
73
|
- - '='
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: 0.0.
|
75
|
+
version: 0.0.5
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - '='
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: 0.0.
|
82
|
+
version: 0.0.5
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: cucumber
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - '>='
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - '>='
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: rspec
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -136,6 +150,12 @@ files:
|
|
136
150
|
- Gemfile
|
137
151
|
- README.md
|
138
152
|
- bin/ppl
|
153
|
+
- completions/bash
|
154
|
+
- completions/zsh
|
155
|
+
- features/init/create_repository.feature
|
156
|
+
- features/step_definitions/address_book_steps.rb
|
157
|
+
- features/step_definitions/cwd_steps.rb
|
158
|
+
- features/step_definitions/ppl_steps.rb
|
139
159
|
- lib/ppl.rb
|
140
160
|
- lib/ppl/adapter/color.rb
|
141
161
|
- lib/ppl/adapter/color/colored.rb
|