livetext 0.8.77 → 0.8.78

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,12 +1,12 @@
1
+ Here is an alphabetized list:
2
+ <p>
3
+
1
4
  aardvark anamorphic anarchist
2
5
  bellicose cytology ectomorph
3
6
  fishmonger fusillade glyph
4
7
  gryphon halcyon manicotti
5
8
  mataeotechny pareidolia quark
6
9
  zootrope zymurgy
7
- Here is an alphabetized list:
8
- <p>
9
-
10
10
  <p>
11
11
 
12
12
  And that is all.
@@ -7,8 +7,8 @@
7
7
  text.gsub!(/\n/, " ")
8
8
  words = text.split.sort
9
9
  words.each_slice(cols) do |row|
10
- row.each {|w| _print '%-15s' % w }
11
- _puts
10
+ row.each {|w| _out! '%-15s' % w }
11
+ _out
12
12
  end
13
13
  .end
14
14
  Here is an alphabetized list:
@@ -1,186 +1,10 @@
1
- tick: Single token, beginning of line
2
- `def is like a reserved word
3
- <font size=+1><tt>def</tt></font> is like a reserved word
4
-
5
- tick: Single token, middle of line
6
- They say `def is like a reserved word
7
- They say <font size=+1><tt>def</tt></font> is like a reserved word
8
-
9
- tick: Single token, end of line
10
- like a reserved word, is `def
11
- like a reserved word, is <font size=+1><tt>def</tt></font>
12
-
13
- tick: Bracketed, normal
14
- This is `[code font] here
15
- This is <font size=+1><tt>code font</tt></font> here
16
-
17
- tick: Bracketed, hits EOL
18
- This is `[code font here
19
- This is <font size=+1><tt>code font here</tt></font>
20
-
21
- tick: followed by space
22
- This is not ` code
23
- This is not ` code
24
-
25
- tick: followed by EOL
26
- This also isn't code: `
27
- This also isn't code: `
28
-
29
- tick: Doubled, ignores comma
30
- This is ``code, of course
31
- This is <font size=+1><tt>code</tt></font>, of course
32
-
33
- tick: Doubled, ignores period
34
- This is ``code. Hooray, I guess.
35
- This is <font size=+1><tt>code</tt></font>. Hooray, I guess.
36
-
37
- tick: Doubled, ignores right paren
38
- (By the way, this is ``code)
39
- (By the way, this is <font size=+1><tt>code</tt></font>)
40
-
41
- tick: Doubled, ignores EOL
42
- Up to EOL, this is ``code
43
- Up to EOL, this is <font size=+1><tt>code</tt></font>
44
-
45
- uscore: Single token, beginning of line
46
- _This is italics
47
- <i>This</i> is italics
48
-
49
- uscore: Single token, middle of line
50
- And _this is italics
51
- And <i>this</i> is italics
52
-
53
- uscore: Single token, end of line
54
- And so is _this
55
- And so is <i>this</i>
56
-
57
- uscore: Bracketed, normal
58
- The _[USS Enterprise] was here
59
- The <i>USS Enterprise</i> was here
60
-
61
- uscore: Bracketed, hits EOL
62
- Hey, it's the _[USS Enterprise
63
- Hey, it's the <i>USS Enterprise</i>
64
-
65
- uscore: followed by space
66
- This: _ is just an underscore
67
- This: _ is just an underscore
68
-
69
- uscore: followed by EOL
70
- This is just an underscore: _
71
- This is just an underscore: _
72
-
73
- uscore: Doubled, ignores comma
74
- Just a __second, ok?
75
- Just a <i>second</i>, ok?
76
-
77
- uscore: Doubled, ignores period
78
- Just a __second. OK?
79
- Just a <i>second</i>. OK?
80
-
81
- uscore: Doubled, ignores right paren
82
- I'll (just a __second) be right there.
83
- I'll (just a <i>second</i>) be right there.
84
-
85
- uscore: Doubled, ignores EOL
86
- Be there in a __second
87
- Be there in a <i>second</i>
88
-
89
- Tick has precedence over underscore
90
- This is a `piece_of_code here
91
- This is a <font size=+1><tt>piece_of_code</tt></font> here
92
-
93
- under: Starts after double quote?
94
- He said, "_Please go away."
95
- He said, "<i>Please</i> go away."
96
-
97
- Dollar sign followed by blank
98
- This: $ is a dollar sign
99
- This: $ is a dollar sign
100
-
101
- Dollar sign followed by non-alpha
102
- I'd pay $3 for that
103
- I'd pay $3 for that
104
-
105
- Dollar sign followed by EOL
106
- This is a dollar sign: $
107
- This is a dollar sign: $
108
-
109
- Double dollar sign followed by blank
110
- This: $$ is not a function call
111
- This: $$ is not a function call
112
-
113
- Double dollar sign followed by non-alpha
114
- If I say $$-, that's not a function call
115
- If I say $$-, that's not a function call
116
-
117
- Double dollar sign followed by EOL
118
- This is two dollar signs: $$
119
- This is two dollar signs: $$
120
-
121
- Escaped *
122
- Asterisk followed by abc: \*abc
123
- Asterisk followed by abc: *abc
124
-
125
- Escaped _
126
- Underscore followed by abc: \_abc
127
- Underscore followed by abc: _abc
128
-
129
- Escaped `
130
- Tick followed by abc: \`abc
131
- Tick followed by abc: `abc
132
-
133
- Escaped $
134
- This: \$var is not a variable
135
- This: $var is not a variable
136
-
137
- Escaped $$
138
- This: \$\$func is not a function
139
- This: $$func is not a function
140
-
141
- strike: Single token, beginning of line
142
- ~this - no, I mean that
143
- <strike>this</strike> - no, I mean that
144
-
145
- strike: Single token, middle of line
146
- They say ~redacted is fun
147
- They say <strike>redacted</strike> is fun
148
-
149
- strike: Single token, end of line
150
- Ignore this: ~foobar
151
- Ignore this: <strike>foobar</strike>
152
-
153
- strike: Bracketed, normal
154
- This is ~[crossed out] text
155
- This is <strike>crossed out</strike> text
156
-
157
- strike: Bracketed, hits EOL
158
- This is ~[more stuff crossed out
159
- This is <strike>more stuff crossed out</strike>
160
-
161
- strike: followed by space
162
- This is not ~ overstrike
163
- This is not ~ overstrike
164
-
165
- strike: followed by EOL
166
- This also isn't overstrike: `
167
- This also isn't overstrike: `
168
-
169
- strike: Doubled, ignores comma
170
- This is ~~overstrike, of course
171
- This is <strike>overstrike</strike>, of course
172
-
173
- strike: Doubled, ignores period
174
- This is ~~overstrike. Hooray, I guess.
175
- This is <strike>overstrike</strike>. Hooray, I guess.
176
-
177
- strike: Doubled, ignores right paren
178
- (By the way, this is ~~overstrike)
179
- (By the way, this is <strike>overstrike</strike>)
1
+ Check output of $$date
2
+ Today is $$date, I guess
3
+ /Today is \d\d\d\d-\d\d-\d\d, I guess/
180
4
 
181
- strike: Doubled, ignores EOL
182
- Up to EOL, this is ~~redacted
183
- Up to EOL, this is <strike>redacted</strike>
5
+ Check output of $$time
6
+ Tick tock, it's $$time right now
7
+ /Tick tock, it's \d\d:\d\d:\d\d right now/
184
8
 
185
9
  Trying $$b function, no param
186
10
  This is $$b being called
@@ -274,11 +98,3 @@ Escape brackets inside ~
274
98
  There are brackets ~[\[\]] here
275
99
  There are brackets <strike>[]</strike> here
276
100
 
277
- Check output of $$date
278
- Today is $$date, I guess
279
- /Today is \d\d\d\d-\d\d-\d\d, I guess/
280
-
281
- Check output of $$time
282
- Tick tock, it's $$time right now
283
- /Tick tock, it's \d\d:\d\d:\d\d right now/
284
-
@@ -1,2 +1,5 @@
1
1
  Here I am
2
2
  testing a simple mixin
3
+ Now call a method:
4
+ Hello, world.
5
+ That's all.
@@ -1,3 +1,3 @@
1
1
  def hello_world
2
- puts "Hello, world."
2
+ _out "Hello, world."
3
3
  end
@@ -1,6 +1,6 @@
1
1
  Here I am
2
2
  testing a simple mixin
3
3
  .mixin simple_mixin
4
- Now call it:
4
+ Now call a method:
5
5
  .hello_world
6
6
  That's all.
File without changes
@@ -31,28 +31,42 @@ class TestingLivetext < MiniTest::Test
31
31
  break if f.eof?
32
32
  end
33
33
 
34
- TestLines.each.with_index do |item, i|
35
- msg, src, exp, blank = *item
36
- define_method("test_formatting_#{i}") do
37
- x = FormatLine.new
38
- actual = x.parse(src)
39
- if exp[0] == "/" # regex!
40
- exp = Regexp.compile(exp[1..-2]) # skip slashes
41
- assert_match(exp, actual, msg)
42
- else
43
- assert_equal(exp, actual, msg)
34
+ if File.size("subset.txt") # == 0
35
+ puts "Defining via TestLines"
36
+ TestLines.each.with_index do |item, i|
37
+ msg, src, exp, blank = *item
38
+ define_method("test_formatting_#{i}") do
39
+ actual = FormatLine.parse!(src)
40
+ if exp[0] == "/" # regex!
41
+ exp = Regexp.compile(exp[1..-2]) # skip slashes
42
+ assert_match(exp, actual, msg)
43
+ else
44
+ assert_equal(exp, actual, msg)
45
+ end
44
46
  end
45
47
  end
46
48
  end
47
49
 
48
50
  TestDirs = Dir.entries(".").reject {|f| ! File.directory?(f) } - %w[. ..]
51
+ selected = File.readlines("subset.txt").map(&:chomp)
52
+ Subset = selected.empty? ? TestDirs : selected
49
53
 
50
- TestDirs.each do |tdir|
54
+ # puts "Subset = #{Subset.inspect}"
55
+
56
+ Subset.each do |tdir|
51
57
  define_method("test_#{tdir}") do
52
58
  external_files(tdir)
53
59
  end
54
60
  end
55
61
 
62
+ def green(str)
63
+ "" + str + ""
64
+ end
65
+
66
+ def red(str)
67
+ "" + str + ""
68
+ end
69
+
56
70
  def external_files(base)
57
71
  Dir.chdir(base) do
58
72
  src, out, exp = "source.lt3", "/tmp/#{base}--actual-output.txt", "expected-output.txt"
@@ -63,12 +77,15 @@ class TestingLivetext < MiniTest::Test
63
77
 
64
78
  out_ok = output == expected
65
79
  err_ok = errors == errexp
66
- bad_out = "--- Expected: \n#{expected}\n--- Output: \n#{output}\n"
67
- bad_err = "--- Error Expected: \n#{errexp}\n--- Error Output: \n#{errors}\n"
80
+ nout = output.split("\n").size
81
+ nexp = expected.split("\n").size
82
+ bad_out = "--- Expected (#{nexp} lines): \n#{green(expected)}\n--- Output (#{nout} lines): \n#{red(output)}\n"
83
+ bad_err = "--- Error Expected: \n#{green(errexp)}\n--- Error Output: \n#{red(errors)}\n"
68
84
 
69
85
  assert(out_ok, bad_out)
70
86
  assert(err_ok, bad_err)
71
- system("rm -f #{out} #{err}") # only on success
87
+ # only on success
88
+ system("rm -f #{out} #{err}") if out_ok && err_ok
72
89
  end
73
90
  end
74
91
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: livetext
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.77
4
+ version: 0.8.78
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hal Fulton
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-04-21 00:00:00.000000000 Z
11
+ date: 2019-04-27 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A smart text processor extensible in Ruby
14
14
  email: rubyhacker@gmail.com
@@ -20,6 +20,8 @@ files:
20
20
  - "./README.lt3"
21
21
  - "./README.md"
22
22
  - bin/livetext
23
+ - lib/SAVE.formatline
24
+ - lib/SAVE2.formatline.rb
23
25
  - lib/formatline.rb
24
26
  - lib/functions.rb
25
27
  - lib/livetext.rb
@@ -36,6 +38,7 @@ files:
36
38
  - test/affirm/kbks.jpg
37
39
  - test/affirm/lm-kbks.lt
38
40
  - test/cleanup
41
+ - test/data/SAVE.lines
39
42
  - test/data/basic_formatting/expected-error.txt
40
43
  - test/data/basic_formatting/expected-output.txt
41
44
  - test/data/basic_formatting/source.lt3
@@ -123,6 +126,7 @@ files:
123
126
  - test/data/single_raw_line/expected-error.txt
124
127
  - test/data/single_raw_line/expected-output.txt
125
128
  - test/data/single_raw_line/source.lt3
129
+ - test/data/subset.txt
126
130
  - test/data/table_with_heredocs/expected-error.txt
127
131
  - test/data/table_with_heredocs/expected-output.txt
128
132
  - test/data/table_with_heredocs/source.lt3