rubulex 0.5.0 → 0.6.5
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.
- checksums.yaml +7 -0
- data/.gitignore +1 -0
- data/README.md +3 -19
- data/bin/rubulex +0 -6
- data/data/rubulex/views/index.slim +119 -121
- data/data/rubulex/views/stylesheets/default.sass +88 -71
- data/lib/rubulex/regexp_parser.rb +45 -17
- data/lib/rubulex/version.rb +1 -1
- data/rubulex.gemspec +4 -5
- metadata +13 -43
- data/.sass-cache/585bcb933d47ad9fc0e0c198b6c88f057e68fc16/default.sassc +0 -0
- data/Gemfile +0 -4
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: cf8dbc1b09724952fb721f0a7c6ca4866a2c505a
|
4
|
+
data.tar.gz: a796b809e1f10a132efcb4e70cf055ee7f565b84
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 47e2441c60a0b99081ab04a3401140fd821665fa9599dcaf5ab5b5a584d57c5f238cb362564790859d9a2c746fe1b94face55b9eb186efa4a215a8fd8075dd9a
|
7
|
+
data.tar.gz: 140501b4dbbcbe6614c5fb163733ddf474714c02d08487c41bf05e4271e8433176c4c239afc98cdde0a8cdede4c689567419f3430cab74142f23a2192e02d932
|
data/.gitignore
CHANGED
data/README.md
CHANGED
@@ -1,29 +1,13 @@
|
|
1
1
|
# Rubulex
|
2
2
|
|
3
|
-
|
3
|
+
Rubulex is a simple self-hosted Sinatra Rubular clone.
|
4
4
|
|
5
5
|
## Installation
|
6
6
|
|
7
|
-
Add this line to your application's Gemfile:
|
8
|
-
|
9
|
-
gem 'rubulex'
|
10
|
-
|
11
|
-
And then execute:
|
12
|
-
|
13
|
-
$ bundle
|
14
|
-
|
15
|
-
Or install it yourself as:
|
16
|
-
|
17
7
|
$ gem install rubulex
|
18
8
|
|
19
9
|
## Usage
|
20
10
|
|
21
|
-
|
22
|
-
|
23
|
-
## Contributing
|
11
|
+
$ rubulex
|
24
12
|
|
25
|
-
|
26
|
-
2. Create your feature branch (`git checkout -b my-new-feature`)
|
27
|
-
3. Commit your changes (`git commit -am 'Add some feature'`)
|
28
|
-
4. Push to the branch (`git push origin my-new-feature`)
|
29
|
-
5. Create new Pull Request
|
13
|
+
Open a browser an go to http://localhost:4567
|
data/bin/rubulex
CHANGED
@@ -1,11 +1,5 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
2
|
require 'rubygems'
|
3
|
-
require 'bundler'
|
4
|
-
|
5
|
-
ENV['BUNDLE_GEMFILE'] ||= File.join(File.dirname(__FILE__), "..", "Gemfile")
|
6
|
-
ENV['RACK_ENV'] ||= "testing"
|
7
|
-
Bundler.require(:default, ENV['RACK_ENV'])
|
8
|
-
|
9
3
|
require 'rubulex'
|
10
4
|
|
11
5
|
Rubulex::App.run!
|
@@ -9,146 +9,144 @@ html
|
|
9
9
|
|
10
10
|
body
|
11
11
|
.page
|
12
|
-
|
12
|
+
header
|
13
13
|
h1 Rubulex
|
14
14
|
h2 a Ruby Regular Expression Editor
|
15
15
|
|
16
|
-
.
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
.
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
.
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
td End of string
|
16
|
+
section.editor
|
17
|
+
form#editor_form method="post" action="regex/test" accept-charset="UTF-8"
|
18
|
+
.regexp_entry
|
19
|
+
label Regular expression:
|
20
|
+
br
|
21
|
+
span= "/"
|
22
|
+
input id="regex" type="text" tabindex="1" size="60" name="regex"
|
23
|
+
span= "/"
|
24
|
+
input id="regex_options" type="text" tabindex="1" size="6" name="options"
|
25
|
+
span= "/"
|
26
|
+
.test
|
27
|
+
.data_pane
|
28
|
+
label Test data:
|
29
|
+
textarea id="test_data" tabindex="3" rows="10" name="test_data" cols="56"
|
30
|
+
.match_pane
|
31
|
+
.results
|
32
|
+
label Match results:
|
33
|
+
#result
|
34
|
+
.result_groups{ style="display: none;" }
|
35
|
+
label Match groups:
|
36
|
+
#result_groups
|
37
|
+
section.help
|
38
|
+
div style="float:left"
|
39
|
+
table
|
40
|
+
tr
|
41
|
+
td
|
42
|
+
code= "[abc]"
|
43
|
+
td A single character of: a, b or c
|
44
|
+
tr
|
45
|
+
td
|
46
|
+
code= "[^abc]"
|
47
|
+
td Any single character except: a, b, or c
|
48
|
+
tr
|
49
|
+
td
|
50
|
+
code [a-z]
|
51
|
+
td Any single character in the range a-z
|
52
|
+
tr
|
53
|
+
td
|
54
|
+
code [a-zA-Z]
|
55
|
+
td Any single character in the range a-z or A-Z
|
56
|
+
tr
|
57
|
+
td
|
58
|
+
code ^
|
59
|
+
td Start of line
|
60
|
+
tr
|
61
|
+
td
|
62
|
+
code $
|
63
|
+
td End of line
|
64
|
+
tr
|
65
|
+
td
|
66
|
+
code \A
|
67
|
+
td Start of string
|
68
|
+
tr
|
69
|
+
td
|
70
|
+
code \z
|
71
|
+
td End of string
|
73
72
|
|
74
|
-
div style="float:left"
|
75
|
-
table
|
76
|
-
tr
|
77
|
-
td
|
78
|
-
code .
|
79
|
-
td Any single character
|
80
|
-
tr
|
81
|
-
td
|
82
|
-
code \s
|
83
|
-
td Any whitespace character
|
84
|
-
tr
|
85
|
-
td
|
86
|
-
code \S
|
87
|
-
td Any non-whitespace character
|
88
|
-
tr
|
89
|
-
td
|
90
|
-
code \d
|
91
|
-
td Any digit
|
92
|
-
tr
|
93
|
-
td
|
94
|
-
code \D
|
95
|
-
td Any non-digit
|
96
|
-
tr
|
97
|
-
td
|
98
|
-
code \w
|
99
|
-
td Any word character (letter, number, underscore)
|
100
|
-
tr
|
101
|
-
td
|
102
|
-
code \W
|
103
|
-
td Any non-word character
|
104
|
-
tr
|
105
|
-
td
|
106
|
-
code \b
|
107
|
-
td Any word boundary
|
108
73
|
table
|
109
74
|
tr
|
110
75
|
td
|
111
|
-
code
|
112
|
-
td
|
76
|
+
code .
|
77
|
+
td Any single character
|
113
78
|
tr
|
114
79
|
td
|
115
|
-
code
|
116
|
-
td
|
80
|
+
code \s
|
81
|
+
td Any whitespace character
|
117
82
|
tr
|
118
83
|
td
|
119
|
-
code
|
120
|
-
td
|
84
|
+
code \S
|
85
|
+
td Any non-whitespace character
|
121
86
|
tr
|
122
87
|
td
|
123
|
-
code
|
124
|
-
td
|
88
|
+
code \d
|
89
|
+
td Any digit
|
125
90
|
tr
|
126
91
|
td
|
127
|
-
code
|
128
|
-
td
|
92
|
+
code \D
|
93
|
+
td Any non-digit
|
129
94
|
tr
|
130
95
|
td
|
131
|
-
code
|
132
|
-
td
|
96
|
+
code \w
|
97
|
+
td Any word character (letter, number, underscore)
|
133
98
|
tr
|
134
99
|
td
|
135
|
-
code
|
136
|
-
td
|
100
|
+
code \W
|
101
|
+
td Any non-word character
|
137
102
|
tr
|
138
103
|
td
|
139
|
-
code
|
140
|
-
td
|
104
|
+
code \b
|
105
|
+
td Any word boundary
|
106
|
+
table
|
107
|
+
tr
|
108
|
+
td
|
109
|
+
code= "(...)"
|
110
|
+
td Capture everything enclosed
|
111
|
+
tr
|
112
|
+
td
|
113
|
+
code= "(a|b)"
|
114
|
+
td a or b
|
115
|
+
tr
|
116
|
+
td
|
117
|
+
code a?
|
118
|
+
td Zero or one of a
|
119
|
+
tr
|
120
|
+
td
|
121
|
+
code a*
|
122
|
+
td Zero or more of a
|
123
|
+
tr
|
124
|
+
td
|
125
|
+
code a+
|
126
|
+
td One or more of a
|
127
|
+
tr
|
128
|
+
td
|
129
|
+
code a{3}
|
130
|
+
td Exactly 3 of a
|
131
|
+
tr
|
132
|
+
td
|
133
|
+
code a{3,}
|
134
|
+
td 3 or more of a
|
135
|
+
tr
|
136
|
+
td
|
137
|
+
code a{3,6}
|
138
|
+
td Between 3 and 6 of a
|
141
139
|
|
142
|
-
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
| Copyright © #{Rubulex::VERSION}
|
140
|
+
.regex_options
|
141
|
+
p
|
142
|
+
| options:
|
143
|
+
code i
|
144
|
+
| case insensitive
|
145
|
+
code m
|
146
|
+
| make dot match newlines
|
147
|
+
code x
|
148
|
+
| ignore whitespace in regex
|
149
|
+
code o
|
150
|
+
| perform {...} substitutions only once
|
151
|
+
footer
|
152
|
+
| Copyright © v#{Rubulex::VERSION}
|
@@ -18,6 +18,10 @@ h1
|
|
18
18
|
h2
|
19
19
|
font-size: 16pt
|
20
20
|
|
21
|
+
dl
|
22
|
+
dd
|
23
|
+
margin-left: 16px
|
24
|
+
|
21
25
|
form
|
22
26
|
input, textarea
|
23
27
|
font-size: 13pt
|
@@ -44,8 +48,10 @@ span.blue
|
|
44
48
|
background-color: blue
|
45
49
|
color: white
|
46
50
|
|
51
|
+
label
|
52
|
+
display: block
|
53
|
+
|
47
54
|
html
|
48
|
-
head
|
49
55
|
body
|
50
56
|
width: 100%
|
51
57
|
height: 100%
|
@@ -60,86 +66,97 @@ html
|
|
60
66
|
min-height: 100%
|
61
67
|
width: 960px
|
62
68
|
|
63
|
-
|
69
|
+
header
|
64
70
|
color: #454545
|
65
71
|
height: 120px
|
66
72
|
text-align: center
|
67
73
|
text-shadow: 2px 2px 2px gray
|
68
74
|
|
69
|
-
.
|
70
|
-
|
75
|
+
section.editor
|
76
|
+
@include rounded
|
77
|
+
@include shadow
|
71
78
|
|
72
|
-
|
73
|
-
|
74
|
-
|
79
|
+
background-color: #FEFEFE
|
80
|
+
border: 1px solid #D0D0D0
|
81
|
+
padding: 18px
|
75
82
|
|
76
|
-
|
77
|
-
|
78
|
-
padding: 18px
|
79
|
-
|
80
|
-
.regexp_entry
|
81
|
-
padding: 8px
|
83
|
+
.regexp_entry
|
84
|
+
padding: 8px
|
82
85
|
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
+
input, span
|
87
|
+
display: inline-block
|
88
|
+
margin: 4px
|
86
89
|
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
padding: 8px
|
96
|
-
float: left
|
97
|
-
width: 420px
|
98
|
-
|
99
|
-
textarea
|
100
|
-
font-family: monaco, courier
|
101
|
-
font-size: 13pt
|
102
|
-
font-weight: bold
|
103
|
-
padding: 6pt
|
104
|
-
width: 100%
|
105
|
-
|
106
|
-
.match_pane
|
107
|
-
padding: 8px
|
108
|
-
margin-left: 50%
|
109
|
-
width: 440px
|
110
|
-
|
111
|
-
#result, #result_groups
|
112
|
-
font-family: monaco, courier
|
113
|
-
font-size: 13pt
|
114
|
-
font-weight: bold
|
115
|
-
padding: 6pt
|
116
|
-
margin: 4px
|
117
|
-
min-height: 200px
|
118
|
-
border: 1px solid #D0D0D0
|
119
|
-
|
120
|
-
.help
|
121
|
-
@include rounded
|
122
|
-
@include shadow
|
123
|
-
border: 1px solid #D0D0D0
|
124
|
-
margin-top: 32px
|
125
|
-
padding: 8px
|
126
|
-
font-size: 8pt
|
127
|
-
|
128
|
-
code
|
129
|
-
font-weight: bold
|
90
|
+
span
|
91
|
+
color: gray
|
92
|
+
font-size: 24pt
|
93
|
+
vertical-align: middle
|
94
|
+
|
95
|
+
.test
|
96
|
+
display: table
|
97
|
+
width: 100%
|
130
98
|
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
.regex_options
|
137
|
-
text-align: center
|
138
|
-
border-top: 1px solid #D0D0D0
|
139
|
-
padding-top: 16px
|
140
|
-
margin-top: 16px
|
99
|
+
.data_pane
|
100
|
+
width: 50%
|
101
|
+
padding: 8px
|
102
|
+
display: table-cell
|
141
103
|
|
142
|
-
|
104
|
+
textarea
|
105
|
+
font-family: monaco, courier
|
106
|
+
font-size: 10pt
|
107
|
+
font-weight: bold
|
108
|
+
padding: 6pt
|
109
|
+
min-height: 218px
|
110
|
+
width: 100%
|
111
|
+
box-sizing: border-box
|
112
|
+
-moz-box-sizing: border-box
|
113
|
+
|
114
|
+
.match_pane
|
115
|
+
width: 50%
|
116
|
+
padding: 8px
|
117
|
+
display: table-cell
|
118
|
+
|
119
|
+
#result, #result_groups
|
120
|
+
font-family: monaco, courier
|
121
|
+
font-size: 10pt
|
122
|
+
font-weight: bold
|
123
|
+
padding: 6pt
|
124
|
+
margin: 4px
|
125
|
+
min-height: 200px
|
126
|
+
border: 1px solid #D0D0D0
|
127
|
+
box-sizing: border-box
|
128
|
+
-moz-box-sizing: border-size
|
129
|
+
|
130
|
+
section.help
|
131
|
+
@include rounded
|
132
|
+
@include shadow
|
133
|
+
border: 1px solid #D0D0D0
|
134
|
+
margin-top: 32px
|
135
|
+
padding: 8px
|
136
|
+
font-size: 8pt
|
137
|
+
|
138
|
+
code
|
139
|
+
font-weight: bold
|
140
|
+
|
141
|
+
table
|
142
|
+
display: table-cell
|
143
|
+
|
144
|
+
tr
|
145
|
+
td
|
143
146
|
padding-right: 12px
|
144
|
-
|
147
|
+
|
148
|
+
.regex_options
|
149
|
+
text-align: center
|
150
|
+
border-top: 1px solid #D0D0D0
|
151
|
+
padding-top: 16px
|
152
|
+
margin-top: 16px
|
153
|
+
|
154
|
+
code
|
155
|
+
padding-right: 12px
|
156
|
+
padding-left: 12px
|
145
157
|
|
158
|
+
footer
|
159
|
+
color: grey
|
160
|
+
margin-top: 16px
|
161
|
+
min-height: 32px
|
162
|
+
text-align: center
|
@@ -1,5 +1,7 @@
|
|
1
1
|
module Rubulex
|
2
2
|
class RegexpParser
|
3
|
+
Struct.new("MatchRelation", :name, :text)
|
4
|
+
|
3
5
|
def initialize(regex, options, data)
|
4
6
|
self.options = options
|
5
7
|
self.regex = regex
|
@@ -15,7 +17,7 @@ module Rubulex
|
|
15
17
|
end
|
16
18
|
|
17
19
|
def regex=(regex)
|
18
|
-
@regex = Regexp.new(
|
20
|
+
@regex = Regexp.new("#{regex}", @options)
|
19
21
|
rescue RegexpError => error
|
20
22
|
@regex = //
|
21
23
|
end
|
@@ -35,29 +37,55 @@ module Rubulex
|
|
35
37
|
|
36
38
|
def parse
|
37
39
|
@data.match(@regex) do |match|
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
@
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
40
|
+
@match_result = render_match_result(@data.dup)
|
41
|
+
@match_groups = render_match_groups(@data.dup)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
def render_match_result(data)
|
46
|
+
colors = ->() do
|
47
|
+
(@colors ||= [:red, :green, :darkorange, :blue].cycle).next
|
48
|
+
end
|
49
|
+
data.gsub!(@regex) do |match|
|
50
|
+
"<span class='#{colors.call}'>#{match}</span>"
|
51
|
+
end
|
52
|
+
|
53
|
+
data.gsub(/\n/,"<br />")
|
54
|
+
end
|
55
|
+
|
56
|
+
def render_match_groups(data)
|
57
|
+
match_groups = []
|
58
|
+
|
59
|
+
data.gsub(@regex) do |match_text|
|
60
|
+
sub_match = match_text.match(@regex)
|
61
|
+
match_group_count = sub_match.length - 1
|
62
|
+
if match_group_count > 0
|
63
|
+
sub_match_set = []
|
64
|
+
|
65
|
+
match_group_count.times do |index|
|
66
|
+
key = sub_match.names[index] || index + 1
|
67
|
+
match_text = sub_match[key]
|
68
|
+
|
69
|
+
sub_match_set << Struct::MatchRelation.new(key, match_text)
|
70
|
+
end
|
71
|
+
|
72
|
+
match_groups << sub_match_set
|
53
73
|
end
|
54
74
|
end
|
75
|
+
|
76
|
+
match_groups.map.with_index { |sub_set, index|
|
77
|
+
group = "<dl><dt>Match #{index + 1}</dt>"
|
78
|
+
group << sub_set.map { |match|
|
79
|
+
"<dd>#{match.name}: #{match.text}</dd>"
|
80
|
+
}.join
|
81
|
+
group << "</dl>"
|
82
|
+
}.join("<br />")
|
55
83
|
end
|
56
84
|
|
57
85
|
def result
|
58
86
|
{
|
59
87
|
match_result: @match_result,
|
60
|
-
match_groups: @match_groups
|
88
|
+
match_groups: @match_groups
|
61
89
|
}
|
62
90
|
end
|
63
91
|
end
|
data/lib/rubulex/version.rb
CHANGED
data/rubulex.gemspec
CHANGED
@@ -13,12 +13,11 @@ Gem::Specification.new do |gem|
|
|
13
13
|
gem.homepage = "https://github.com/ofeldt/rubulex"
|
14
14
|
|
15
15
|
gem.add_runtime_dependency "sinatra", "~> 1.4.3"
|
16
|
-
gem.add_runtime_dependency "sinatra-contrib", "~> 1.4.
|
17
|
-
gem.add_runtime_dependency "slim", "~>
|
18
|
-
gem.add_runtime_dependency "sass", "~> 3.2.
|
19
|
-
gem.add_runtime_dependency "bundler", "~> 1.3.5"
|
16
|
+
gem.add_runtime_dependency "sinatra-contrib", "~> 1.4.1"
|
17
|
+
gem.add_runtime_dependency "slim", "~> 2.0.1"
|
18
|
+
gem.add_runtime_dependency "sass", "~> 3.2.10"
|
20
19
|
|
21
|
-
gem.add_development_dependency "rspec", "~> 2.
|
20
|
+
gem.add_development_dependency "rspec", "~> 2.14.1"
|
22
21
|
|
23
22
|
gem.files = `git ls-files`.split($/)
|
24
23
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
metadata
CHANGED
@@ -1,20 +1,18 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubulex
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5
|
5
|
-
prerelease:
|
4
|
+
version: 0.6.5
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Oliver Feldt
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-
|
11
|
+
date: 2013-09-23 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: sinatra
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
17
|
- - ~>
|
20
18
|
- !ruby/object:Gem::Version
|
@@ -22,7 +20,6 @@ dependencies:
|
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
24
|
- - ~>
|
28
25
|
- !ruby/object:Gem::Version
|
@@ -30,83 +27,59 @@ dependencies:
|
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: sinatra-contrib
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
31
|
- - ~>
|
36
32
|
- !ruby/object:Gem::Version
|
37
|
-
version: 1.4.
|
33
|
+
version: 1.4.1
|
38
34
|
type: :runtime
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
38
|
- - ~>
|
44
39
|
- !ruby/object:Gem::Version
|
45
|
-
version: 1.4.
|
40
|
+
version: 1.4.1
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: slim
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
45
|
- - ~>
|
52
46
|
- !ruby/object:Gem::Version
|
53
|
-
version:
|
47
|
+
version: 2.0.1
|
54
48
|
type: :runtime
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
52
|
- - ~>
|
60
53
|
- !ruby/object:Gem::Version
|
61
|
-
version:
|
54
|
+
version: 2.0.1
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: sass
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
59
|
- - ~>
|
68
60
|
- !ruby/object:Gem::Version
|
69
|
-
version: 3.2.
|
61
|
+
version: 3.2.10
|
70
62
|
type: :runtime
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
66
|
- - ~>
|
76
67
|
- !ruby/object:Gem::Version
|
77
|
-
version: 3.2.
|
78
|
-
- !ruby/object:Gem::Dependency
|
79
|
-
name: bundler
|
80
|
-
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
|
-
requirements:
|
83
|
-
- - ~>
|
84
|
-
- !ruby/object:Gem::Version
|
85
|
-
version: 1.3.5
|
86
|
-
type: :runtime
|
87
|
-
prerelease: false
|
88
|
-
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
|
-
requirements:
|
91
|
-
- - ~>
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
version: 1.3.5
|
68
|
+
version: 3.2.10
|
94
69
|
- !ruby/object:Gem::Dependency
|
95
70
|
name: rspec
|
96
71
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
72
|
requirements:
|
99
73
|
- - ~>
|
100
74
|
- !ruby/object:Gem::Version
|
101
|
-
version: 2.
|
75
|
+
version: 2.14.1
|
102
76
|
type: :development
|
103
77
|
prerelease: false
|
104
78
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
79
|
requirements:
|
107
80
|
- - ~>
|
108
81
|
- !ruby/object:Gem::Version
|
109
|
-
version: 2.
|
82
|
+
version: 2.14.1
|
110
83
|
description: A simple self-hosted Rubular Clone
|
111
84
|
email:
|
112
85
|
- oliver.feldt@googlemail.com
|
@@ -116,8 +89,6 @@ extensions: []
|
|
116
89
|
extra_rdoc_files: []
|
117
90
|
files:
|
118
91
|
- .gitignore
|
119
|
-
- .sass-cache/585bcb933d47ad9fc0e0c198b6c88f057e68fc16/default.sassc
|
120
|
-
- Gemfile
|
121
92
|
- LICENSE.txt
|
122
93
|
- README.md
|
123
94
|
- Rakefile
|
@@ -133,26 +104,25 @@ files:
|
|
133
104
|
- rubulex.gemspec
|
134
105
|
homepage: https://github.com/ofeldt/rubulex
|
135
106
|
licenses: []
|
107
|
+
metadata: {}
|
136
108
|
post_install_message:
|
137
109
|
rdoc_options: []
|
138
110
|
require_paths:
|
139
111
|
- lib
|
140
112
|
required_ruby_version: !ruby/object:Gem::Requirement
|
141
|
-
none: false
|
142
113
|
requirements:
|
143
114
|
- - '>='
|
144
115
|
- !ruby/object:Gem::Version
|
145
116
|
version: '0'
|
146
117
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
147
|
-
none: false
|
148
118
|
requirements:
|
149
119
|
- - '>='
|
150
120
|
- !ruby/object:Gem::Version
|
151
121
|
version: '0'
|
152
122
|
requirements: []
|
153
123
|
rubyforge_project:
|
154
|
-
rubygems_version:
|
124
|
+
rubygems_version: 2.0.3
|
155
125
|
signing_key:
|
156
|
-
specification_version:
|
126
|
+
specification_version: 4
|
157
127
|
summary: Rubulex is a simple web application for developing/testing Regular Expression
|
158
128
|
test_files: []
|
Binary file
|
data/Gemfile
DELETED