sublime_text_kit 10.0.1 → 11.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.
Files changed (38) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/README.adoc +49 -70
  4. data/bin/sublime_text_kit +1 -3
  5. data/lib/sublime_text_kit/cli/actions/config.rb +35 -0
  6. data/lib/sublime_text_kit/cli/actions/metadata.rb +63 -0
  7. data/lib/sublime_text_kit/cli/actions/session.rb +26 -0
  8. data/lib/sublime_text_kit/cli/actions/snippets.rb +37 -0
  9. data/lib/sublime_text_kit/cli/actions/update.rb +42 -0
  10. data/lib/sublime_text_kit/cli/configuration/content.rb +45 -0
  11. data/lib/sublime_text_kit/cli/configuration/defaults.yml +3 -0
  12. data/lib/sublime_text_kit/cli/configuration/loader.rb +37 -0
  13. data/lib/sublime_text_kit/cli/parsers/assembler.rb +32 -0
  14. data/lib/sublime_text_kit/cli/parsers/core.rb +99 -0
  15. data/lib/sublime_text_kit/cli/parsers.rb +11 -0
  16. data/lib/sublime_text_kit/cli/shell.rb +58 -0
  17. data/lib/sublime_text_kit/container.rb +37 -0
  18. data/lib/sublime_text_kit/identity.rb +3 -2
  19. data/lib/sublime_text_kit/metadata/handler.rb +43 -0
  20. data/lib/sublime_text_kit/metadata/pathway.rb +19 -0
  21. data/lib/sublime_text_kit/metadata/serializers/project.rb +24 -0
  22. data/lib/sublime_text_kit/metadata/serializers/workspace.rb +27 -0
  23. data/lib/sublime_text_kit/sessions/rebuilder.rb +44 -0
  24. data/lib/sublime_text_kit/snippets/collector.rb +13 -19
  25. data/lib/sublime_text_kit/snippets/model.rb +31 -0
  26. data/lib/sublime_text_kit/snippets/printers/ascii_doc.rb +7 -5
  27. data/lib/sublime_text_kit/snippets/printers/markdown.rb +7 -3
  28. data/lib/sublime_text_kit/snippets/reader.rb +21 -0
  29. data/lib/sublime_text_kit.rb +11 -10
  30. data.tar.gz.sig +0 -0
  31. metadata +66 -24
  32. metadata.gz.sig +0 -0
  33. data/lib/sublime_text_kit/cli.rb +0 -182
  34. data/lib/sublime_text_kit/metadata/base.rb +0 -60
  35. data/lib/sublime_text_kit/metadata/project_metadata.rb +0 -20
  36. data/lib/sublime_text_kit/metadata/workspace_metadata.rb +0 -23
  37. data/lib/sublime_text_kit/session.rb +0 -44
  38. data/lib/sublime_text_kit/snippets/snippet.rb +0 -56
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SublimeTextKit
4
+ module CLI
5
+ # The main Command Line Interface (CLI) object.
6
+ class Shell
7
+ ACTIONS = {
8
+ config: Actions::Config.new,
9
+ metadata: Actions::Metadata.new,
10
+ session: Actions::Session.new,
11
+ snippets: Actions::Snippets.new,
12
+ update: Actions::Update.new
13
+ }.freeze
14
+
15
+ def initialize parser: Parsers::Assembler.new, actions: ACTIONS, container: Container
16
+ @parser = parser
17
+ @actions = actions
18
+ @container = container
19
+ end
20
+
21
+ def call arguments = []
22
+ perform parser.call(arguments)
23
+ rescue OptionParser::ParseError, Error => error
24
+ logger.error { error.message }
25
+ end
26
+
27
+ private
28
+
29
+ attr_reader :parser, :actions, :container
30
+
31
+ def perform configuration
32
+ case configuration
33
+ in action_config: Symbol => action then config action
34
+ in action_metadata: Symbol => kind then metadata kind
35
+ in action_session: true then session
36
+ in action_snippets: true then snippets
37
+ in action_update: true then update
38
+ in action_version: String => version then logger.info version
39
+ else usage
40
+ end
41
+ end
42
+
43
+ def config(action) = actions.fetch(__method__).call(action)
44
+
45
+ def metadata(kind) = actions.fetch(__method__).call(kind)
46
+
47
+ def session = actions.fetch(__method__).call
48
+
49
+ def snippets = actions.fetch(__method__).call
50
+
51
+ def update = actions.fetch(__method__).call
52
+
53
+ def usage = logger.unknown { parser.to_s }
54
+
55
+ def logger = container[__method__]
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "dry-container"
4
+ require "logger"
5
+ require "pastel"
6
+
7
+ module SublimeTextKit
8
+ # Provides a global gem container for injection into other objects.
9
+ module Container
10
+ extend Dry::Container::Mixin
11
+
12
+ register(:configuration, memoize: true) { CLI::Configuration::Loader.call }
13
+ register(:colorizer) { Pastel.new enabled: $stdout.tty? }
14
+ register(:kernel) { Kernel }
15
+
16
+ register :log_colors do
17
+ {
18
+ "DEBUG" => self[:colorizer].white.detach,
19
+ "INFO" => self[:colorizer].green.detach,
20
+ "WARN" => self[:colorizer].yellow.detach,
21
+ "ERROR" => self[:colorizer].red.detach,
22
+ "FATAL" => self[:colorizer].white.bold.on_red.detach,
23
+ "ANY" => self[:colorizer].white.bold.detach
24
+ }
25
+ end
26
+
27
+ register :logger do
28
+ Logger.new $stdout,
29
+ level: Logger.const_get(ENV.fetch("LOG_LEVEL", "INFO")),
30
+ formatter: (
31
+ lambda do |severity, _at, _name, message|
32
+ self[:log_colors][severity].call "#{message}\n"
33
+ end
34
+ )
35
+ end
36
+ end
37
+ end
@@ -5,7 +5,8 @@ module SublimeTextKit
5
5
  module Identity
6
6
  NAME = "sublime_text_kit"
7
7
  LABEL = "Sublime Text Kit"
8
- VERSION = "10.0.1"
9
- VERSION_LABEL = "#{LABEL} #{VERSION}"
8
+ VERSION = "11.0.2"
9
+ VERSION_LABEL = "#{LABEL} #{VERSION}".freeze
10
+ SUMMARY = "A command line interface for managing Sublime Text metadata."
10
11
  end
11
12
  end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "refinements/pathnames"
4
+
5
+ module SublimeTextKit
6
+ module Metadata
7
+ # Handles the creation, deletion, and recreation of metadata.
8
+ class Handler
9
+ using Refinements::Pathnames
10
+
11
+ def self.with_project project_dir, metadata_dir
12
+ new "sublime-project",
13
+ serializer: Serializers::Project.new(
14
+ Pathway[project_dir: project_dir, metadata_dir: metadata_dir]
15
+ )
16
+ end
17
+
18
+ def self.with_workspace project_dir, metadata_dir
19
+ new "sublime-workspace",
20
+ serializer: Serializers::Workspace.new(
21
+ Pathway[project_dir: project_dir, metadata_dir: metadata_dir]
22
+ )
23
+ end
24
+
25
+ def initialize extension, serializer:
26
+ @extension = extension
27
+ @serializer = serializer
28
+ end
29
+
30
+ def create = path.exist? ? path : path.write(JSON.dump(serializer.to_h))
31
+
32
+ def delete = path.exist? ? path.delete : path
33
+
34
+ def recreate = delete && create
35
+
36
+ private
37
+
38
+ attr_reader :extension, :serializer
39
+
40
+ def path = serializer.pathway.metadata_file(extension)
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SublimeTextKit
4
+ module Metadata
5
+ # Defines metadata pathways.
6
+ Pathway = Struct.new :project_dir, :metadata_dir, keyword_init: true do
7
+ using Refinements::Pathnames
8
+
9
+ def initialize *arguments
10
+ super
11
+ each_pair { |key, value| self[key] = Pathname(value).expand_path }
12
+ end
13
+
14
+ def project_name = project_dir.basename
15
+
16
+ def metadata_file(extension) = metadata_dir.join("#{project_name}.#{extension}")
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SublimeTextKit
4
+ module Metadata
5
+ module Serializers
6
+ # Serializes project metadata.
7
+ class Project
8
+ attr_reader :pathway
9
+
10
+ def initialize pathway
11
+ @pathway = pathway
12
+ end
13
+
14
+ def to_h
15
+ {
16
+ folders: [
17
+ {path: pathway.project_dir.to_s}
18
+ ]
19
+ }
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,27 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SublimeTextKit
4
+ module Metadata
5
+ module Serializers
6
+ # Serializes workspace metadata.
7
+ class Workspace
8
+ attr_reader :pathway
9
+
10
+ def initialize pathway
11
+ @pathway = pathway
12
+ end
13
+
14
+ def to_h
15
+ {
16
+ expanded_folders: [pathway.project_dir.to_s],
17
+ select_project: {
18
+ selected_items: [
19
+ [pathway.project_name.to_s, pathway.metadata_file("sublime-project").to_s]
20
+ ]
21
+ }
22
+ }
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "json"
4
+ require "refinements/pathnames"
5
+
6
+ module SublimeTextKit
7
+ module Sessions
8
+ # Manages the rebuilding of session information.
9
+ class Rebuilder
10
+ using Refinements::Pathnames
11
+
12
+ def initialize container: Container
13
+ @container = container
14
+ end
15
+
16
+ def call
17
+ session = read
18
+
19
+ return unless session.dig "workspaces", "recent_workspaces"
20
+
21
+ Pathname(metadata_dir).expand_path
22
+ .files("*.sublime-workspace")
23
+ .then do |workspaces|
24
+ session["workspaces"]["recent_workspaces"] = workspaces
25
+ write session
26
+ end
27
+ end
28
+
29
+ private
30
+
31
+ attr_reader :container
32
+
33
+ def read = source_path.exist? ? JSON(source_path.read) : {}
34
+
35
+ def write(json) = JSON.dump(json).then { |content| source_path.write content }
36
+
37
+ def metadata_dir = configuration.metadata_dir
38
+
39
+ def source_path = configuration.session_path
40
+
41
+ def configuration = container[__method__]
42
+ end
43
+ end
44
+ end
@@ -1,36 +1,30 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "pathname"
4
- require "rexml/document"
3
+ require "refinements/pathnames"
5
4
 
6
5
  module SublimeTextKit
7
6
  module Snippets
7
+ # Collects and loads all snippets into memory for further processing.
8
8
  class Collector
9
- DEFAULT_USER_PATH = "Library/Application Support/Sublime Text 3/Packages/User"
9
+ using Refinements::Pathnames
10
10
 
11
- def initialize model: Snippet, user_path: DEFAULT_USER_PATH, environment: ENV
12
- @model = model
13
- @user_path = user_path
14
- @environment = environment
15
- end
16
-
17
- def home_path
18
- Pathname environment.fetch("HOME")
19
- end
20
-
21
- def root_path
22
- home_path.join user_path
11
+ def initialize reader: Reader.new, container: Container
12
+ @reader = reader
13
+ @container = container
23
14
  end
24
15
 
25
16
  def call
26
- root_path.glob("*.sublime-snippet")
27
- .map { |path| model.new REXML::Document.new(path.read) }
28
- .sort_by(&:description)
17
+ configuration.user_dir
18
+ .files("*.sublime-snippet")
19
+ .map { |path| reader.call path }
20
+ .sort_by(&:description)
29
21
  end
30
22
 
31
23
  private
32
24
 
33
- attr_reader :model, :user_path, :environment
25
+ def configuration = container[__method__]
26
+
27
+ attr_reader :reader, :container
34
28
  end
35
29
  end
36
30
  end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SublimeTextKit
4
+ module Snippets
5
+ KEY_MAP = {
6
+ "content" => :content,
7
+ "tabTrigger" => :trigger,
8
+ "description" => :description,
9
+ "scope" => :scope
10
+ }.freeze
11
+
12
+ # Defines a snippet record.
13
+ Model = Struct.new(*KEY_MAP.values, keyword_init: true) do
14
+ def self.for document, key_map: KEY_MAP
15
+ root = document.root
16
+
17
+ return new unless root
18
+
19
+ root.elements
20
+ .reduce({}) { |attributes, element| attributes.merge element.name => element.text }
21
+ .transform_keys(key_map)
22
+ .then { |attributes| new(**attributes) }
23
+ end
24
+
25
+ def initialize *arguments
26
+ super
27
+ freeze
28
+ end
29
+ end
30
+ end
31
+ end
@@ -1,24 +1,26 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "rexml/document"
4
-
5
3
  module SublimeTextKit
6
4
  module Snippets
7
5
  module Printers
6
+ # Prints snippets in ASCII Doc format.
8
7
  class ASCIIDoc
9
- def initialize collector: Collector.new
8
+ def initialize collector: Collector.new, container: Container
10
9
  @collector = collector
10
+ @container = container
11
11
  end
12
12
 
13
13
  def call
14
14
  collector.call.each do |snippet|
15
- puts "* #{snippet.description} - `#{snippet.trigger}`\n"
15
+ logger.info "* #{snippet.description} - `#{snippet.trigger}`"
16
16
  end
17
17
  end
18
18
 
19
19
  private
20
20
 
21
- attr_reader :collector
21
+ attr_reader :collector, :container
22
+
23
+ def logger = container[__method__]
22
24
  end
23
25
  end
24
26
  end
@@ -3,20 +3,24 @@
3
3
  module SublimeTextKit
4
4
  module Snippets
5
5
  module Printers
6
+ # Prints snippets in Markdown format.
6
7
  class Markdown
7
- def initialize collector: Collector.new
8
+ def initialize collector: Collector.new, container: Container
8
9
  @collector = collector
10
+ @container = container
9
11
  end
10
12
 
11
13
  def call
12
14
  collector.call.each do |snippet|
13
- puts "- #{snippet.description} - `#{snippet.trigger}`\n"
15
+ logger.info "- #{snippet.description} - `#{snippet.trigger}`"
14
16
  end
15
17
  end
16
18
 
17
19
  private
18
20
 
19
- attr_reader :collector
21
+ attr_reader :collector, :container
22
+
23
+ def logger = container[__method__]
20
24
  end
21
25
  end
22
26
  end
@@ -0,0 +1,21 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "rexml/document"
4
+
5
+ module SublimeTextKit
6
+ module Snippets
7
+ # Reads snippet and loads record into memory.
8
+ class Reader
9
+ def initialize model: Model, document: REXML::Document
10
+ @model = model
11
+ @document = document
12
+ end
13
+
14
+ def call(path) = path.exist? ? model.for(document.new(path.read)) : model.new
15
+
16
+ private
17
+
18
+ attr_reader :model, :document
19
+ end
20
+ end
21
+ end
@@ -1,12 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "sublime_text_kit/identity"
4
- require "sublime_text_kit/metadata/base"
5
- require "sublime_text_kit/metadata/project_metadata"
6
- require "sublime_text_kit/metadata/workspace_metadata"
7
- require "sublime_text_kit/snippets/snippet"
8
- require "sublime_text_kit/snippets/collector"
9
- require "sublime_text_kit/snippets/printers/ascii_doc"
10
- require "sublime_text_kit/snippets/printers/markdown"
11
- require "sublime_text_kit/session"
12
- require "sublime_text_kit/cli"
3
+ require "zeitwerk"
4
+
5
+ Zeitwerk::Loader.for_gem
6
+ .then do |loader|
7
+ loader.inflector.inflect "ascii_doc" => "ASCIIDoc", "cli" => "CLI"
8
+ loader.setup
9
+ end
10
+
11
+ # Main namespace.
12
+ module SublimeTextKit
13
+ end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sublime_text_kit
3
3
  version: !ruby/object:Gem::Version
4
- version: 10.0.1
4
+ version: 11.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Brooke Kuhlmann
@@ -10,9 +10,9 @@ bindir: bin
10
10
  cert_chain:
11
11
  - |
12
12
  -----BEGIN CERTIFICATE-----
13
- MIIC/jCCAeagAwIBAgIBAzANBgkqhkiG9w0BAQsFADAlMSMwIQYDVQQDDBpicm9v
14
- a2UvREM9YWxjaGVtaXN0cy9EQz1pbzAeFw0yMDAzMTUxNDQ1MzJaFw0yMTAzMTUx
15
- NDQ1MzJaMCUxIzAhBgNVBAMMGmJyb29rZS9EQz1hbGNoZW1pc3RzL0RDPWlvMIIB
13
+ MIIC/jCCAeagAwIBAgIBBDANBgkqhkiG9w0BAQsFADAlMSMwIQYDVQQDDBpicm9v
14
+ a2UvREM9YWxjaGVtaXN0cy9EQz1pbzAeFw0yMTAzMTkxMjQ4MDZaFw0yMjAzMTkx
15
+ MjQ4MDZaMCUxIzAhBgNVBAMMGmJyb29rZS9EQz1hbGNoZW1pc3RzL0RDPWlvMIIB
16
16
  IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA6l1qpXTiomH1RfMRloyw7MiE
17
17
  xyVx/x8Yc3EupdH7uhNaTXQGyORN6aOY//1QXXMHIZ9tW74nZLhesWMSUMYy0XhB
18
18
  brs+KkurHnc9FnEJAbG7ebGvl/ncqZt72nQvaxpDxvuCBHgJAz+8i5wl6FhLw+oT
@@ -20,30 +20,58 @@ cert_chain:
20
20
  D5vkU0YlAm1r98BymuJlcQ1qdkVEI1d48ph4kcS0S0nv1RiuyVb6TCAR3Nu3VaVq
21
21
  3fPzZKJLZBx67UvXdbdicWPiUR75elI4PXpLIic3xytaF52ZJYyKZCNZJhNwfQID
22
22
  AQABozkwNzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQU0nzow9vc
23
- 2CdikiiE3fJhP/gY4ggwDQYJKoZIhvcNAQELBQADggEBAIHhAlD3po4sTYqacXaQ
24
- XI9jIhrfMy//2PgbHWcETtlJPBeNUbbSNBABcllUHKqYsVDlSvSmss034KSWNR8F
25
- bF1GcloicyvcCC4y6IoW4it0COAcdeaaxkxiBSgKdQFpff9REnDlIKK4uQ9lLxIo
26
- Y2G5xubiziKZkyfWFuSr67PIjW3Bu673D1JVBArhA1qbgQmYQcy1CkGOjo+iO8Nf
27
- 7u/QSfBHb+r/bXhKscDgPpnKwbUmvgO2+94zJG9KsrmIydlzYfsD09aXKx0t6Xy4
28
- 2XV8FRa7/JimI07sPLC13eLY3xd/aYTi85Z782KIA4j0G8XEEWAX0ouBhlXPocZv
29
- QWc=
23
+ 2CdikiiE3fJhP/gY4ggwDQYJKoZIhvcNAQELBQADggEBAEjpaOXHHp8s/7GL2qCb
24
+ YAs7urOLv9VHSPfQWAwaTMVnSsIf3Sw4xzISOP/mmfEPBPXtz61K5esrE/uTFtgb
25
+ FyjxQk2H0sEWgrRXGGNHBWQRhhEs7LP/TByoC15A0br++xLxRz4r7HBLGAWQQDpg
26
+ 66BJ2TBVjxS6K64tKbq7+ACyrOZGgTfNHACh4M076y0x0oRf/rwBrU39/KRfuhbb
27
+ cm+nNCEtO35gTmZ2bVDHLGvWazi3gJt6+huQjfXTCUUG2YYBxwhu+GPdAGQPxpf9
28
+ lkHilIrX69jq8wMPpBhlaw2mRmeSL50Wv5u6xVBvOHhXFSP1crXM95vfLhLyRYod
29
+ W2A=
30
30
  -----END CERTIFICATE-----
31
- date: 2021-02-20 00:00:00.000000000 Z
31
+ date: 2021-10-21 00:00:00.000000000 Z
32
32
  dependencies:
33
+ - !ruby/object:Gem::Dependency
34
+ name: dry-container
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '0.8'
40
+ type: :runtime
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - "~>"
45
+ - !ruby/object:Gem::Version
46
+ version: '0.8'
47
+ - !ruby/object:Gem::Dependency
48
+ name: pastel
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - "~>"
52
+ - !ruby/object:Gem::Version
53
+ version: '0.8'
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - "~>"
59
+ - !ruby/object:Gem::Version
60
+ version: '0.8'
33
61
  - !ruby/object:Gem::Dependency
34
62
  name: refinements
35
63
  requirement: !ruby/object:Gem::Requirement
36
64
  requirements:
37
65
  - - "~>"
