alacritty_themes 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0a65d2198260e8fff15d1516ec5b3bede0785965b1d5f71c4220a78dd1b7b6ac
4
- data.tar.gz: 0c0a10f1015796558ad3e2e8feab612ddebfbf953f0a06175950e121b9d1b225
3
+ metadata.gz: 809f2b971fa4be175eab0e47fcfec45b21bfaf55fdc6078a0fb5ac76a1bc1115
4
+ data.tar.gz: bd184bd28657c517e19c5652fc16bc77ada7a816891e9bd65c1410f774c93eda
5
5
  SHA512:
6
- metadata.gz: 1ccfa4ed1a65c3e3f36166e4269e836622501a4a21021222a57616deeb189ef3498d153742f99617d9a09070e3b9b4a1fd978508acd4a1dd8d228687343f4216
7
- data.tar.gz: 8d034f71838205fc8e8c0ab8e8b3aa15d1a347cd47550ea0873cf193f70816ac18e863973e4013543a8e61a999535abd665d8ef7c971254c981c91246bb44ab5
6
+ metadata.gz: 80557922ded3a31c0b596c7843c5d9c2375fcf9631dc51ffdb20be66016b9d0580e4781545898ad1a105222226bd9be8bf32af78a046d21c0a98e42bb94ce88a
7
+ data.tar.gz: 5a8ad5c833e1c8785ddc7f4ccbf97d19cefa1e0cb7597a7ca1d714d4152e3f55f9f9674d596cb19a0ec40a70203a2647083712af42f45dd6ab988252d79318ee
data/.rubocop.yml CHANGED
@@ -1,6 +1,9 @@
1
+ require:
2
+ - rubocop-rspec
3
+ - rubocop-rake
4
+
1
5
  AllCops:
2
6
  NewCops: enable
3
- SuggestExtensions: false
4
7
  TargetRubyVersion: 2.7.5
5
8
 
6
9
  Style/StringLiterals:
@@ -11,3 +14,6 @@ Style/StringLiteralsInInterpolation:
11
14
  Enabled: true
12
15
  EnforcedStyle: double_quotes
13
16
 
17
+ RSpec/DescribedClass:
18
+ Enabled: true
19
+ EnforcedStyle: explicit
data/.ruby-gemset CHANGED
@@ -1 +1 @@
1
- alacritty-themes
1
+ alacritty_themes
data/CHANGELOG.md CHANGED
@@ -1,10 +1,37 @@
1
1
  ## [Unreleased]
2
2
 
3
+ ## [0.1.2] - 2022-03-21
4
+
5
+ ### Added
6
+
7
+ - Add help option
8
+
9
+ ```ruby
10
+ alacritty_themes --help
11
+ ```
12
+
13
+ - Add version option
14
+
15
+ ```ruby
16
+ alacritty_themes --version
17
+ ```
18
+
19
+ - Add rubocop-rake
20
+ - Add rubocop-rspec
21
+
22
+ ### Changed
23
+
24
+ - rubocop config
25
+
3
26
  ## [0.1.1] - 2022-03-16
4
27
 
5
- - Add rubocop configuration
6
- - Add github workflow
28
+ ### Added
29
+
30
+ - Configure rubocop
31
+ - Configure github workflow
7
32
 
8
33
  ## [0.1.0] - 2022-03-15
9
34
 
35
+ ### Added
36
+
10
37
  - Initial commit
data/Gemfile CHANGED
@@ -8,3 +8,5 @@ gemspec
8
8
  gem "rake", "~> 12.0"
9
9
  gem "rspec", "~> 3.0"
10
10
  gem "rubocop", "~> 1.7"
11
+ gem "rubocop-rake", require: false
12
+ gem "rubocop-rspec", require: false
data/Gemfile.lock CHANGED
@@ -7,10 +7,15 @@ GEM
7
7
  remote: https://rubygems.org/
8
8
  specs:
9
9
  ast (2.4.2)
10
+ coderay (1.1.3)
10
11
  diff-lcs (1.5.0)
12
+ method_source (1.0.0)
11
13
  parallel (1.21.0)
12
14
  parser (3.1.1.0)
13
15
  ast (~> 2.4.1)
16
+ pry (0.13.1)
17
+ coderay (~> 1.1)
18
+ method_source (~> 1.0)
14
19
  rainbow (3.1.1)
15
20
  rake (12.3.3)
16
21
  regexp_parser (2.2.1)
@@ -39,6 +44,10 @@ GEM
39
44
  unicode-display_width (>= 1.4.0, < 3.0)
40
45
  rubocop-ast (1.16.0)
41
46
  parser (>= 3.1.1.0)
47
+ rubocop-rake (0.6.0)
48
+ rubocop (~> 1.0)
49
+ rubocop-rspec (2.9.0)
50
+ rubocop (~> 1.19)
42
51
  ruby-progressbar (1.11.0)
43
52
  unicode-display_width (2.1.0)
44
53
 
@@ -47,9 +56,12 @@ PLATFORMS
47
56
 
48
57
  DEPENDENCIES
49
58
  alacritty_themes!
59
+ pry (~> 0.13.1)
50
60
  rake (~> 12.0)
