lolcommits 0.1.3 → 0.1.4
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +4 -0
- data/README.md +3 -0
- data/bin/lolcommits +17 -11
- data/lib/lolcommits.rb +6 -5
- data/lib/lolcommits/version.rb +1 -1
- metadata +2 -2
data/CHANGELOG
CHANGED
data/README.md
CHANGED
@@ -68,6 +68,9 @@ Please add your own lolcommit! Add to the [People Using Lolcommits](https://gith
|
|
68
68
|
lolcommits has some options for additional lulz. You can enable via
|
69
69
|
environment variables.
|
70
70
|
|
71
|
+
* Set webcam device on mac - set `LOLCOMMITS_DEVICE` environment variable.
|
72
|
+
* Set delay persistently (for slow to warmup webcams) - set
|
73
|
+
`LOLCOMMITS_DELAY` var to time in seconds.
|
71
74
|
* TRANZLATE YOAR COMMIT_MSG TO LOLSPEKK - set
|
72
75
|
`LOLCOMMITS_TRANZLATE=1`.
|
73
76
|
|
data/bin/lolcommits
CHANGED
@@ -53,18 +53,18 @@ def do_enable
|
|
53
53
|
puts "You don't appear to be in the base directory of a git project."
|
54
54
|
exit 1
|
55
55
|
end
|
56
|
-
|
56
|
+
|
57
57
|
#its possible a hooks dir doesnt exist, so create it if so
|
58
58
|
if not File.directory?(HOOK_DIR)
|
59
59
|
Dir.mkdir(HOOK_DIR)
|
60
60
|
end
|
61
|
-
|
61
|
+
|
62
62
|
if File.exists? HOOK_PATH
|
63
63
|
puts "A post-commit hook already exists for this project."
|
64
64
|
#TODO: disambiguate between OUR post-commit hook and something else
|
65
65
|
exit 1
|
66
66
|
end
|
67
|
-
|
67
|
+
|
68
68
|
doc = "#!/bin/sh\nlolcommits --capture\n"
|
69
69
|
File.open(HOOK_PATH, 'w') {|f| f.write(doc) }
|
70
70
|
FileUtils.chmod 0755, HOOK_PATH
|
@@ -93,12 +93,13 @@ end
|
|
93
93
|
#
|
94
94
|
def do_capture
|
95
95
|
capture_delay = Choice.choices[:delay] || ENV['LOLCOMMITS_DELAY'] || 0
|
96
|
+
capture_device = Choice.choices[:device] || ENV['LOLCOMMITS_DEVICE'] || nil
|
96
97
|
|
97
98
|
if Choice.choices[:test]
|
98
99
|
puts "*** capturing in test mode"
|
99
|
-
Lolcommits.capture(capture_delay, true, Choice.choices[:msg], Choice.choices[:sha])
|
100
|
+
Lolcommits.capture(capture_delay, capture_device, true, Choice.choices[:msg], Choice.choices[:sha])
|
100
101
|
else
|
101
|
-
Lolcommits.capture(capture_delay)
|
102
|
+
Lolcommits.capture(capture_delay, capture_device)
|
102
103
|
end
|
103
104
|
end
|
104
105
|
|
@@ -113,14 +114,14 @@ Choice.options do
|
|
113
114
|
action { do_enable }
|
114
115
|
desc "install lolcommits for this repo"
|
115
116
|
end
|
116
|
-
|
117
|
+
|
117
118
|
option :disable do
|
118
119
|
long "--disable"
|
119
120
|
short '-d'
|
120
121
|
action { do_disable }
|
121
122
|
desc "uninstall lolcommits for this repo"
|
122
123
|
end
|
123
|
-
|
124
|
+
|
124
125
|
option :capture do
|
125
126
|
long "--capture"
|
126
127
|
short '-c'
|
@@ -135,7 +136,7 @@ Choice.options do
|
|
135
136
|
Launchy.open Lolcommits.most_recent
|
136
137
|
end
|
137
138
|
end
|
138
|
-
|
139
|
+
|
139
140
|
option :browse do
|
140
141
|
long "--browse"
|
141
142
|
short "-b"
|
@@ -144,19 +145,19 @@ Choice.options do
|
|
144
145
|
Launchy.open Lolcommits.loldir
|
145
146
|
end
|
146
147
|
end
|
147
|
-
|
148
|
+
|
148
149
|
option :test do
|
149
150
|
long "--test"
|
150
151
|
desc "Run in test mode"
|
151
152
|
end
|
152
|
-
|
153
|
+
|
153
154
|
option :sha do
|
154
155
|
desc "pass SHA manually (for test only)"
|
155
156
|
long "--sha"
|
156
157
|
short '-s'
|
157
158
|
default "test-#{rand(10 ** 10)}"
|
158
159
|
end
|
159
|
-
|
160
|
+
|
160
161
|
option :msg do
|
161
162
|
desc "pass commit msg manually (for test only)"
|
162
163
|
long "--msg"
|
@@ -170,6 +171,11 @@ Choice.options do
|
|
170
171
|
cast Integer
|
171
172
|
short '-w'
|
172
173
|
end
|
174
|
+
|
175
|
+
option :device do
|
176
|
+
long "--device=DEVICE"
|
177
|
+
desc "the device name used to take the snapshot (only mac)"
|
178
|
+
end
|
173
179
|
end
|
174
180
|
|
175
181
|
#
|
data/lib/lolcommits.rb
CHANGED
@@ -33,12 +33,12 @@ module Lolcommits
|
|
33
33
|
loldir, commit_sha, commit_msg = parse_git
|
34
34
|
Dir.glob(File.join loldir, "*").max_by {|f| File.mtime(f)}
|
35
35
|
end
|
36
|
-
|
36
|
+
|
37
37
|
def loldir(dir='.')
|
38
38
|
loldir, commit_sha, commit_msg = parse_git
|
39
39
|
return loldir
|
40
40
|
end
|
41
|
-
|
41
|
+
|
42
42
|
def parse_git(dir='.')
|
43
43
|
g = Git.open('.')
|
44
44
|
commit = g.log.first
|
@@ -50,7 +50,7 @@ module Lolcommits
|
|
50
50
|
return loldir, commit_sha, commit_msg
|
51
51
|
end
|
52
52
|
|
53
|
-
def capture(capture_delay=0, is_test=false, test_msg=nil, test_sha=nil)
|
53
|
+
def capture(capture_delay=0, capture_device=nil, is_test=false, test_msg=nil, test_sha=nil)
|
54
54
|
#
|
55
55
|
# Read the git repo information from the current working directory
|
56
56
|
#
|
@@ -61,7 +61,7 @@ module Lolcommits
|
|
61
61
|
commit_sha = test_sha
|
62
62
|
loldir = File.join LOLBASEDIR, "test"
|
63
63
|
end
|
64
|
-
|
64
|
+
|
65
65
|
#
|
66
66
|
# lolspeak translate the message
|
67
67
|
#
|
@@ -86,7 +86,8 @@ module Lolcommits
|
|
86
86
|
snapshot_loc = File.join loldir, "tmp_snapshot.jpg"
|
87
87
|
if is_mac?
|
88
88
|
imagesnap_bin = File.join LOLCOMMITS_ROOT, "ext", "imagesnap", "imagesnap"
|
89
|
-
|
89
|
+
capture_device = "-d '#{capture_device}'" if capture_device
|
90
|
+
system("#{imagesnap_bin} -q #{snapshot_loc} -w #{capture_delay} #{capture_device}")
|
90
91
|
elsif is_linux?
|
91
92
|
tmpdir = File.expand_path "#{loldir}/tmpdir#{rand(1000)}/"
|
92
93
|
FileUtils.mkdir_p( tmpdir )
|
data/lib/lolcommits/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lolcommits
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.4
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-05-
|
12
|
+
date: 2012-05-28 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|