yac 1.4.1 → 1.4.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.
- data/CHANGELOG +3 -0
- data/lib/git.rb +2 -2
- data/lib/yac.rb +38 -24
- data/yac.gemspec +2 -2
- metadata +2 -2
data/CHANGELOG
CHANGED
data/lib/git.rb
CHANGED
@@ -34,8 +34,8 @@ class Git
|
|
34
34
|
self.commit("#{cleanup_name(file)} Removed")
|
35
35
|
end
|
36
36
|
|
37
|
-
def commit(msg
|
38
|
-
system("git commit #{args
|
37
|
+
def commit(msg,args='')
|
38
|
+
system("git commit #{args} -m '#{msg}' >/dev/null")
|
39
39
|
end
|
40
40
|
|
41
41
|
def cleanup_name(f)
|
data/lib/yac.rb
CHANGED
@@ -5,7 +5,7 @@ module Yac
|
|
5
5
|
include Format
|
6
6
|
extend self
|
7
7
|
|
8
|
-
VERSION = '1.4.
|
8
|
+
VERSION = '1.4.2'
|
9
9
|
|
10
10
|
@color = {
|
11
11
|
'head1' => "1;31",
|
@@ -34,22 +34,22 @@ module Yac
|
|
34
34
|
@pri_path = File.join(CONFIG["root"],"/private/")
|
35
35
|
|
36
36
|
def new(args)
|
37
|
-
|
38
|
-
|
37
|
+
operate, target = args.shift.to_s , args.join(' ').to_s
|
38
|
+
|
39
39
|
case operate
|
40
40
|
when "-i" then init
|
41
|
-
when "-S" then search
|
42
|
-
when "-u" then update
|
43
|
-
when "-p" then push
|
44
|
-
when "-l" then log
|
45
|
-
when "-a" then add
|
46
|
-
when "-e" then edit
|
41
|
+
when "-S" then search target
|
42
|
+
when "-u" then update target
|
43
|
+
when "-p" then push target
|
44
|
+
when "-l" then log target
|
45
|
+
when "-a" then add target
|
46
|
+
when "-e" then edit target
|
47
|
+
when "-s" then shell target
|
48
|
+
when "-r" then rm target
|
49
|
+
when "-m" then mv args
|
47
50
|
when /^(help|-h|yac|--help)$/ then help
|
48
|
-
when "-s" then shell(target)
|
49
|
-
when "-r" then rm(target)
|
50
|
-
when "-m" then mv(args[1,args.size])
|
51
51
|
when "-v" then colorful("Yac Version: #{Yac::VERSION}",'notice')
|
52
|
-
else show
|
52
|
+
else show operate + ' ' + target
|
53
53
|
end
|
54
54
|
end
|
55
55
|
|
@@ -99,7 +99,22 @@ module Yac
|
|
99
99
|
end
|
100
100
|
|
101
101
|
def help
|
102
|
-
|
102
|
+
puts <<-DOC.gsub(/^(\s*)/,'').gsub(/^\|(\s*)/,'\1')
|
103
|
+
Usage:
|
104
|
+
| yac -i <keyword> init
|
105
|
+
| yac -S <keyword> search
|
106
|
+
| yac -u <keyword> update
|
107
|
+
| yac -p <keyword> push
|
108
|
+
| yac -l <keyword> log
|
109
|
+
| yac -a <keyword> add
|
110
|
+
| yac -e <keyword> edit
|
111
|
+
| yac -s <keyword> shell
|
112
|
+
| yac -r <keyword> delete<rm>
|
113
|
+
| yac -m <keyword> rename<mv>
|
114
|
+
| yac -h Show this help
|
115
|
+
| yac -v Show Version
|
116
|
+
| yac <keyword> Show
|
117
|
+
DOC
|
103
118
|
end
|
104
119
|
|
105
120
|
def shell(args)
|
@@ -127,15 +142,14 @@ module Yac
|
|
127
142
|
end
|
128
143
|
|
129
144
|
protected
|
130
|
-
def add_file(args
|
131
|
-
|
132
|
-
if args.include?('/') && args =~ /(@?)(?:(.*)\/)(.+)/ #choose directory
|
145
|
+
def add_file(args,suffix='')
|
146
|
+
if args.include?('/') && args =~ /(@?)(?:(.*)\/)(.+)/ #choose directory
|
133
147
|
prefix,path_name,file_name = $1,$2,$3
|
134
|
-
path = prefix.empty? ? @pri_path : @main_path
|
148
|
+
path = prefix.empty? ? @pri_path : @main_path #choose git path
|
135
149
|
# Use 'l/e' to choose 'linux/gentoo'
|
136
150
|
all_path = %x{
|
137
151
|
find -L #{path} -type d -iwholename '#{path}*#{path_name.gsub(/\//,'*/*')}*' -not -iwholename '*\/.git\/*' | sed 's/^.*\\/\\(private\\|main\\)\\//#{prefix}/'
|
138
|
-
}.
|
152
|
+
}.split("\n").map(&:strip).concat([prefix+path_name]).uniq
|
139
153
|
|
140
154
|
colorful("Which directory do you want to use:","notice")
|
141
155
|
choosed_path = choose_one(all_path)
|
@@ -184,7 +198,7 @@ module Yac
|
|
184
198
|
path.each do |x|
|
185
199
|
result.concat( %x{
|
186
200
|
find -L "#{x}" -type f -iwholename '#{x}*#{args.gsub(/\//,'*/*').sub(/^@/,'').strip}*' -not -iwholename '*\/.git\/*'| sed 's/^.*\\/\\(private\\|main\\)\\//#{x=~/main/ ? '@':'' }/'
|
187
|
-
}.
|
201
|
+
}.split("\n") )
|
188
202
|
end
|
189
203
|
|
190
204
|
if result.empty?
|
@@ -200,11 +214,11 @@ module Yac
|
|
200
214
|
# If use @ as prefix , only search private repository
|
201
215
|
result = args.sub!(/^@/,'') ? [] : %x(
|
202
216
|
find "#{@main_path}" -not -iwholename '*\/.git\/*' | xargs grep -HniP '#{args}' --binary-files=without-match | sed 's/^/@/g'
|
203
|
-
).
|
217
|
+
).split("\n")
|
204
218
|
|
205
219
|
result.concat %x(
|
206
220
|
find "#{@pri_path}" -not -iwholename '*\/.git\/*' | xargs grep -HniP '#{args}' --binary-files=without-match
|
207
|
-
).
|
221
|
+
).split("\n")
|
208
222
|
|
209
223
|
all_result = []
|
210
224
|
result.each do |x|
|
@@ -228,8 +242,8 @@ module Yac
|
|
228
242
|
return filename.strip
|
229
243
|
end
|
230
244
|
|
231
|
-
def confirm(
|
232
|
-
colorful("#{msg
|
245
|
+
def confirm(msg='')
|
246
|
+
colorful("#{msg}\nAre You Sure (Y/N) (q:quit):","notice",false)
|
233
247
|
return (STDIN.gets || exit) =~ /n|q/i ? false : true
|
234
248
|
end
|
235
249
|
|
data/yac.gemspec
CHANGED
@@ -2,11 +2,11 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{yac}
|
5
|
-
s.version = "1.4.
|
5
|
+
s.version = "1.4.2"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Jinzhu Zhang"]
|
9
|
-
s.date = %q{2009-
|
9
|
+
s.date = %q{2009-02-02}
|
10
10
|
s.default_executable = %q{yac}
|
11
11
|
s.description = %q{Yet Another Cheat: sexy command line tool for cheat sheet.}
|
12
12
|
s.email = %q{wosmvp@gmail.com}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: yac
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.4.
|
4
|
+
version: 1.4.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jinzhu Zhang
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
12
|
+
date: 2009-02-02 00:00:00 +08:00
|
13
13
|
default_executable:
|
14
14
|
dependencies: []
|
15
15
|
|