51
61
  rspec (~> 3.0)
52
62
  rubocop (~> 1.7)
63
+ rubocop-rake
64
+ rubocop-rspec
53
65
 
54
66
  BUNDLED WITH
55
67
  2.1.4
data/Rakefile CHANGED
@@ -6,6 +6,9 @@ require "rubocop/rake_task"
6
6
 
7
7
  RSpec::Core::RakeTask.new(:spec)
8
8
 
9
- RuboCop::RakeTask.new
9
+ RuboCop::RakeTask.new do |task|
10
+ task.requires << "rubocop-rake"
11
+ task.requires << "rubocop-rspec"
12
+ end
10
13
 
11
14
  task default: %i[spec rubocop]
@@ -9,7 +9,10 @@ Gem::Specification.new do |spec|
9
9
  spec.email = ["isc.juanvasquez@gmail.com"]
10
10
 
11
11
  spec.summary = "A collection of themes for alacritty"
12
- spec.description = "A collection of themes for alacritty"
12
+ spec.description = <<~DESC
13
+ Your favorite collection of themes for alacritty,
14
+ we initialize with a few themes and you can add more.
15
+ DESC
13
16
  spec.homepage = "https://github.com/juanvasquez/alacritty_themes"
14
17
  spec.license = "MIT"
15
18
  spec.required_ruby_version = Gem::Requirement.new(">= 2.7.5")
@@ -29,4 +32,6 @@ Gem::Specification.new do |spec|
29
32
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
30
33
  spec.require_paths = ["lib"]
31
34
  spec.metadata = { "rubygems_mfa_required" => "true" }
35
+
36
+ spec.add_development_dependency "pry", "~> 0.13.1"
32
37
  end
data/exe/alacritty_themes CHANGED
@@ -2,3 +2,5 @@
2
2
  # frozen_string_literal: true
3
3
 
4
4
  require "alacritty_themes"
5
+
6
+ AlacrittyThemes::CLI.new.start(ARGV)
@@ -0,0 +1,54 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "optparse"
4
+
5
+ module AlacrittyThemes
6
+ # Arguments parser
7
+ module Parser
8
+ class << self
9
+ def from(argv)
10
+ options = {}
11
+
12
+ options[:parser] = parser
13
+ add_banner
14
+ add_create_option(options)
15
+ add_version_option(options)
16
+ add_help_option(options)
17
+ parser.parse!(argv)
18
+
19
+ options
20
+ rescue OptionParser::ParseError => e
21
+ { command: :error, message: e.message }
22
+ end
23
+
24
+ def parser
25
+ @parser ||= OptionParser.new
26
+ end
27
+
28
+ def add_create_option(options)
29
+ parser.on("-c", "--create", "Creates file") do
30
+ options[:command] = :create
31
+ options[:message] = "Creating Alacritty file"
32
+ end
33
+ end
34
+
35
+ def add_version_option(options)
36
+ parser.on("-v", "--version", "Shows version") do
37
+ options[:command] = :version
38
+ options[:message] = "Alacritty Themes v#{AlacrittyThemes::VERSION}"
39
+ end
40
+ end
41
+
42
+ def add_help_option(options)
43
+ parser.on("-h", "--help", "Shows help") do
44
+ options[:command] = :help
45
+ options[:message] = parser.help
46
+ end
47
+ end
48
+
49
+ def add_banner
50
+ parser.banner = "Usage: alacritty_themes [options]"
51
+ end
52
+ end
53
+ end
54
+ end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module AlacrittyThemes
4
- VERSION = "0.1.1"
4
+ VERSION = "0.1.2"
5
5
  end
@@ -1,8 +1,26 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "alacritty_themes/version"
4
+ require_relative "alacritty_themes/parser"
4
5
 
5
6
  module AlacrittyThemes
6
7
  class Error < StandardError; end
7
- # Your code goes here...
8
+
9
+ # CLI entry point
10
+ class CLI
11
+ def start(argv)
12
+ options = parse_options(argv)
13
+ execute_command(options)
14
+ end
15
+
16
+ private
17
+
18
+ def parse_options(argv)
19
+ Parser.from(argv)
20
+ end
21
+
22
+ def execute_command(options)
23
+ puts options[:message]
24
+ end
25
+ end
8
26
  end
metadata CHANGED
@@ -1,16 +1,32 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alacritty_themes
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Juan Vasquez
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-03-17 00:00:00.000000000 Z
12
- dependencies: []
13
- description: A collection of themes for alacritty
11
+ date: 2022-03-22 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: pry
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: 0.13.1
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 0.13.1
27
+ description: |
28
+ Your favorite collection of themes for alacritty,
29
+ we initialize with a few themes and you can add more.
14
30
  email:
15
31
  - isc.juanvasquez@gmail.com
16
32
  executables:
@@ -36,6 +52,7 @@ files:
36
52
  - bin/setup
37
53
  - exe/alacritty_themes
38
54
  - lib/alacritty_themes.rb
55
+ - lib/alacritty_themes/parser.rb
39
56
  - lib/alacritty_themes/version.rb
40
57
  homepage: https://github.com/juanvasquez/alacritty_themes
41
58
  licenses: