mumukit-content-type 1.1.0 → 1.2.0
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 2da7e7173ce192c8b0a1dd3894552dc7fd7c8193fa9352d5f0a2711c43e2ce17
|
4
|
+
data.tar.gz: b4494893ecff3bb32e0889877d6f4b8fbb599e87e7d161c09c0875d1009fc8d1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 89fa810b1b7eed726a3768a1cf2864ce125a8e2c0e3dc614766b43586d844c7344d9a42cf22658b34c5c35e8ab3b22ccc5a389a040f736b033a1631fc2ddef72
|
7
|
+
data.tar.gz: 28b7d67563ade5e986a3f2547e5ba4412564eaaa6c05c2252a74694d63efd1eb648ef8e618df31a62f3c5d02e36e9022dc62398914359057e3f86e8a3ad68282
|
data/LICENSE.txt
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
The MIT License (MIT)
|
2
2
|
|
3
|
-
Copyright (c) 2016 Franco Leonardo Bulgarelli
|
3
|
+
Copyright (c) 2016 - 2017 Franco Leonardo Bulgarelli
|
4
4
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
6
6
|
of this software and associated documentation files (the "Software"), to deal
|
data/lib/mumukit/content_type.rb
CHANGED
@@ -25,4 +25,5 @@ require_relative './content_type/md_emoji'
|
|
25
25
|
require_relative './content_type/markdown'
|
26
26
|
require_relative './content_type/with_markdown'
|
27
27
|
require_relative './content_type/plain'
|
28
|
-
require_relative './content_type/html'
|
28
|
+
require_relative './content_type/html'
|
29
|
+
require_relative './content_type/gobstones'
|
@@ -0,0 +1,70 @@
|
|
1
|
+
# -*- coding: utf-8 -*- #
|
2
|
+
|
3
|
+
module Rouge
|
4
|
+
module Lexers
|
5
|
+
class Gobstones < RegexLexer
|
6
|
+
title 'Gobstones'
|
7
|
+
desc 'Gobstones language'
|
8
|
+
tag 'gobstones'
|
9
|
+
filenames '*.gbs'
|
10
|
+
|
11
|
+
def self.analyze_text(_text)
|
12
|
+
0.3
|
13
|
+
end
|
14
|
+
|
15
|
+
reserved = %w(program interactive is return record
|
16
|
+
field variant case if then else switch to repeat while foreach
|
17
|
+
in match)
|
18
|
+
|
19
|
+
atoms = %w(False True Verde Rojo Vermelho Azul Negro Preto Norte Sur Sul Este Leste Oeste)
|
20
|
+
|
21
|
+
state :comments do
|
22
|
+
def comment_between(start, finish)
|
23
|
+
/#{start}.*?#{finish}/m
|
24
|
+
end
|
25
|
+
|
26
|
+
rule comment_between('{-', '-}'), Comment::Multiline
|
27
|
+
rule comment_between('\/\*', '\*\/'), Comment::Multiline
|
28
|
+
rule comment_between('"""', '"""'), Comment::Multiline
|
29
|
+
rule /((?<!<)-(?!>)|#|\/).*$/, Comment::Single
|
30
|
+
end
|
31
|
+
|
32
|
+
state :root do
|
33
|
+
def any(words)
|
34
|
+
/#{words.map { |word| word.concat('\\b') }.join('|')}/
|
35
|
+
end
|
36
|
+
|
37
|
+
mixin :comments
|
38
|
+
rule /\s+/, Text::Whitespace
|
39
|
+
rule any(reserved), Keyword::Reserved
|
40
|
+
rule any(atoms), Literal
|
41
|
+
rule /(type)(\s+)(\w+)/ do |m|
|
42
|
+
groups Keyword::Reserved, Text::Whitespace, Keyword::Type
|
43
|
+
end
|
44
|
+
mixin :functions
|
45
|
+
mixin :symbols
|
46
|
+
rule /\d+/, Literal::Number
|
47
|
+
rule /".+?"/, Literal::String
|
48
|
+
end
|
49
|
+
|
50
|
+
state :functions do
|
51
|
+
rule /(procedure|function)(\s+)(\w+)/ do
|
52
|
+
groups Keyword::Reserved, Text::Whitespace, Name::Function
|
53
|
+
end
|
54
|
+
|
55
|
+
rule /([a-zA-Z][a-zA-Z'_0-9]*)(\()/ do |m|
|
56
|
+
groups Name::Function, Text
|
57
|
+
end
|
58
|
+
rule /([a-z][a-zA-Z'_0-9]*)/, Name::Variable
|
59
|
+
end
|
60
|
+
|
61
|
+
state :symbols do
|
62
|
+
rule /:=|\.\.|\+\+|\.|_|->|<-/, Operator
|
63
|
+
rule /<=|<|>=|>|==|=/, Operator
|
64
|
+
rule /\|\||&&|\+|\*|-|\^/, Operator
|
65
|
+
rule /\(|\)|\{|\}/, Text
|
66
|
+
rule /,|;|:|\||\[|\]/, Text
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
@@ -11,6 +11,10 @@ module Mumukit::ContentType::Markdown
|
|
11
11
|
def table(header, body)
|
12
12
|
"<table class=\"table\"><thead>\n#{header}</thead><tbody>\n#{body}</tbody></table>\n"
|
13
13
|
end
|
14
|
+
|
15
|
+
def link(link, title, content)
|
16
|
+
"<a title=\"#{title}\" href=\"#{link}\" target=\"_blank\">#{content}</a>"
|
17
|
+
end
|
14
18
|
end
|
15
19
|
|
16
20
|
@@markdown = Redcarpet::Markdown.new(HTML, autolink: true, fenced_code_blocks: true, no_intra_emphasis: true, tables: true)
|
@@ -28,7 +28,7 @@ Gem::Specification.new do |spec|
|
|
28
28
|
spec.add_development_dependency 'rake', '~> 10.0'
|
29
29
|
spec.add_development_dependency 'rspec', '~>2.9'
|
30
30
|
|
31
|
-
spec.add_dependency 'rouge'
|
31
|
+
spec.add_dependency 'rouge', '~> 3.1'
|
32
32
|
spec.add_dependency 'redcarpet', '~> 3.3.2'
|
33
33
|
spec.add_dependency 'mumukit-core', '~> 1.0'
|
34
34
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mumukit-content-type
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Franco Leonardo Bulgarelli
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-02-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -56,16 +56,16 @@ dependencies:
|
|
56
56
|
name: rouge
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- - "
|
59
|
+
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
61
|
+
version: '3.1'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- - "
|
66
|
+
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
68
|
+
version: '3.1'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: redcarpet
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -113,6 +113,7 @@ files:
|
|
113
113
|
- bin/console
|
114
114
|
- bin/setup
|
115
115
|
- lib/mumukit/content_type.rb
|
116
|
+
- lib/mumukit/content_type/gobstones.rb
|
116
117
|
- lib/mumukit/content_type/html.rb
|
117
118
|
- lib/mumukit/content_type/markdown.rb
|
118
119
|
- lib/mumukit/content_type/md_emoji.rb
|
@@ -141,7 +142,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
141
142
|
version: '0'
|
142
143
|
requirements: []
|
143
144
|
rubyforge_project:
|
144
|
-
rubygems_version: 2.4
|
145
|
+
rubygems_version: 2.7.4
|
145
146
|
signing_key:
|
146
147
|
specification_version: 4
|
147
148
|
summary: Content Type handling for Mumuki
|