srttool 0.0.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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 44e14f41076044ed866c3b30494a19b9584b452469a1bc1e70d371be4cff3812
4
+ data.tar.gz: 750e2f3e51663a75053fb48bd35fd6bb0cf7b2b60e091668488e7b2171096cd6
5
+ SHA512:
6
+ metadata.gz: 2f02890cf5195686d2ff37e03106cf40857f16dc11b14caceb028a681d447407d3338627a3fe2d9b50b53e5f8d848b3690ae32568d14785f8d1b9f74eeba2849
7
+ data.tar.gz: 37bba97115e9f5ddb20f8cce6e0923965decc62d7b9a4f6724e402bc8edaed00c9f25e948c998b21895fdbe55e0f0fdb3c19b04150c95f0ac35a559737a053f4
@@ -0,0 +1,3 @@
1
+ #! /usr/bin/env ruby
2
+
3
+ require 'srttool'
@@ -0,0 +1,25 @@
1
+ require 'clamp'
2
+ require 'srt'
3
+ require 'progressbar'
4
+
5
+ class SplitCommand < Clamp::Command
6
+ option ['-i', '--interval'], 'INTERVAL', 'Split interval (format: DD:MM:SS,ZZZ)', required: true
7
+ option ['-p', '--prefix'], 'PREFIX', 'Output file prefix', default: 'subtitle'
8
+ option '--output-dir', 'OUTPUT DIR', 'Output directory', default: './'
9
+ option '--starting-index', 'STARTING INDEX', 'Starting index on splitted SRTs', default: 1
10
+ option '--[no-]renumber', :flag, 'Renumber SRT sequence number', default: true
11
+
12
+ parameter 'SRT FILE PATH', 'SRT file path to split', attribute_name: :path
13
+
14
+ def execute
15
+ file = File.open(path)
16
+ srt = SRT::File.parse(file)
17
+ results = srt.split(every: interval, renumber: renumber?)
18
+ progress = ProgressBar.create(title: 'Saving subtitle', starting_at: 0, total: results.length)
19
+
20
+ results.each_with_index do |line, index|
21
+ File.write("#{output_dir}/#{prefix}-#{'%03d' % (starting_index.to_i+index)}.srt", line.to_s)
22
+ progress.increment
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,7 @@
1
+ require 'clamp'
2
+
3
+ require_relative 'split_command'
4
+
5
+ class SrttoolCommand < Clamp::Command
6
+ subcommand 'split', 'Split SRT file', SplitCommand
7
+ end
@@ -0,0 +1,3 @@
1
+ require_relative 'commands/srttool_command'
2
+
3
+ SrttoolCommand.run
@@ -0,0 +1,3 @@
1
+ module Srttool
2
+ VERSION = '0.0.2'
3
+ end
metadata ADDED
@@ -0,0 +1,91 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: srttool
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.2
5
+ platform: ruby
6
+ authors:
7
+ - Willy Jansen
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2020-12-27 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: clamp
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: srt
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: progressbar
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ description: Srttool is a cli command to manipulate subrip text (srt)
56
+ email:
57
+ - willyjansen@protonmail.com
58
+ executables:
59
+ - srttool
60
+ extensions: []
61
+ extra_rdoc_files: []
62
+ files:
63
+ - bin/srttool
64
+ - lib/commands/split_command.rb
65
+ - lib/commands/srttool_command.rb
66
+ - lib/srttool.rb
67
+ - lib/version.rb
68
+ homepage: https://github.com/willyjl/srttool
69
+ licenses:
70
+ - MIT
71
+ metadata: {}
72
+ post_install_message:
73
+ rdoc_options: []
74
+ require_paths:
75
+ - lib
76
+ required_ruby_version: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: '0'
81
+ required_rubygems_version: !ruby/object:Gem::Requirement
82
+ requirements:
83
+ - - ">="
84
+ - !ruby/object:Gem::Version
85
+ version: '0'
86
+ requirements: []
87
+ rubygems_version: 3.2.3
88
+ signing_key:
89
+ specification_version: 4
90
+ summary: cli tool for subrip text (srt)
91
+ test_files: []