markita 3.4.211004 → 4.0.221124
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 +4 -4
- data/README.md +23 -18
- data/bin/markita +4 -1
- data/lib/markita/base.rb +12 -3
- data/lib/markita/config.rb +4 -3
- data/lib/markita/markdown.rb +68 -56
- data/lib/markita/plug/navigation.rb +1 -1
- data/lib/markita/plug/readme.rb +7 -0
- data/lib/markita/preprocess.rb +4 -4
- data/lib/markita.rb +6 -3
- metadata +17 -15
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b56d7c82415c4cc7c3987168c61e94dc84a346a5e524db34683529dbb7cf0e0e
|
|
4
|
+
data.tar.gz: f7473780c5c0a1d3de2cc216c2eba8ff541ee337ba0effda0612e9f45e561b2e
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 266f1406ead43f83eb681010c78f196cf843fe491123689ed5adefbcfbd1fdd104ba039595113d653b761945cbc74c9619349f08530ae3844ed5217a36c7aa03
|
|
7
|
+
data.tar.gz: 2d0c10d772d383e50b97d308ea4cc1bd5b709b1deeef06d3489ddeb17f641761903946155c6b42ca436f86a321638e0e90048094d11340884945070dc3bd3c69
|
data/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Markita
|
|
2
2
|
|
|
3
|
-
* [VERSION
|
|
3
|
+
* [VERSION 4.0.221124](https://github.com/carlosjhr64/markita/releases)
|
|
4
4
|
* [github](https://www.github.com/carlosjhr64/markita)
|
|
5
5
|
* [rubygems](https://rubygems.org/gems/markita)
|
|
6
6
|
|
|
@@ -28,9 +28,12 @@ Options:
|
|
|
28
28
|
--no_about
|
|
29
29
|
--no_favicon
|
|
30
30
|
--no_highlight
|
|
31
|
-
--no_navigation
|
|
32
31
|
--no_login
|
|
32
|
+
--no_navigation
|
|
33
33
|
--no_plugs
|
|
34
|
+
--no_readme
|
|
35
|
+
Exclusive:
|
|
36
|
+
no_login allowed
|
|
34
37
|
Types:
|
|
35
38
|
DIRECTORY /^~?[\/\w\.]+$/
|
|
36
39
|
BIND /^[\w\.]+$/
|
|
@@ -60,11 +63,11 @@ Markdown:
|
|
|
60
63
|
|
|
61
64
|
Markdown:
|
|
62
65
|
|
|
63
|
-

|
|
67
|
+

|
|
68
|
+

|
|
66
69
|
Image centered above.
|
|
67
|
-
Image to the left
|
|
70
|
+
Image to the left.
|
|
68
71
|
Image to the right.
|
|
69
72
|
And set a HR bar below.
|
|
70
73
|
---
|
|
@@ -88,9 +91,11 @@ Markdown:
|
|
|
88
91
|
A get method form without submit button on single field:
|
|
89
92
|
! Google:[q] (https://www.google.com/search)
|
|
90
93
|
|
|
91
|
-
A post method form
|
|
92
|
-
a submit button due to multiple fields
|
|
93
|
-
|
|
94
|
+
A post method form with a password field
|
|
95
|
+
and a submit button due to multiple fields.
|
|
96
|
+
Note the `*` in front of `pwd` marking it as a password field,
|
|
97
|
+
and the ending `!` marking the route as a post:
|
|
98
|
+
! Username:[user] Password:[*pwd] (/login.html)!
|
|
94
99
|
|
|
95
100
|
A multi-line form with default entry and hidden field:
|
|
96
101
|
! Name:[user] [status="active"] (/register.html)
|
|
@@ -177,9 +182,10 @@ Markdown:
|
|
|
177
182
|
### Inline links, code, bold, italic, strikes, and underline
|
|
178
183
|
|
|
179
184
|
<p>
|
|
180
|
-
The <b>bold</b> and <i>italics</i> <s>strikes</s> at <u>underlined</u>,
|
|
181
|
-
|
|
182
|
-
sees the <code>~ code ~ "a*b*c"</code> to
|
|
185
|
+
The <b>bold</b> and <i>italics</i> <s>strikes</s> at <u>underlined</u>, while a
|
|
186
|
+
<a href="#Markita">link to #Markita</a>
|
|
187
|
+
sees the <code>~ code ~ "a*b*c"</code> to
|
|
188
|
+
<a href="https://github.com">https://github.com</a>.
|
|
183
189
|
</p>
|
|
184
190
|
|
|
185
191
|
Markdown:
|
|
@@ -211,10 +217,9 @@ Markdown:
|
|
|
211
217
|
* Point A
|
|
212
218
|
* Point B
|
|
213
219
|
|
|
214
|
-
|
|
215
|
-
:
|
|
216
|
-
|
|
217
|
-
: Usage for the symbol
|
|
220
|
+
+ Word: Definition of the word
|
|
221
|
+
+ Symbol:
|
|
222
|
+
+ Usage for the symbol
|
|
218
223
|
|
|
219
224
|
### Block-quote
|
|
220
225
|
|
|
@@ -287,7 +292,7 @@ Markdown:
|
|
|
287
292
|
|
|
288
293
|
There once was a man from Nantucket[^1]
|
|
289
294
|
Who kept all his cash[^2] in a bucket.
|
|
290
|
-
But his
|
|
295
|
+
But his daughter, named Nan,
|
|
291
296
|
Ran away with a man
|
|
292
297
|
And as for the bucket, Natucket.[^3]
|
|
293
298
|
|
|
@@ -346,7 +351,7 @@ $ GET https://raw.githubusercontent.com/carlosjhr64/markita/main/plug/todotxt.rb
|
|
|
346
351
|
```
|
|
347
352
|
## LICENSE
|
|
348
353
|
|
|
349
|
-
Copyright
|
|
354
|
+
Copyright 2022 CarlosJHR64
|
|
350
355
|
|
|
351
356
|
Permission is hereby granted, free of charge,
|
|
352
357
|
to any person obtaining a copy of this software and
|
data/bin/markita
CHANGED
data/lib/markita/base.rb
CHANGED
|
@@ -24,12 +24,21 @@ class Base < Sinatra::Base
|
|
|
24
24
|
Markdown.new(key).filepath filepath
|
|
25
25
|
end
|
|
26
26
|
|
|
27
|
-
get
|
|
28
|
-
|
|
27
|
+
get SEND_FILE do |path|
|
|
28
|
+
pass unless params.length==1 and
|
|
29
|
+
filepath = File.join(ROOT, path) and
|
|
30
|
+
File.exist?(filepath)
|
|
31
|
+
send_file filepath
|
|
29
32
|
end
|
|
30
33
|
|
|
31
34
|
get '/' do
|
|
32
|
-
|
|
35
|
+
filepath = File.join ROOT, 'index.md'
|
|
36
|
+
if File.exist? filepath
|
|
37
|
+
Markdown.new('index').filepath filepath
|
|
38
|
+
else
|
|
39
|
+
redirect '/about.html' unless OPTIONS&.no_about
|
|
40
|
+
raise Sinatra::NotFound
|
|
41
|
+
end
|
|
33
42
|
end
|
|
34
43
|
|
|
35
44
|
not_found do
|
data/lib/markita/config.rb
CHANGED
|
@@ -6,7 +6,8 @@ module Markita
|
|
|
6
6
|
|
|
7
7
|
ROOT = File.expand_path OPTIONS&.root || '~/vimwiki'
|
|
8
8
|
raise "Missing site root directory: "+ROOT unless File.directory? ROOT
|
|
9
|
-
|
|
9
|
+
APPDIR = File.dirname File.dirname __dir__
|
|
10
|
+
APPDATA = File.join APPDIR, 'data'
|
|
10
11
|
PATH = lambda do |basename|
|
|
11
12
|
[ROOT, APPDATA].map{ File.join _1, basename}.detect{ File.exist? _1}
|
|
12
13
|
end
|
|
@@ -14,8 +15,8 @@ module Markita
|
|
|
14
15
|
|
|
15
16
|
EMOJIS = Hash[*File.read(PATH['emojis.tsv']).split(/\s+/)]
|
|
16
17
|
|
|
17
|
-
PAGE_KEY
|
|
18
|
-
|
|
18
|
+
PAGE_KEY = %r{/(\w[\w\/\-]*\w)}
|
|
19
|
+
SEND_FILE = %r{/(\w[\w\/\-]*\w\.\w+)}
|
|
19
20
|
|
|
20
21
|
START_TIME = Time.now
|
|
21
22
|
end
|
data/lib/markita/markdown.rb
CHANGED
|
@@ -63,15 +63,16 @@ class Markdown
|
|
|
63
63
|
B = lambda {|m| "<b>#{m[1]}</b>"}
|
|
64
64
|
|
|
65
65
|
CODEx = /`([^`]+)`/
|
|
66
|
-
CODE = lambda {|m| "<code>#{m[1]}</code>"}
|
|
66
|
+
CODE = lambda {|m| "<code>#{m[1].gsub('<','<')}</code>"}
|
|
67
67
|
|
|
68
68
|
Ax = /\[([^\[\]]+)\]\(([^()]+)\)/
|
|
69
69
|
def anchor(m)
|
|
70
70
|
href = ((_=m[2]).match?(/^\d+$/) and @metadata[_] or _)
|
|
71
|
-
|
|
71
|
+
text = Markdown.tag(m[1], EMOJIx, EMOJI)
|
|
72
|
+
%Q(<a href="#{href}">#{text}</a>)
|
|
72
73
|
end
|
|
73
74
|
|
|
74
|
-
URLx = %r(
|
|
75
|
+
URLx = %r((https?://[\w\.\-\/\&\+\?\%]+))
|
|
75
76
|
URL = lambda {|m| %Q(<a href="#{m[1]}">#{m[1]}</a>)}
|
|
76
77
|
|
|
77
78
|
EMOJIx = /:(\w+):/
|
|
@@ -88,13 +89,12 @@ class Markdown
|
|
|
88
89
|
|
|
89
90
|
def Markdown.tag(entry, regx, m2string, &block)
|
|
90
91
|
if m = regx.match(entry)
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
post_match = m.post_match
|
|
94
|
-
while m = regx.match(post_match)
|
|
92
|
+
string = ''
|
|
93
|
+
while m
|
|
95
94
|
pre_match = (block ? block.call(m.pre_match) : m.pre_match)
|
|
96
95
|
string << pre_match + m2string[m]
|
|
97
96
|
post_match = m.post_match
|
|
97
|
+
m = regx.match(post_match)
|
|
98
98
|
end
|
|
99
99
|
string << (block ? block.call(post_match) : post_match)
|
|
100
100
|
return string
|
|
@@ -130,15 +130,16 @@ class Markdown
|
|
|
130
130
|
# Ordered list
|
|
131
131
|
ORDERED = /^( {0,3})\d+\. (\S.*)$/
|
|
132
132
|
PARSERS << :ordered
|
|
133
|
-
def ordered(md=
|
|
134
|
-
return false
|
|
133
|
+
def ordered(md=nil)
|
|
134
|
+
md ||= ORDERED.match(@line) or return false
|
|
135
|
+
level = md[1].length
|
|
135
136
|
@html << "<ol#{@opt[:attributes]}>\n"
|
|
136
137
|
@opt.delete(:attributes)
|
|
137
138
|
while md and level==md[1].length
|
|
138
139
|
@html << " <li>#{inline(md[2])}</li>\n"
|
|
139
140
|
if md = (@line=@file.gets)&.match(ORDERED)
|
|
140
141
|
if level < md[1].length
|
|
141
|
-
ordered(md
|
|
142
|
+
ordered(md)
|
|
142
143
|
md = @line&.match(ORDERED)
|
|
143
144
|
end
|
|
144
145
|
end
|
|
@@ -148,7 +149,7 @@ class Markdown
|
|
|
148
149
|
end
|
|
149
150
|
|
|
150
151
|
# Paragraph
|
|
151
|
-
PARAGRAPHS = /^[\[\(
|
|
152
|
+
PARAGRAPHS = /^[\[\(*`'"~_]?:?\w/
|
|
152
153
|
PARSERS << :paragraphs
|
|
153
154
|
def paragraphs
|
|
154
155
|
md = PARAGRAPHS.match(@line) or return false
|
|
@@ -156,7 +157,10 @@ class Markdown
|
|
|
156
157
|
@opt.delete(:attributes)
|
|
157
158
|
while md
|
|
158
159
|
@html << inline(@line)
|
|
159
|
-
|
|
160
|
+
while (@line=@file.gets)&.start_with?('<')
|
|
161
|
+
@html << @line # Exceptional HTML injection into the paragraph
|
|
162
|
+
end
|
|
163
|
+
md = @line&.match PARAGRAPHS
|
|
160
164
|
end
|
|
161
165
|
@html << "</p>\n"
|
|
162
166
|
true
|
|
@@ -165,15 +169,16 @@ class Markdown
|
|
|
165
169
|
# Unordered list
|
|
166
170
|
UNORDERED = /^( {0,3})[*] (\S.*)$/
|
|
167
171
|
PARSERS << :unordered
|
|
168
|
-
def unordered(md=
|
|
169
|
-
return false
|
|
172
|
+
def unordered(md=nil)
|
|
173
|
+
md ||= UNORDERED.match(@line) or return false
|
|
174
|
+
level = md[1].length
|
|
170
175
|
@html << "<ul#{@opt[:attributes]}>\n"
|
|
171
176
|
@opt.delete(:attributes)
|
|
172
177
|
while md and level==md[1].length
|
|
173
178
|
@html << " <li>#{inline(md[2])}</li>\n"
|
|
174
179
|
if md = (@line=@file.gets)&.match(UNORDERED)
|
|
175
180
|
if level < md[1].length
|
|
176
|
-
unordered(md
|
|
181
|
+
unordered(md)
|
|
177
182
|
md = @line&.match(UNORDERED)
|
|
178
183
|
end
|
|
179
184
|
end
|
|
@@ -202,16 +207,22 @@ class Markdown
|
|
|
202
207
|
end
|
|
203
208
|
|
|
204
209
|
# Definition list
|
|
205
|
-
DEFINITIONS =
|
|
210
|
+
DEFINITIONS = /^[+] (.*)$/
|
|
206
211
|
PARSERS << :definitions
|
|
207
212
|
def definitions
|
|
208
213
|
md = DEFINITIONS.match(@line) or return false
|
|
209
214
|
@html << "<dl#{@opt[:attributes]}>\n"
|
|
210
215
|
@opt.delete(:attributes)
|
|
211
216
|
while md
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
217
|
+
case md[1]
|
|
218
|
+
when /(.*): (.*)$/
|
|
219
|
+
@html << "<dt>#{inline $1.strip}</dt>\n"
|
|
220
|
+
@html << "<dd>#{inline $2.strip}</dd>\n"
|
|
221
|
+
when /(.*):$/
|
|
222
|
+
@html << "<dt>#{inline $1.strip}</dt>\n"
|
|
223
|
+
else
|
|
224
|
+
@html << "<dd>#{inline md[1].strip}</dd>\n"
|
|
225
|
+
end
|
|
215
226
|
md = (@line=@file.gets)&.match DEFINITIONS
|
|
216
227
|
end
|
|
217
228
|
@html << "</dl>\n"
|
|
@@ -234,22 +245,27 @@ class Markdown
|
|
|
234
245
|
end
|
|
235
246
|
|
|
236
247
|
# Block-quote
|
|
237
|
-
BLOCKQS =
|
|
248
|
+
BLOCKQS = /^( {0,3})> (.*)$/
|
|
238
249
|
PARSERS << :blockqs
|
|
239
|
-
def blockqs
|
|
240
|
-
md
|
|
250
|
+
def blockqs(md=nil)
|
|
251
|
+
md ||= BLOCKQS.match(@line) or return false
|
|
252
|
+
level = md[1].length
|
|
241
253
|
@html << "<blockquote#{@opt[:attributes]}>\n"
|
|
242
254
|
@opt.delete(:attributes)
|
|
243
|
-
while md
|
|
244
|
-
@html << inline(md[
|
|
255
|
+
while md and level==md[1].length
|
|
256
|
+
@html << inline(md[2])
|
|
245
257
|
@html << "\n"
|
|
246
|
-
md = (@line=@file.gets)&.match
|
|
258
|
+
if md = (@line=@file.gets)&.match(BLOCKQS)
|
|
259
|
+
if level < md[1].length
|
|
260
|
+
blockqs(md)
|
|
261
|
+
md = @line&.match(BLOCKQS)
|
|
262
|
+
end
|
|
263
|
+
end
|
|
247
264
|
end
|
|
248
265
|
@html << "</blockquote>\n"
|
|
249
266
|
true
|
|
250
267
|
end
|
|
251
268
|
|
|
252
|
-
|
|
253
269
|
# Code
|
|
254
270
|
CODES = /^[`~]{3}\s*(\w+)?$/
|
|
255
271
|
PARSERS << :codes
|
|
@@ -375,11 +391,11 @@ class Markdown
|
|
|
375
391
|
alt,src,href=md[1],*md[2].strip.split(/\s+/,2)
|
|
376
392
|
style = ' '
|
|
377
393
|
case alt
|
|
378
|
-
when
|
|
394
|
+
when /^:.*:$/
|
|
379
395
|
style = %Q( style="display: block; margin-left: auto; margin-right: auto;" )
|
|
380
|
-
when
|
|
396
|
+
when /:$/
|
|
381
397
|
style = %Q( style="float:left;" )
|
|
382
|
-
when
|
|
398
|
+
when /^:/
|
|
383
399
|
style = %Q( style="float:right;" )
|
|
384
400
|
end
|
|
385
401
|
if /(\d+)x(\d+)/.match alt
|
|
@@ -400,52 +416,48 @@ class Markdown
|
|
|
400
416
|
PARSERS << :forms
|
|
401
417
|
def forms
|
|
402
418
|
md = FORMS.match(@line) or return false
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
419
|
+
fields,nl,submit = 0,false,nil
|
|
420
|
+
action = (_=/\(([^\(\)]*)\)!?$/.match(@line))? %Q( action="#{_[1]}") : nil
|
|
421
|
+
method = @line.match?(/!$/) ? ' method="post"' : nil
|
|
422
|
+
@html << %Q(<form#{action}#{method}#{@opt[:attributes]}>\n)
|
|
423
|
+
@opt.delete(:attributes)
|
|
406
424
|
while md
|
|
407
|
-
n
|
|
408
|
-
form << ' <br>' if n > 1
|
|
425
|
+
@html << " <br>\n" if nl
|
|
409
426
|
@line.scan(FIELDS).each do |field, pwd, name, value|
|
|
410
|
-
method ||= ' method="post"' if pwd
|
|
411
427
|
field &&= field[0...-1]
|
|
412
428
|
value &&= value[2...-1]
|
|
413
429
|
if field
|
|
414
430
|
type = (pwd)? 'password' : 'text'
|
|
415
431
|
if value
|
|
416
432
|
if (values = value.split('","')).length > 1
|
|
417
|
-
|
|
418
|
-
values.each do |value|
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
end
|
|
422
|
-
|
|
433
|
+
@html << %Q(#{field}:<select name="#{name}">\n)
|
|
434
|
+
values.each do |value|
|
|
435
|
+
fields += 1
|
|
436
|
+
@html << %Q( <option value="#{value}">#{value}</option>\n)
|
|
437
|
+
end
|
|
438
|
+
@html << "</select>\n"
|
|
423
439
|
else
|
|
424
|
-
fields += 1
|
|
425
|
-
|
|
440
|
+
fields += 1
|
|
441
|
+
@html << %Q{ #{field}:<input type="#{type}" name="#{name}" value="#{value}">\n}
|
|
426
442
|
end
|
|
427
443
|
else
|
|
428
444
|
fields += 1
|
|
429
|
-
|
|
445
|
+
@html << %Q{ #{field}:<input type="#{type}" name="#{name}">\n}
|
|
430
446
|
end
|
|
431
447
|
elsif name=='submit'
|
|
432
448
|
submit = value
|
|
433
449
|
else
|
|
434
|
-
|
|
450
|
+
@html << %Q{ <input type="hidden" name="#{name}" value="#{value}">\n}
|
|
435
451
|
end
|
|
436
452
|
end
|
|
437
|
-
md
|
|
453
|
+
md=(@line=@file.gets)&.match(FORMS) and nl=true
|
|
438
454
|
end
|
|
439
455
|
if submit or not fields==1
|
|
440
456
|
submit ||= 'Submit'
|
|
441
|
-
|
|
442
|
-
|
|
457
|
+
@html << " <br>\n" if nl
|
|
458
|
+
@html << %Q( <input type="submit" value="#{submit}">\n)
|
|
443
459
|
end
|
|
444
|
-
|
|
445
|
-
form << %Q(</form>)
|
|
446
|
-
@html << form.join("\n")
|
|
447
|
-
@html << "\n"
|
|
448
|
-
@opt.delete(:attributes)
|
|
460
|
+
@html << %Q(</form>\n)
|
|
449
461
|
true
|
|
450
462
|
end
|
|
451
463
|
|
|
@@ -457,17 +469,17 @@ form << %Q{ #{field}:<input type="#{type}" name="#{name}" value="#{value}">}
|
|
|
457
469
|
if File.exist?(filename=File.join(ROOT, md[1]))
|
|
458
470
|
extension,lang = filename.split('.').last,nil
|
|
459
471
|
unless extension=='html'
|
|
460
|
-
lang = Rouge::Lexer.find extension
|
|
472
|
+
lang = Rouge::Lexer.find(extension) unless extension=='txt'
|
|
461
473
|
klass = lang ? ' class="highlight"' : nil
|
|
462
474
|
@html << "<pre#{klass}#{@opt[:attributes]}>"
|
|
463
475
|
@opt.delete(:attributes)
|
|
464
|
-
@html << '<code>'
|
|
476
|
+
@html << '<code>' if lang
|
|
465
477
|
@html << "\n"
|
|
466
478
|
end
|
|
467
479
|
code = File.read(filename)
|
|
468
480
|
@html << (lang ? ROUGE.format(lang.new.lex(code)) : code)
|
|
469
481
|
unless extension=='html'
|
|
470
|
-
@html << '</code>'
|
|
482
|
+
@html << '</code>' if lang
|
|
471
483
|
@html << '</pre>'
|
|
472
484
|
@html << "\n"
|
|
473
485
|
end
|
data/lib/markita/preprocess.rb
CHANGED
|
@@ -6,7 +6,7 @@ class Preprocess
|
|
|
6
6
|
end
|
|
7
7
|
|
|
8
8
|
def gets
|
|
9
|
-
|
|
9
|
+
while line = @file.gets
|
|
10
10
|
case line
|
|
11
11
|
when @regx
|
|
12
12
|
line = @template if @template
|
|
@@ -14,17 +14,17 @@ class Preprocess
|
|
|
14
14
|
line = line.gsub("&#{name.downcase};", value)
|
|
15
15
|
line = line.gsub("&#{name.upcase};", CGI.escape(value))
|
|
16
16
|
end
|
|
17
|
+
return line
|
|
17
18
|
when %r(^! regx = /(.*)/$)
|
|
18
19
|
@regx = Regexp.new $1
|
|
19
|
-
line = gets
|
|
20
20
|
when %r(^! template = "(.*)"$)
|
|
21
21
|
@template = $1+"\n"
|
|
22
|
-
line = gets
|
|
23
22
|
else
|
|
24
23
|
@regx &&= (@template=nil)
|
|
24
|
+
return line
|
|
25
25
|
end
|
|
26
26
|
end
|
|
27
|
-
|
|
27
|
+
return nil
|
|
28
28
|
end
|
|
29
29
|
end
|
|
30
30
|
end
|
data/lib/markita.rb
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
module Markita
|
|
2
|
-
VERSION = '
|
|
2
|
+
VERSION = '4.0.221124'
|
|
3
3
|
|
|
4
4
|
def self.run!
|
|
5
5
|
# Standard libraries
|
|
@@ -16,12 +16,15 @@ module Markita
|
|
|
16
16
|
require_relative 'markita/markdown.rb'
|
|
17
17
|
require_relative 'markita/base.rb'
|
|
18
18
|
# Plugs
|
|
19
|
+
require_relative 'markita/plug/about.rb' unless OPTIONS&.no_about
|
|
19
20
|
require_relative 'markita/plug/favicon.rb' unless OPTIONS&.no_favicon
|
|
20
21
|
require_relative 'markita/plug/highlight.rb' unless OPTIONS&.no_highlight
|
|
21
|
-
require_relative 'markita/plug/navigation.rb' unless OPTIONS&.no_navigation
|
|
22
22
|
require_relative 'markita/plug/login.rb' unless OPTIONS&.no_login
|
|
23
|
-
require_relative 'markita/plug/
|
|
23
|
+
require_relative 'markita/plug/navigation.rb' unless OPTIONS&.no_navigation
|
|
24
24
|
require_relative 'markita/plug/plugs.rb' unless OPTIONS&.no_plugs
|
|
25
|
+
require_relative 'markita/plug/readme.rb' unless OPTIONS&.no_readme
|
|
25
26
|
Base.run!
|
|
26
27
|
end
|
|
27
28
|
end
|
|
29
|
+
# Requires:
|
|
30
|
+
#`ruby`
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: markita
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version:
|
|
4
|
+
version: 4.0.221124
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- CarlosJHR64
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2022-11-24 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: help_parser
|
|
@@ -36,40 +36,40 @@ dependencies:
|
|
|
36
36
|
requirements:
|
|
37
37
|
- - "~>"
|
|
38
38
|
- !ruby/object:Gem::Version
|
|
39
|
-
version: '
|
|
39
|
+
version: '4.0'
|
|
40
40
|
- - ">="
|
|
41
41
|
- !ruby/object:Gem::Version
|
|
42
|
-
version:
|
|
42
|
+
version: 4.0.0
|
|
43
43
|
type: :runtime
|
|
44
44
|
prerelease: false
|
|
45
45
|
version_requirements: !ruby/object:Gem::Requirement
|
|
46
46
|
requirements:
|
|
47
47
|
- - "~>"
|
|
48
48
|
- !ruby/object:Gem::Version
|
|
49
|
-
version: '
|
|
49
|
+
version: '4.0'
|
|
50
50
|
- - ">="
|
|
51
51
|
- !ruby/object:Gem::Version
|
|
52
|
-
version:
|
|
52
|
+
version: 4.0.0
|
|
53
53
|
- !ruby/object:Gem::Dependency
|
|
54
54
|
name: sinatra
|
|
55
55
|
requirement: !ruby/object:Gem::Requirement
|
|
56
56
|
requirements:
|
|
57
57
|
- - "~>"
|
|
58
58
|
- !ruby/object:Gem::Version
|
|
59
|
-
version: '
|
|
59
|
+
version: '3.0'
|
|
60
60
|
- - ">="
|
|
61
61
|
- !ruby/object:Gem::Version
|
|
62
|
-
version:
|
|
62
|
+
version: 3.0.3
|
|
63
63
|
type: :runtime
|
|
64
64
|
prerelease: false
|
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
|
66
66
|
requirements:
|
|
67
67
|
- - "~>"
|
|
68
68
|
- !ruby/object:Gem::Version
|
|
69
|
-
version: '
|
|
69
|
+
version: '3.0'
|
|
70
70
|
- - ">="
|
|
71
71
|
- !ruby/object:Gem::Version
|
|
72
|
-
version:
|
|
72
|
+
version: 3.0.3
|
|
73
73
|
- !ruby/object:Gem::Dependency
|
|
74
74
|
name: thin
|
|
75
75
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -118,12 +118,13 @@ files:
|
|
|
118
118
|
- lib/markita/plug/login.rb
|
|
119
119
|
- lib/markita/plug/navigation.rb
|
|
120
120
|
- lib/markita/plug/plugs.rb
|
|
121
|
+
- lib/markita/plug/readme.rb
|
|
121
122
|
- lib/markita/preprocess.rb
|
|
122
123
|
homepage: https://github.com/carlosjhr64/markita
|
|
123
124
|
licenses:
|
|
124
125
|
- MIT
|
|
125
126
|
metadata: {}
|
|
126
|
-
post_install_message:
|
|
127
|
+
post_install_message:
|
|
127
128
|
rdoc_options: []
|
|
128
129
|
require_paths:
|
|
129
130
|
- lib
|
|
@@ -137,9 +138,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
137
138
|
- - ">="
|
|
138
139
|
- !ruby/object:Gem::Version
|
|
139
140
|
version: '0'
|
|
140
|
-
requirements:
|
|
141
|
-
|
|
142
|
-
|
|
141
|
+
requirements:
|
|
142
|
+
- 'ruby: ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [aarch64-linux]'
|
|
143
|
+
rubygems_version: 3.3.7
|
|
144
|
+
signing_key:
|
|
143
145
|
specification_version: 4
|
|
144
146
|
summary: A Sinatra Markdown server.
|
|
145
147
|
test_files: []
|