ruby_grammar_builder 0.0.5 → 1.1.3

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: 3247f1b982359d1aae23982de398a2655d7b71e387c7ad9dc998b3c61ea870c3
4
- data.tar.gz: 2b52ec33ed5cd747f8225d65c19ab725e5976cd7f61fe6755245ddbc29d52a58
3
+ metadata.gz: 4bc116a2b7fc4ad4c8c2b1dc21649077ef79997acb5a879b085d1a54ce4e0283
4
+ data.tar.gz: 490041ab03dc6fe548a05c3be48f83fcbca1eaeb92c7cb5a0074bbbca9e56b49
5
5
  SHA512:
6
- metadata.gz: 8bcde534f109024f2f557e3e8fb8a93a5f331b16395f1ffbf989b36deb3df52bcc2565f11c91561f728c3a6b723a345ceca2e127b39b27f93cc94575615b2ea4
7
- data.tar.gz: 9fa058a05b3344cbf210b4c50f55944a927fd3f0957e9529aed0f80f01965189fa0c4f99e538c35bdcb020ccf9c3969b84198dc730ebe3d8fa77d12103bf83a9
6
+ metadata.gz: 56fe81abf11819e9ea602b59139ad75294ce90304819424a211b945aeaeb29385e473165ea31e2fb4069c8f70a55da161c71230418de010edb8d23bb5f6a0dca
7
+ data.tar.gz: 7301dce1d7e8728aa77c389a652591f71e9ca8fd711010094de7f912574a615b22211150db500030b94641d07e4fbfa411e239295d9f78f505e47dd719abd3d9
@@ -21,6 +21,7 @@ class Grammar
21
21
  attr_accessor :repository
22
22
  attr_accessor :name
23
23
  attr_accessor :scope_name
24
+ attr_accessor :ending
24
25
 
25
26
  #
26
27
  # Create a new Exportable Grammar (Grammar Partial)
@@ -125,6 +126,7 @@ class Grammar
125
126
  @name = keys[:name]
126
127
  @scope_name = keys[:scope_name]
127
128
  @repository = {}
129
+ @ending = keys[:ending] || @scope_name.split('.').drop(1).join('.')
128
130
 
129
131
  keys.delete :name
130
132
  keys.delete :scope_name
@@ -458,13 +460,13 @@ class Grammar
458
460
  inherit_or_embedded: :embedded,
459
461
  generate_tags: true,
460
462
  syntax_format: :json,
461
- syntax_name: "#{@scope_name.split('.').drop(1).join('.')}",
463
+ syntax_name: "#{@ending}",
462
464
  syntax_dir: options[:directory],
463
- tag_name: "#{@scope_name.split('.').drop(1).join('.')}_scopes.txt",
464
465
  tag_dir: options[:directory],
465
466
  should_lint: true,
466
467
  }
467
468
  options = default.merge(options)
469
+ options[:tag_name] ||= options[:syntax_name] + "_scopes.txt"
468
470
 
469
471
  output = generate(options)
470
472
 
@@ -723,7 +723,7 @@ class PatternBase
723
723
  end
724
724
 
725
725
  # if the reference does exist, then replace it with it's number
726
- "\\#{references[match_reference]}"
726
+ "\\k<#{references[match_reference]}>"
727
727
  end
728
728
 
729
729
  # check for a subroutine to the Nth group, replace it with `\N`
@@ -11,7 +11,7 @@ class AddEnding < GrammarTransform
11
11
  return pattern.map { |v| pre_transform(v, options) } if pattern.is_a? Array
12
12
  return pattern unless pattern.is_a? PatternBase
13
13
 
14
- ending = options[:grammar].scope_name.split(".")[-1]
14
+ ending = options[:grammar].ending
15
15
  pattern.transform_tag_as do |tag_as|
16
16
  tag_as.split(" ").map do |tag|
17
17
  next tag if tag.end_with?(ending)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby_grammar_builder
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
4
+ version: 1.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jeff Hykin
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2019-09-16 00:00:00.000000000 Z
12
+ date: 2022-05-23 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: deep_clone
@@ -98,7 +98,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
98
98
  - !ruby/object:Gem::Version
99
99
  version: '0'
100
100
  requirements: []
101
- rubygems_version: 3.2.16
101
+ rubygems_version: 3.2.26
102
102
  signing_key:
103
103
  specification_version: 4
104
104
  summary: A library to generate textmate grammars