38
66
  - !ruby/object:Gem::Version
39
- version: '8.0'
67
+ version: '8.5'
40
68
  type: :runtime
41
69
  prerelease: false
42
70
  version_requirements: !ruby/object:Gem::Requirement
43
71
  requirements:
44
72
  - - "~>"
45
73
  - !ruby/object:Gem::Version
46
- version: '8.0'
74
+ version: '8.5'
47
75
  - !ruby/object:Gem::Dependency
48
76
  name: runcom
49
77
  requirement: !ruby/object:Gem::Requirement
@@ -59,19 +87,19 @@ dependencies:
59
87
  - !ruby/object:Gem::Version
60
88
  version: '7.0'
61
89
  - !ruby/object:Gem::Dependency
62
- name: thor
90
+ name: zeitwerk
63
91
  requirement: !ruby/object:Gem::Requirement
64
92
  requirements:
65
93
  - - "~>"
66
94
  - !ruby/object:Gem::Version
67
- version: '0.20'
95
+ version: '2.5'
68
96
  type: :runtime
69
97
  prerelease: false
70
98
  version_requirements: !ruby/object:Gem::Requirement
71
99
  requirements:
72
100
  - - "~>"
73
101
  - !ruby/object:Gem::Version
74
- version: '0.20'
102
+ version: '2.5'
75
103
  description:
76
104
  email:
77
105
  - brooke@alchemists.io
@@ -86,16 +114,30 @@ files:
86
114
  - README.adoc
87
115
  - bin/sublime_text_kit
88
116
  - lib/sublime_text_kit.rb
89
- - lib/sublime_text_kit/cli.rb
117
+ - lib/sublime_text_kit/cli/actions/config.rb
118
+ - lib/sublime_text_kit/cli/actions/metadata.rb
119
+ - lib/sublime_text_kit/cli/actions/session.rb
120
+ - lib/sublime_text_kit/cli/actions/snippets.rb
121
+ - lib/sublime_text_kit/cli/actions/update.rb
122
+ - lib/sublime_text_kit/cli/configuration/content.rb
123
+ - lib/sublime_text_kit/cli/configuration/defaults.yml
124
+ - lib/sublime_text_kit/cli/configuration/loader.rb
125
+ - lib/sublime_text_kit/cli/parsers.rb
126
+ - lib/sublime_text_kit/cli/parsers/assembler.rb
127
+ - lib/sublime_text_kit/cli/parsers/core.rb
128
+ - lib/sublime_text_kit/cli/shell.rb
129
+ - lib/sublime_text_kit/container.rb
90
130
  - lib/sublime_text_kit/identity.rb
91
- - lib/sublime_text_kit/metadata/base.rb
92
- - lib/sublime_text_kit/metadata/project_metadata.rb
93
- - lib/sublime_text_kit/metadata/workspace_metadata.rb
94
- - lib/sublime_text_kit/session.rb
131
+ - lib/sublime_text_kit/metadata/handler.rb
132
+ - lib/sublime_text_kit/metadata/pathway.rb
133
+ - lib/sublime_text_kit/metadata/serializers/project.rb
134
+ - lib/sublime_text_kit/metadata/serializers/workspace.rb
135
+ - lib/sublime_text_kit/sessions/rebuilder.rb
95
136
  - lib/sublime_text_kit/snippets/collector.rb
137
+ - lib/sublime_text_kit/snippets/model.rb
96
138
  - lib/sublime_text_kit/snippets/printers/ascii_doc.rb
97
139
  - lib/sublime_text_kit/snippets/printers/markdown.rb
98
- - lib/sublime_text_kit/snippets/snippet.rb
140
+ - lib/sublime_text_kit/snippets/reader.rb
99
141
  homepage: https://www.alchemists.io/projects/sublime_text_kit
100
142
  licenses:
101
143
  - Apache-2.0
@@ -119,7 +161,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
119
161
  - !ruby/object:Gem::Version
120
162
  version: '0'
121
163
  requirements: []
122
- rubygems_version: 3.2.11
164
+ rubygems_version: 3.2.29
123
165
  signing_key:
124
166
  specification_version: 4
125
167
  summary: A command line interface for managing Sublime Text metadata.
metadata.gz.sig CHANGED
Binary file