teepee 0.9.0 → 0.10.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 +4 -4
- data/lib/teepee/command-parser.rb +28 -4
- data/lib/teepee/commander.rb +12 -4
- data/lib/teepee/single-character-token.rb +18 -2
- data/lib/teepee/tokenizer.rb +6 -2
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 43a6457c837f088ea65e01b0e6b87328da175545
|
4
|
+
data.tar.gz: be291f9907eb4b063548cdf403149e69dd25ee04
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f18343cd1794da3f33d2e4817fbd058004d7e11c8d2b436528383a2d534f475c8dcb001f1993042699e9b15cfcf84d40f637735cbe7e5db1a2e615173955729e
|
7
|
+
data.tar.gz: eac1d63a8fe1efe08a8066f64c57e2cac2f113ecd1e732a9016d35e2dac523205d8e0a95166e022633a71d57b467fa84bc564bb196c6da179dea2f0d5853483a
|
@@ -76,7 +76,7 @@ module Teepee
|
|
76
76
|
"opening_brace",
|
77
77
|
"openingbrace",
|
78
78
|
"obrace",
|
79
|
-
"-
|
79
|
+
"-("
|
80
80
|
@@commander.left_brace
|
81
81
|
when "right-brace",
|
82
82
|
"right_brace",
|
@@ -86,12 +86,36 @@ module Teepee
|
|
86
86
|
"closing_brace",
|
87
87
|
"closingbrace",
|
88
88
|
"cbrace",
|
89
|
-
"
|
89
|
+
")-"
|
90
90
|
@@commander.right_brace
|
91
|
+
when "left-bracket",
|
92
|
+
"left_bracket",
|
93
|
+
"opening-bracket",
|
94
|
+
"opening_bracket",
|
95
|
+
"lbracket",
|
96
|
+
"obracket",
|
97
|
+
"(("
|
98
|
+
@@commander.left_bracket
|
99
|
+
when "right-bracket",
|
100
|
+
"right_bracket",
|
101
|
+
"closing-bracket",
|
102
|
+
"closing_bracket",
|
103
|
+
"rbracket",
|
104
|
+
"cbracket",
|
105
|
+
"))"
|
106
|
+
@@commander.right_bracket
|
91
107
|
when "pipe"
|
92
108
|
@@commander.pipe
|
93
|
-
when "
|
94
|
-
|
109
|
+
when "backtick",
|
110
|
+
"backquote",
|
111
|
+
"'"
|
112
|
+
@@commander.backquote
|
113
|
+
when "squiggle",
|
114
|
+
"tilde"
|
115
|
+
@@commander.squiggle
|
116
|
+
when "lagergeld",
|
117
|
+
"youreapeon"
|
118
|
+
@@commander.lagergeld
|
95
119
|
when "_"
|
96
120
|
@@commander.nbsp optional_number_from_expression
|
97
121
|
when "space"
|
data/lib/teepee/commander.rb
CHANGED
@@ -216,6 +216,10 @@ module Teepee
|
|
216
216
|
html_tag :b, expressions
|
217
217
|
end
|
218
218
|
|
219
|
+
def backquote
|
220
|
+
"`"
|
221
|
+
end
|
222
|
+
|
219
223
|
def backslash
|
220
224
|
"\\"
|
221
225
|
end
|
@@ -399,10 +403,6 @@ module Teepee
|
|
399
403
|
html_tag :h6, expressions
|
400
404
|
end
|
401
405
|
|
402
|
-
def hash
|
403
|
-
"#"
|
404
|
-
end
|
405
|
-
|
406
406
|
def i
|
407
407
|
command_error "Complex numbers are not yet supported."
|
408
408
|
end
|
@@ -470,6 +470,10 @@ module Teepee
|
|
470
470
|
"{"
|
471
471
|
end
|
472
472
|
|
473
|
+
def left_bracket
|
474
|
+
"["
|
475
|
+
end
|
476
|
+
|
473
477
|
def lgamma n
|
474
478
|
ensure_numeric Math::lgamma(n).first
|
475
479
|
end
|
@@ -536,6 +540,10 @@ module Teepee
|
|
536
540
|
"}"
|
537
541
|
end
|
538
542
|
|
543
|
+
def right_bracket
|
544
|
+
"]"
|
545
|
+
end
|
546
|
+
|
539
547
|
def sin angle
|
540
548
|
ensure_numeric Math.sin angle
|
541
549
|
end
|
@@ -70,11 +70,27 @@ module Teepee
|
|
70
70
|
CHARACTER_MATCHED = "}"
|
71
71
|
end
|
72
72
|
|
73
|
+
class LeftBracketToken < SingleCharacterToken
|
74
|
+
CHARACTER_MATCHED = "["
|
75
|
+
end
|
76
|
+
|
77
|
+
class RightBracketToken < SingleCharacterToken
|
78
|
+
CHARACTER_MATCHED = "]"
|
79
|
+
end
|
80
|
+
|
73
81
|
class PipeToken < SingleCharacterToken
|
74
82
|
CHARACTER_MATCHED = "|"
|
75
83
|
end
|
76
84
|
|
77
|
-
class
|
78
|
-
CHARACTER_MATCHED = "
|
85
|
+
class BackquoteToken < SingleCharacterToken
|
86
|
+
CHARACTER_MATCHED = "`"
|
87
|
+
end
|
88
|
+
|
89
|
+
class SquiggleToken < SingleCharacterToken
|
90
|
+
CHARACTER_MATCHED = "~"
|
91
|
+
end
|
92
|
+
|
93
|
+
class LagergeldToken < SingleCharacterToken
|
94
|
+
CHARACTER_MATCHED = "€"
|
79
95
|
end
|
80
96
|
end
|
data/lib/teepee/tokenizer.rb
CHANGED
@@ -57,9 +57,13 @@ module Teepee
|
|
57
57
|
while rest.length > 0
|
58
58
|
if result = BackslashToken.matches?(rest) or # Single Character Tokens
|
59
59
|
result = LeftBraceToken.matches?(rest) or
|
60
|
-
result =
|
60
|
+
result = LeftBracketToken.matches?(rest) or
|
61
61
|
result = PipeToken.matches?(rest) or
|
62
|
-
result =
|
62
|
+
result = RightBraceToken.matches?(rest) or
|
63
|
+
result = RightBracketToken.matches?(rest) or
|
64
|
+
result = BackquoteToken.matches?(rest) or
|
65
|
+
result = SquiggleToken.matches?(rest) or
|
66
|
+
result = LagergeldToken.matches?(rest) or
|
63
67
|
result = EmptyNewlinesToken.matches?(rest) or # String Tokens
|
64
68
|
result = WhitespaceToken.matches?(rest) or
|
65
69
|
result = NumberToken.matches?(rest) or
|