phtools 0.0.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: eb1f24ab18973add851b7344ae7d8ab270af4b61
4
- data.tar.gz: f4e652df21838dd666ad46c96ca91e565c272ff4
3
+ metadata.gz: c23fc77ccd84eca05e4f5af8d401cd2bd762abce
4
+ data.tar.gz: ad0bfd1610e9f7e399c8a8d7a52f9a26257df5ce
5
5
  SHA512:
6
- metadata.gz: 7692b6f420d519d513196ad42dc8dce4c4484aeb62b8a05cf0392407f567b6c365855fb61e5352b6a5dfe304a2ad2295a9bc9fbc154d609de8c05ba409108116
7
- data.tar.gz: e570f076b382a3642d7c52b22edd0faa1e64702650fda2ca89cf07ad872afa4a7273767cedcc47efc1c9ee43425161f1bb5218cd2420b43e84c931d4aa360eea
6
+ metadata.gz: 0444a7c8e9cf5b25c4a3ef9973691a5cfb675f52284012d219c1a5a85c77500e643cf3a192915bf12b83fac12bc1a44d830171fd4aa25bd1484a8f792d1ac9b7
7
+ data.tar.gz: adb4b055f1e13f32f343f7cfa0cc5aa5bbb7d6ed13a3997b55111aad4d218936b799b9e845ddddf7a556cbc1df9af22e8c52fa869085105e1288a11e5315e654
data/.gitignore ADDED
@@ -0,0 +1,119 @@
1
+ # *** GLOBAL ***
2
+ # *** Windows
3
+ Thumbs.db
4
+ ehthumbs.db
5
+
6
+ # Folder config file
7
+ Desktop.ini
8
+
9
+ # Recycle Bin used on file shares
10
+ $RECYCLE.BIN/
11
+
12
+ # Windows Installer files
13
+ *.cab
14
+ *.msi
15
+ *.msm
16
+ *.msp
17
+ *.bak
18
+
19
+ # *** Linux
20
+ *~
21
+ # KDE directory preferences
22
+ .directory
23
+
24
+ # *** OSX
25
+ .DS_Store
26
+ .AppleDouble
27
+ .LSOverride
28
+
29
+ # Icon must end with two \r
30
+ Icon
31
+
32
+ # Thumbnails
33
+ ._*
34
+
35
+ # Files that might appear on external disk
36
+ .Spotlight-V100
37
+ .Trashes
38
+
39
+ # Directories potentially created on remote AFP share
40
+ .AppleDB
41
+ .AppleDesktop
42
+ Network Trash Folder
43
+ Temporary Items
44
+ .apdisk
45
+
46
+ .picasa.ini
47
+
48
+ # *** Ignore tags created by etags, ctags, gtags (GNU global) and cscope
49
+ TAGS
50
+ !TAGS/
51
+ tags
52
+ !tags/
53
+ gtags.files
54
+ GTAGS
55
+ GRTAGS
56
+ GPATH
57
+ cscope.files
58
+ cscope.out
59
+ cscope.in.out
60
+ cscope.po.out
61
+
62
+ # *** Vagrant
63
+ .vagrant/
64
+
65
+ # *** packer
66
+ packer_cache/
67
+ *.box
68
+
69
+ # *** emacs
70
+ *~
71
+ \#*
72
+ .\#*
73
+
74
+ # *** VIM
75
+ *.swp
76
+ [._]*.s[a-w][a-z]
77
+ [._]s[a-w][a-z]
78
+ *.un~
79
+ Session.vim
80
+ .netrwhist
81
+ *~
82
+
83
+ # *** ruby
84
+ *.gem
85
+ *.rbc
86
+ /.config
87
+ /coverage/
88
+ /InstalledFiles
89
+ /pkg/
90
+ /spec/reports/
91
+ /test/tmp/
92
+ /test/version_tmp/
93
+ /tmp/
94
+
95
+ ## Documentation cache and generated files:
96
+ /.yardoc/
97
+ /_yardoc/
98
+ /doc/
99
+ /rdoc/
100
+
101
+ ## Environment normalisation:
102
+ /.bundle/
103
+ /lib/bundler/man/
104
+
105
+ # for a library or gem, you might want to ignore these files since the code is
106
+ # intended to run in multiple environments; otherwise, check them in:
107
+ # .ruby-version
108
+ # .ruby-gemset
109
+
110
+ # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
111
+ .rvmrc
112
+ # tmux
113
+ tmux-*.log
114
+
115
+ rerun.txt
116
+
117
+ ## gem development with bundle
118
+ /Gemfile.lock
119
+ /pkg/
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --format Fuubar
2
+ --color
data/.travis.yml ADDED
@@ -0,0 +1,5 @@
1
+ sudo: false
2
+ language: ruby
3
+ rvm:
4
+ - 2.3.1
5
+ before_install: gem install bundler -v 1.12.5
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ # Specify your gem's dependencies in phtools.gemspec
4
+ gemspec
data/Guardfile ADDED
@@ -0,0 +1,19 @@
1
+ # A sample Guardfile
2
+ # More info at https://github.com/guard/guard#readme
3
+
4
+ # notification :terminal_notifier, app_name: "ftools"
5
+ notification :tmux, display_message: false
6
+
7
+ guard 'cucumber' do
8
+ watch(%r{^features/.+\.feature$})
9
+ watch(%r{^features/support/.+$}) { 'features' }
10
+ watch(%r{^features/step_definitions/(.+)_steps\.rb$}) { |m| Dir[File.join("**/{m[1]}.feature")][0] || 'features' }
11
+ watch(%r{^bin/(.+)$}) { |m| "features/#{m[1]}.feature" }
12
+ end
13
+
14
+ guard :rspec, cmd: "bundle exec rspec" do
15
+ watch(%r{^spec/.+_spec\.rb$})
16
+ watch(%r{^bin/(.+)$}) { |m| "spec/#{m[1]}_spec.rb" }
17
+ watch(%r{^lib/(.+)\.rb$}) { |m| "spec/lib/#{m[1]}_spec.rb" }
18
+ watch('spec/spec_helper.rb') { "spec" }
19
+ end
data/LICENSE.txt ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2012 ANDREW BIZYAEV (aka ANB)
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.md ADDED
@@ -0,0 +1,6 @@
1
+ # ANB's phtools
2
+
3
+ A bundle of small CLI tools for arranging, renaming, tagging of the photo and video files. Helps keep photo-video assets in order.
4
+
5
+ ## Install for usage
6
+ gem install phtools
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task :default => :spec
data/bin/console ADDED
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "bundler/setup"
4
+ require "phtools"
5
+
6
+ # You can add fixtures and/or initialization code here to make experimenting
7
+ # with your gem easier. You can also use a different console, if you like.
8
+
9
+ # (If you use this, don't forget to add pry to your Gemfile!)
10
+ require "pry"
11
+ Pry.start
12
+
13
+ #require "irb"
14
+ #IRB.start
data/bin/setup ADDED
@@ -0,0 +1,8 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+ IFS=$'\n\t'
4
+ set -vx
5
+
6
+ bundle install
7
+
8
+ # Do any other automated setup that you need to do here
data/bin/stmux ADDED
@@ -0,0 +1,24 @@
1
+ CURRENT_SESSION=${PWD##*/}
2
+
3
+ # Start up the tmux session with specific name
4
+ tmux new-session -d -s $CURRENT_SESSION
5
+
6
+ # VIM window
7
+ tmux send-keys 'vim' 'C-m'
8
+ tmux rename-window vim
9
+
10
+ # Autotest window
11
+ tmux new-window
12
+ tmux rename-window guard
13
+ tmux send-keys 'guard'
14
+
15
+ # code window for running tests
16
+ tmux new-window
17
+ tmux rename-window pry
18
+ tmux send-keys 'pry' 'C-m'
19
+
20
+ # Select the first window
21
+ tmux select-window -t 1
22
+
23
+ # Attach the tmux session
24
+ tmux attach -t $CURRENT_SESSION
@@ -1,7 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
  # encoding: UTF-8
3
3
  # (c) ANB Andrew Bizyaev
4
+ require "phtools"
4
5
 
5
- require 'phtools'
6
-
7
- puts PhTools.say
6
+ puts PhTools::about
@@ -0,0 +1,4 @@
1
+
2
+ module PhTools
3
+ VERSION = '0.1.1'
4
+ end
data/lib/phtools.rb CHANGED
@@ -1,9 +1,10 @@
1
1
  #!/usr/bin/env ruby
2
2
  # encoding: UTF-8
3
3
  # (c) ANB Andrew Bizyaev
4
+ require "phtools/version"
4
5
 
5
- class PhTools
6
- def self.say
7
- "I'm just a placeholder for upcoming phtools release..."
6
+ module PhTools
7
+ def self.about
8
+ %Q{\nphtools v#{PhTools::VERSION} is a bundle of small CLI tools for arranging, renaming, tagging of the photo and video files. Helps to keep your photo-video assets in order. \nPlease run phtools in a terminal via CLI commands: phls, phrename, phbackup, pharrange, phclname, phevent, phfixdate, phfixmd, phmtags, phtagset.\nFor more information run these commands with -h option.}
8
9
  end
9
10
  end
data/phtools.gemspec ADDED
@@ -0,0 +1,55 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'phtools/version'
5
+ require 'rbconfig'
6
+
7
+ Gem::Specification.new do |spec|
8
+
9
+ spec.name = 'phtools'
10
+ spec.version = PhTools::VERSION
11
+ spec.date = '2016-08-23'
12
+ spec.authors = ["Andrew Bizyaev"]
13
+ spec.email = ["andrew.bizyaev@gmail.com"]
14
+ spec.license = 'MIT'
15
+
16
+ spec.summary = %q{A set of usefull tools to manipulate photo-video files.}
17
+ spec.description = %q{A bundle of small CLI tools for arranging, renaming, tagging of the photo and video files. Helps to keep your photo-video assets in order.}
18
+ spec.homepage = "https://github.com/AndrewBiz/phtools.git"
19
+
20
+ spec.requirements = %q{ExifTool by Phil Harvey (http://www.sno.phy.queensu.ca/~phil/exiftool/)}
21
+
22
+ spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
23
+ spec.bindir = "exe"
24
+ spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
25
+ spec.require_paths = ["lib"]
26
+
27
+ spec.required_ruby_version = '>= 2.0.0'
28
+
29
+ spec.add_development_dependency 'bundler', '~> 1.12'
30
+ spec.add_development_dependency 'rake', '~> 10.0'
31
+ spec.add_development_dependency 'rspec', '~> 2.9'
32
+ spec.add_development_dependency 'rspec-its', '~> 1.0'
33
+ spec.add_development_dependency 'cucumber', '~> 1.3'
34
+ spec.add_development_dependency 'aruba', '~> 0.6.0'
35
+ spec.add_development_dependency 'fuubar'
36
+ spec.add_development_dependency 'rubocop'
37
+ spec.add_development_dependency 'pry'
38
+
39
+ if RbConfig::CONFIG['target_os'] =~ /darwin/i
40
+ spec.add_development_dependency 'terminal-notifier-guard'
41
+ elsif RbConfig::CONFIG['target_os'] =~ /linux/i
42
+ spec.add_development_dependency 'libnotify', '~> 0.8'
43
+ elsif RbConfig::CONFIG['target_os'] =~ /mswin|mingw/i
44
+ spec.add_development_dependency 'win32console'
45
+ spec.add_development_dependency 'rb-notifu', '>= 0'
46
+ end
47
+
48
+ spec.add_runtime_dependency 'nesty', '~> 1.0'
49
+ spec.add_runtime_dependency 'docopt', '~> 0.5'
50
+ # spec.add_runtime_dependency 'mini_exiftool', '~> 2.4'
51
+ spec.add_runtime_dependency 'activesupport', '~> 3.2'
52
+ spec.add_runtime_dependency 'i18n'
53
+
54
+ spec.post_install_message = %q{Thanks for installing! Don't forget to get the ExifTool by Phil Harvey (http://www.sno.phy.queensu.ca/~phil/exiftool/) installed on your system!}
55
+ end
metadata CHANGED
@@ -1,30 +1,241 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: phtools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Bizyaev
8
8
  autorequire:
9
- bindir: bin
9
+ bindir: exe
10
10
  cert_chain: []
11
11
  date: 2016-08-23 00:00:00.000000000 Z
12
- dependencies: []
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.12'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.12'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '2.9'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '2.9'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rspec-its
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '1.0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '1.0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: cucumber
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.3'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '1.3'
83
+ - !ruby/object:Gem::Dependency
84
+ name: aruba
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: 0.6.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.6.0
97
+ - !ruby/object:Gem::Dependency
98
+ name: fuubar
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: rubocop
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ type: :development
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - ">="
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: pry
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ">="
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">="
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: terminal-notifier-guard
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ type: :development
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: nesty
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '1.0'
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '1.0'
167
+ - !ruby/object:Gem::Dependency
168
+ name: docopt
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: '0.5'
174
+ type: :runtime
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: '0.5'
181
+ - !ruby/object:Gem::Dependency
182
+ name: activesupport
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - "~>"
186
+ - !ruby/object:Gem::Version
187
+ version: '3.2'
188
+ type: :runtime
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - "~>"
193
+ - !ruby/object:Gem::Version
194
+ version: '3.2'
195
+ - !ruby/object:Gem::Dependency
196
+ name: i18n
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - ">="
200
+ - !ruby/object:Gem::Version
201
+ version: '0'
202
+ type: :runtime
203
+ prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - ">="
207
+ - !ruby/object:Gem::Version
208
+ version: '0'
13
209
  description: A bundle of small CLI tools for arranging, renaming, tagging of the photo
14
- and video files. Helps keep photo-video assets in order.
15
- email: andrew.bizyaev@gmail.com
210
+ and video files. Helps to keep your photo-video assets in order.
211
+ email:
212
+ - andrew.bizyaev@gmail.com
16
213
  executables:
17
214
  - phtools
18
215
  extensions: []
19
216
  extra_rdoc_files: []
20
217
  files:
21
- - bin/phtools
218
+ - ".gitignore"
219
+ - ".rspec"
220
+ - ".travis.yml"
221
+ - Gemfile
222
+ - Guardfile
223
+ - LICENSE.txt
224
+ - README.md
225
+ - Rakefile
226
+ - bin/console
227
+ - bin/setup
228
+ - bin/stmux
229
+ - exe/phtools
22
230
  - lib/phtools.rb
23
- homepage: ''
231
+ - lib/phtools/version.rb
232
+ - phtools.gemspec
233
+ homepage: https://github.com/AndrewBiz/phtools.git
24
234
  licenses:
25
235
  - MIT
26
236
  metadata: {}
27
- post_install_message:
237
+ post_install_message: Thanks for installing! Don't forget to get the ExifTool by Phil
238
+ Harvey (http://www.sno.phy.queensu.ca/~phil/exiftool/) installed on your system!
28
239
  rdoc_options: []
29
240
  require_paths:
30
241
  - lib
@@ -38,7 +249,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
38
249
  - - ">="
39
250
  - !ruby/object:Gem::Version
40
251
  version: '0'
41
- requirements: []
252
+ requirements:
253
+ - ExifTool by Phil Harvey (http://www.sno.phy.queensu.ca/~phil/exiftool/)
42
254
  rubyforge_project:
43
255
  rubygems_version: 2.6.6
44
256
  signing_key: