textpow1x 1.2.1 → 1.2.2

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- textpow1x (1.2.1)
4
+ textpow1x (1.2.2)
5
5
  plist (>= 3.0.1)
6
6
 
7
7
  GEM
data/README.rdoc CHANGED
@@ -43,12 +43,12 @@ Install oniguruma
43
43
 
44
44
  Syntax files are written with {Textmate grammer}[http://macromates.com/textmate/manual/language_grammars#language_grammars].
45
45
  They are written in text/binary/xml/yaml format (all can be translated into each other).
46
- Textpow can understand the yaml form (ending in .syntax) and the xml form (ending in .tmSyntax or .plist) via plist library, but not the text or binary form.
46
+ Textpow can understand the yaml form (ending in .syntax) and the xml form (ending in .tmSyntax or .plist or tmLanguage) via plist library, but not the text or binary form.
47
47
  All syntax files shipped with textpow are in the yaml form, since its easiest to read and less verbose.
48
48
 
49
49
  Adding a new syntax:
50
- * use <tt>rake convert[filename]</tt> to convert it into yaml format
51
- * drop it into the lib/textpow/syntax folder
50
+ * add download location and scopeName to update_syntax task in Rakefile
51
+ * <tt>rake update_syntax</tt>
52
52
  * run tests <tt>rake</tt> to see if the syntax is parseable
53
53
 
54
54
  === Processors
@@ -76,10 +76,9 @@ having <tt>name="text.string", position=10</tt> and the second having
76
76
  <tt>"markup.string"</tt> tag is inside the <tt>"text.string"</tt> tag.
77
77
 
78
78
  == TODO
79
-
79
+ * fix markdown and php syntax
80
80
  * parse text plist files {example}[https://raw.github.com/kangax/textmate-js-language-syntax-file/master/JavaScript.plist]
81
- * parse tmLanguage files {example}[https://github.com/mattfarina/Ruby-Sass/blob/master/Ruby%20Sass.tmLanguage]
82
- * document / spec / fix include languages (they dont work very well)
81
+ * update more languages via github urls
83
82
 
84
83
  == LICENSE: MIT
85
84
 
@@ -56,14 +56,14 @@ module Textpow
56
56
  attr_accessor :repository
57
57
  attr_accessor :patterns
58
58
 
59
- def self.load(file, name_space = :default)
59
+ def self.load(file, options={})
60
60
  table = convert_file_to_table(file)
61
- SyntaxNode.new(table, nil, name_space)
61
+ SyntaxNode.new(table, options)
62
62
  end
63
63
 
64
- def initialize(table, syntax = nil, name_space = :default)
65
- @syntax = syntax || self
66
- @name_space = name_space
64
+ def initialize(table, options={})
65
+ @syntax = options[:syntax] || self
66
+ @name_space = options[:name_space]
67
67
 
68
68
  register_in_syntaxes(table["scopeName"])
69
69
  parse_and_store_syntax_info(table)
@@ -134,23 +134,23 @@ module Textpow
134
134
  end
135
135
  end
136
136
 
137
- def parse_repository repository
137
+ def parse_repository(repository)
138
138
  @repository = {}
139
139
  repository.each do |key, value|
140
140
  if value["include"]
141
141
  @repository[key] = SyntaxProxy.new(value["include"], syntax)
142
142
  else
143
- @repository[key] = SyntaxNode.new(value, syntax, @name_space)
143
+ @repository[key] = SyntaxNode.new(value, :syntax => syntax, :name_space => @name_space)
144
144
  end
145
145
  end
146
146
  end
147
147
 
148
- def create_children patterns
148
+ def create_children(patterns)
149
149
  @patterns = patterns.map do |pattern|
150
150
  if pattern["include"]
151
151
  SyntaxProxy.new(pattern["include"], syntax)
152
152
  else
153
- SyntaxNode.new(pattern, syntax, @name_space)
153
+ SyntaxNode.new(pattern, :syntax => syntax, :name_space => @name_space)
154
154
  end
155
155
  end
156
156
  end
@@ -1,3 +1,3 @@
1
1
  module Textpow
2
- VERSION = Version = "1.2.1"
2
+ VERSION = Version = "1.2.2"
3
3
  end
@@ -5,22 +5,18 @@ describe "syntax files" do
5
5
  STDERR.stub!(:puts)
6
6
  end
7
7
 
8
- let(:processor){ Textpow::DebugProcessor.new }
9
-
10
8
  it "has syntax files" do
11
9
  Dir["#{Textpow.syntax_path}/*.syntax"].should_not == []
12
10
  end
13
11
 
14
12
  Dir["#{Textpow.syntax_path}/*.syntax"].each do |syntax|
15
13
  it "#{syntax} can parse" do
16
- node = Textpow::SyntaxNode.load(syntax)
17
- node.parse("xxx\n1 + 1\n### xxx", processor)
14
+ Textpow.syntax(syntax).parse("xxx\n1 + 1\n### xxx")
18
15
  end
19
16
  end
20
17
 
21
- # syntax broken in 1.9
22
18
  xit "parses markdown" do
23
- node = Textpow::SyntaxNode.load("#{Textpow.syntax_path}/broken/markdown.syntax")
24
- node.parse("### xxx\nabc\n xxx\n yyy\n - abc\n - ac", processor)
19
+ node = Textpow.syntax("lib/textpow/syntax/broken/markdown.syntax")
20
+ node.parse("### xxx\nabc\n xxx\nyyy\n - abc\n - ac").stack.should_not == []
25
21
  end
26
22
  end
@@ -52,7 +52,7 @@ describe Textpow::SyntaxNode do
52
52
  end
53
53
 
54
54
  it "stores given parent" do
55
- node = Textpow::SyntaxNode.new({}, 1)
55
+ node = Textpow::SyntaxNode.new({}, :syntax => 1)
56
56
  node.syntax.should == 1
57
57
  end
58
58
 
@@ -63,9 +63,9 @@ describe Textpow::SyntaxNode do
63
63
  end
64
64
 
65
65
  it "stores itself in scoped global namespace under scopeName" do
66
- node = Textpow::SyntaxNode.new({"scopeName" => 'xxx'}, nil, 'foo')
66
+ node = Textpow::SyntaxNode.new({"scopeName" => 'xxx'}, :name_space => 'foo')
67
67
  node.syntaxes['xxx'].should == node
68
- Textpow::SyntaxNode.new({},nil,'foo').syntaxes['xxx'].should == node
68
+ Textpow::SyntaxNode.new({},:name_space => 'foo').syntaxes['xxx'].should == node
69
69
  Textpow::SyntaxNode.new({}).syntaxes['xxx'].should == nil
70
70
  end
71
71
  end
metadata CHANGED
@@ -1,15 +1,10 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: textpow1x
3
- version: !ruby/object:Gem::Version
4
- hash: 29
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.2.2
5
5
  prerelease:
6
- segments:
7
- - 1
8
- - 2
9
- - 1
10
- version: 1.2.1
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - Dizan Vasquez
14
9
  - Spox
15
10
  - Chris Hoffman
@@ -17,37 +12,28 @@ authors:
17
12
  autorequire:
18
13
  bindir: bin
19
14
  cert_chain: []
20
-
21
- date: 2011-10-08 00:00:00 +02:00
22
- default_executable:
23
- dependencies:
24
- - !ruby/object:Gem::Dependency
25
- requirement: &id001 !ruby/object:Gem::Requirement
15
+ date: 2011-10-08 00:00:00.000000000Z
16
+ dependencies:
17
+ - !ruby/object:Gem::Dependency
18
+ name: plist
19
+ requirement: &84372580 !ruby/object:Gem::Requirement
26
20
  none: false
27
- requirements:
28
- - - ">="
29
- - !ruby/object:Gem::Version
30
- hash: 5
31
- segments:
32
- - 3
33
- - 0
34
- - 1
21
+ requirements:
22
+ - - ! '>='
23
+ - !ruby/object:Gem::Version
35
24
  version: 3.0.1
36
25
  type: :runtime
37
- name: plist
38
- version_requirements: *id001
39
26
  prerelease: false
27
+ version_requirements: *84372580
40
28
  description: A library for parsing TextMate bundles on ruby 1.x
41
- email:
29
+ email:
42
30
  - michael@grosser.it
43
- executables:
31
+ executables:
44
32
  - plist2yaml
45
33
  - plist2syntax
46
34
  extensions: []
47
-
48
35
  extra_rdoc_files: []
49
-
50
- files:
36
+ files:
51
37
  - .travis.yml
52
38
  - Gemfile
53
39
  - Gemfile.lock
@@ -237,40 +223,37 @@ files:
237
223
  - spec/textpow/syntax_spec.rb
238
224
  - spec/textpow_spec.rb
239
225
  - textpow1x.gemspec
240
- has_rdoc: true
241
226
  homepage: http://github.com/grosser/textpow
242
- licenses:
227
+ licenses:
243
228
  - MIT
244
229
  post_install_message:
245
- rdoc_options:
230
+ rdoc_options:
246
231
  - --main
247
232
  - README.rdoc
248
- require_paths:
233
+ require_paths:
249
234
  - lib
250
- required_ruby_version: !ruby/object:Gem::Requirement
235
+ required_ruby_version: !ruby/object:Gem::Requirement
251
236
  none: false
252
- requirements:
253
- - - ">="
254
- - !ruby/object:Gem::Version
255
- hash: 3
256
- segments:
237
+ requirements:
238
+ - - ! '>='
239
+ - !ruby/object:Gem::Version
240
+ version: '0'
241
+ segments:
257
242
  - 0
258
- version: "0"
259
- required_rubygems_version: !ruby/object:Gem::Requirement
243
+ hash: -225371251
244
+ required_rubygems_version: !ruby/object:Gem::Requirement
260
245
  none: false
261
- requirements:
262
- - - ">="
263
- - !ruby/object:Gem::Version
264
- hash: 3
265
- segments:
246
+ requirements:
247
+ - - ! '>='
248
+ - !ruby/object:Gem::Version
249
+ version: '0'
250
+ segments:
266
251
  - 0
267
- version: "0"
252
+ hash: -225371251
268
253
  requirements: []
269
-
270
254
  rubyforge_project:
271
- rubygems_version: 1.6.2
255
+ rubygems_version: 1.8.10
272
256
  signing_key:
273
257
  specification_version: 3
274
258
  summary: A library for parsing TextMate bundles on ruby 1.x
275
259
  test_files: []
276
-