livetext 0.8.94 → 0.8.95
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/formatline.rb +1 -0
- data/lib/functions.rb +10 -0
- data/lib/livetext.rb +10 -13
- data/lib/standard.rb +10 -57
- data/lib/userapi.rb +7 -3
- data/plugin/markdown.rb +6 -6
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8d50c436a237a5e3f02b6619316c5ff37efa5d0c58e4d64eb5445c05f3a54dfa
|
4
|
+
data.tar.gz: c849446d4dd970e89c3cace0a8f1af13e3eadc2918df35f6614dc99192cbbd80
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b778d4a49af38754d8a35df8e8cf42da35933888d26a6e13dd65cf944991f0521fc7138f49d174e7c3e640a93b84c451b3877d5424793e0cf4cd2af580964e66
|
7
|
+
data.tar.gz: 620dac5c5eca194d84cf758ceddf738ad5bc41c8574ac110d6599bb5e5542857781e7dd66a4710e3a416490cb7934063b3f826860aa26172bc8f633ad7f562d1
|
data/lib/formatline.rb
CHANGED
@@ -108,6 +108,7 @@ class FormatLine
|
|
108
108
|
when :str
|
109
109
|
@out << val unless val == "\n" # BUG
|
110
110
|
when :var
|
111
|
+
# STDERR.puts "=== lt: sym = #{sym} val = #{val} sub = #{varsub(val).inspect} #{Livetext::Vars[sym].inspect}"
|
111
112
|
@out << varsub(val)
|
112
113
|
when :func
|
113
114
|
param = nil
|
data/lib/functions.rb
CHANGED
@@ -17,6 +17,16 @@ class Livetext::Functions # Functions will go here... user-def AND pre-def??
|
|
17
17
|
Time.now.strftime("%T")
|
18
18
|
end
|
19
19
|
|
20
|
+
def pwd(param=nil)
|
21
|
+
::Dir.pwd
|
22
|
+
end
|
23
|
+
|
24
|
+
def rand(param=nil)
|
25
|
+
# STDERR.puts "param = #{param.inspect}"
|
26
|
+
n1, n2 = param.split.map(&:to_i)
|
27
|
+
::Kernel.rand(n1..n2).to_s
|
28
|
+
end
|
29
|
+
|
20
30
|
def link(param=nil)
|
21
31
|
text, url = param.split("|", 2) # reverse these?
|
22
32
|
"<a href='#{url}'>#{text}</a>"
|
data/lib/livetext.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
class Livetext
|
2
|
-
VERSION = "0.8.
|
2
|
+
VERSION = "0.8.95"
|
3
3
|
Path = File.expand_path(File.join(File.dirname(__FILE__)))
|
4
4
|
end
|
5
5
|
|
@@ -130,8 +130,8 @@ class Livetext
|
|
130
130
|
rescue => err
|
131
131
|
puts "process_text: err = #{err}"
|
132
132
|
# puts err.backtrace.join("\n")
|
133
|
-
puts @body
|
134
|
-
@body = ""
|
133
|
+
puts @body
|
134
|
+
@body = ""
|
135
135
|
return @body
|
136
136
|
end
|
137
137
|
|
@@ -149,10 +149,10 @@ puts @body
|
|
149
149
|
process_line(line)
|
150
150
|
end
|
151
151
|
val = @main.finalize if @main.respond_to? :finalize
|
152
|
-
|
153
|
-
|
154
|
-
|
155
|
-
puts
|
152
|
+
@body
|
153
|
+
rescue => err
|
154
|
+
STDERR.puts "ERROR #{err} in process_file"
|
155
|
+
err.backtrace.each {|x| STDERR.puts " " + x }
|
156
156
|
@body = ""
|
157
157
|
end
|
158
158
|
|
@@ -200,17 +200,14 @@ return @body
|
|
200
200
|
if @main.respond_to?(name)
|
201
201
|
result = @main.send(name)
|
202
202
|
else
|
203
|
-
|
204
|
-
TTY.puts "#{(@main.methods - Object.methods).sort.inspect}"
|
205
|
-
TTY.puts name.inspect
|
206
|
-
@main._error! "Name '#{name}' is unknown"
|
203
|
+
@main._error! "Name '#{name}' is unknown; version = #{Livetext::VERSION}"
|
207
204
|
return
|
208
205
|
end
|
209
206
|
result
|
210
207
|
rescue => err
|
211
208
|
@main._error!(err)
|
212
|
-
puts @body
|
213
|
-
@body = ""
|
209
|
+
puts @body
|
210
|
+
@body = ""
|
214
211
|
return @body
|
215
212
|
end
|
216
213
|
|
data/lib/standard.rb
CHANGED
@@ -34,7 +34,7 @@ module Livetext::Standard
|
|
34
34
|
|
35
35
|
def shell
|
36
36
|
cmd = @_data
|
37
|
-
|
37
|
+
# _errout("Running: #{cmd}")
|
38
38
|
system(cmd)
|
39
39
|
end
|
40
40
|
|
@@ -79,52 +79,6 @@ EOS
|
|
79
79
|
# exit!
|
80
80
|
end
|
81
81
|
|
82
|
-
# def outdir
|
83
|
-
# @_outdir = @_args.first
|
84
|
-
# _optional_blank_line
|
85
|
-
# end
|
86
|
-
#
|
87
|
-
# def outdir! # FIXME ?
|
88
|
-
# @_outdir = @_args.first
|
89
|
-
# raise "No output directory specified" if @_outdir.nil?
|
90
|
-
# raise "No output directory specified" if @_outdir.empty?
|
91
|
-
# system("rm -f #@_outdir/*.html")
|
92
|
-
# _optional_blank_line
|
93
|
-
# end
|
94
|
-
#
|
95
|
-
# def _output(name)
|
96
|
-
# @_outdir ||= "." # FIXME
|
97
|
-
# @output.puts @body
|
98
|
-
# @body = ""
|
99
|
-
# @output.close unless @output == STDOUT
|
100
|
-
# @output = File.open(@_outdir + "/" + name, "w")
|
101
|
-
# @output.puts "<meta charset='UTF-8'>\n\n"
|
102
|
-
# end
|
103
|
-
#
|
104
|
-
# def _append(name)
|
105
|
-
# @_outdir ||= "." # FIXME
|
106
|
-
# @output.close unless @output == STDOUT
|
107
|
-
# @output = File.open(@_outdir + "/" + name, "a")
|
108
|
-
# @output.puts "<meta charset='UTF-8'>\n\n"
|
109
|
-
# end
|
110
|
-
#
|
111
|
-
# def output
|
112
|
-
# name = @_args.first
|
113
|
-
# _debug "Redirecting output to: #{name}"
|
114
|
-
# _output(name)
|
115
|
-
# end
|
116
|
-
#
|
117
|
-
# def append
|
118
|
-
# file = @_args[0]
|
119
|
-
# _append(file)
|
120
|
-
# end
|
121
|
-
#
|
122
|
-
# def next_output
|
123
|
-
# tag, num = @_args
|
124
|
-
# _next_output(tag, num)
|
125
|
-
# _optional_blank_line
|
126
|
-
# end
|
127
|
-
#
|
128
82
|
|
129
83
|
def cleanup
|
130
84
|
@_args.each do |item|
|
@@ -136,13 +90,6 @@ EOS
|
|
136
90
|
end
|
137
91
|
end
|
138
92
|
|
139
|
-
# def _next_output(tag = "sec", num = nil)
|
140
|
-
# @_file_num = num ? num : @_file_num + 1
|
141
|
-
# @_file_num = @_file_num.to_i
|
142
|
-
# name = "#{'%03d' % @_file_num}-#{tag}.html"
|
143
|
-
# _output(name)
|
144
|
-
# end
|
145
|
-
|
146
93
|
def _def
|
147
94
|
name = @_args[0]
|
148
95
|
str = "def #{name}\n"
|
@@ -259,12 +206,17 @@ EOS
|
|
259
206
|
end
|
260
207
|
end
|
261
208
|
|
209
|
+
def reval
|
210
|
+
eval _data
|
211
|
+
end
|
212
|
+
|
262
213
|
def heredoc
|
263
214
|
var = @_args[0]
|
264
215
|
str = _body_text
|
265
216
|
s2 = ""
|
266
217
|
str.each_line do |s|
|
267
|
-
|
218
|
+
str = FormatLine.var_func_parse(s.chomp)
|
219
|
+
s2 << str # + "<br>"
|
268
220
|
end
|
269
221
|
indent = @parent.indentation.last
|
270
222
|
indented = " " * indent
|
@@ -278,6 +230,7 @@ EOS
|
|
278
230
|
# end
|
279
231
|
# s2 << line
|
280
232
|
# end
|
233
|
+
# STDERR.puts "HERE: #{var} = #{s2.chomp.inspect}"
|
281
234
|
@parent._setvar(var, s2.chomp)
|
282
235
|
_optional_blank_line
|
283
236
|
end
|
@@ -292,7 +245,7 @@ EOS
|
|
292
245
|
loop do
|
293
246
|
front = "../" * count
|
294
247
|
count += 1
|
295
|
-
here = Pathname.new(front).expand_path.dirname
|
248
|
+
here = Pathname.new(front).expand_path.dirname.to_s
|
296
249
|
break if here == "/"
|
297
250
|
path = front + file
|
298
251
|
value = path if File.exist?(path)
|
@@ -366,7 +319,7 @@ EOS
|
|
366
319
|
if File.exist?(file)
|
367
320
|
# Just keep going...
|
368
321
|
else
|
369
|
-
if File.expand_path(".") != "/"
|
322
|
+
if File.expand_path(".").dirname != "/"
|
370
323
|
Dir.chdir("..") { mixin }
|
371
324
|
return
|
372
325
|
else
|
data/lib/userapi.rb
CHANGED
@@ -88,8 +88,11 @@ module Livetext::UserAPI
|
|
88
88
|
break
|
89
89
|
end
|
90
90
|
next if _comment?(@line)
|
91
|
+
flag = (@line.include?("og:title"))
|
91
92
|
# FIXME Will cause problem with $. ?
|
93
|
+
# STDERR.puts "lt3: _body @line = #{@line.inspect}" if flag
|
92
94
|
@line = _format(@line) unless raw
|
95
|
+
# STDERR.puts " @line = #{@line.inspect}" if flag
|
93
96
|
lines << @line
|
94
97
|
end
|
95
98
|
raise unless end_found
|
@@ -100,9 +103,10 @@ module Livetext::UserAPI
|
|
100
103
|
lines
|
101
104
|
end
|
102
105
|
rescue => err
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
+
str = "Fake error? 'Expecting .end, found end of file'\n"
|
107
|
+
str << err.inspect + "\n"
|
108
|
+
str << err.backtrace.map {|x| " " + x }.join("\n")
|
109
|
+
_error!(str)
|
106
110
|
end
|
107
111
|
|
108
112
|
def _body_text(raw=false)
|
data/plugin/markdown.rb
CHANGED
@@ -6,12 +6,12 @@ SimpleFormats[:i] = %w[_ _]
|
|
6
6
|
SimpleFormats[:t] = %w[` `]
|
7
7
|
SimpleFormats[:s] = %w[<strike> </strike>]
|
8
8
|
|
9
|
-
def h1; _out "# #{@_data}"; _optional_blank_line end # atx style for now
|
10
|
-
def h2; _out "## #{@_data}"; _optional_blank_line end
|
11
|
-
def h3; _out "### #{@_data}"; _optional_blank_line end
|
12
|
-
def h4; _out "#### #{@_data}"; _optional_blank_line end
|
13
|
-
def h5; _out "##### #{@_data}"; _optional_blank_line end
|
14
|
-
def h6; _out "###### #{@_data}"; _optional_blank_line end
|
9
|
+
def h1; _out "# #{FormatLine.var_func_parse(@_data)}"; _optional_blank_line end # atx style for now
|
10
|
+
def h2; _out "## #{FormatLine.var_func_parse(@_data)}"; _optional_blank_line end
|
11
|
+
def h3; _out "### #{FormatLine.var_func_parse(@_data)}"; _optional_blank_line end
|
12
|
+
def h4; _out "#### #{FormatLine.var_func_parse(@_data)}"; _optional_blank_line end
|
13
|
+
def h5; _out "##### #{FormatLine.var_func_parse(@_data)}"; _optional_blank_line end
|
14
|
+
def h6; _out "###### #{FormatLine.var_func_parse(@_data)}"; _optional_blank_line end
|
15
15
|
|
16
16
|
def title
|
17
17
|
h1
|
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.
|
4
|
+
version: 0.8.95
|
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-
|
11
|
+
date: 2019-11-11 00:00:00.000000000 Z
|
12
12
|
dependencies: []
|
13
13
|
description: A smart text processor extensible in Ruby
|
14
14
|
email: rubyhacker@gmail.com
|