yac 1.4.1 → 1.4.2
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
|