livetext 0.7.9 → 0.8.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
2
  SHA1:
3
- metadata.gz: 1a449b36a919484567bb601649627b5b58f9bdf1
4
- data.tar.gz: e3549c9abb38e73e7d0536380539d20413740130
3
+ metadata.gz: 93e53f99adb2db092428d0e3b5c66ecbfc173814
4
+ data.tar.gz: baffe8b343d7290ca8d8ffc3f419ea7745fc128c
5
5
  SHA512:
6
- metadata.gz: 4545e6cc0c86b4014b53c44ffd9df28107bdf72c0c69adaf678f49f1897205b2f2ca66e8ce982a7923205385ae20d3da4cde440cd44131c53467522cd18d2993
7
- data.tar.gz: b41ffe558578f7bc21c2b6d68417f28265f013617d74a03adf21c7cc1d28452feba09ed7a63d871eff0f28af7b560b429b9cbb4ac02d2397cbf0b6aaacfc5388
6
+ metadata.gz: 433d52e19811f6f6056759e5ec25df1944c34f382badf64d2e6f75e21f61e24381673a3f8e9119da776bc6257f0a37d8125160d157775453e003a50e131d23b9
7
+ data.tar.gz: a3254d97a375f0db7a74b9c8047a22b15a1157d0766a4ca1f8043bf70bfcbe42bf95483caa5accac2b924d52d1b014b26a14b439f460c23bd6e0f6baf0b1b56a
data/bin/livetext CHANGED
@@ -12,14 +12,16 @@ end
12
12
 
13
13
  case ARGV.first
14
14
  when "-v", "--version"
15
- puts "livetext version #{Livetext::VERSION}\n "
15
+ puts "#{Livetext::VERSION}\n "
16
16
  exit
17
17
  when nil
18
- puts "Usage: "
19
- puts " livetext -v"
20
- puts " livetext --version"
21
- puts " livetext filename"
22
- puts
18
+ puts <<-EOF
19
+ Usage:
20
+ livetext -v
21
+ livetext --version
22
+ livetext filename
23
+
24
+ EOF
23
25
  exit
24
26
  else
25
27
  src = ARGV.first
data/dsl/calibre.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  require 'fileutils'
2
2
 
3
3
  def epub!
4
- out = _substitution(@_args[0])
4
+ out = _formatting(@_args[0])
5
5
  src = @_args[1]
6
6
  @cover = @_args[2]
7
7
  if ::File.directory?(src)
data/dsl/liveblog.rb CHANGED
@@ -21,9 +21,8 @@ end
21
21
 
22
22
  def _passthru(line)
23
23
  @dest << "<p>" if line == "\n" and ! @_nopara
24
- OLD_formatting(line)
25
- _var_substitution(line)
26
- @dest << line
24
+ l2 = _formatting(line)
25
+ @dest << l2
27
26
  end
28
27
 
29
28
  def title
data/lib/formatline.rb CHANGED
@@ -44,17 +44,14 @@ class FormatLine
44
44
  @buffer << str
45
45
  end
46
46
 
47
- def varsub(name)
48
- Livetext::Vars[name]
49
- end
50
-
51
47
  def funcall(name, param)
52
48
  fobj = ::Livetext::Functions.new
53
- fobj.send(name, param)
49
+ fobj.param = param
50
+ fobj.send(name)
54
51
  end
55
52
 
56
53
  def vsub
57
- @buffer << varsub(@vname)
54
+ @buffer << Livetext::Vars[@vname]
58
55
  @vname = ""
59
56
  end
60
57
 
@@ -122,7 +119,7 @@ class FormatLine
122
119
  emit("$")
123
120
  break
124
121
  when Alpha
125
- loop { @vname << grab; break unless Alpha2 === peek }
122
+ loop { ch = peek; break if ch == EOL; @vname << grab; break unless Alpha2 === peek }
126
123
  vsub
127
124
  when "$"
128
125
  case skip
@@ -130,13 +127,15 @@ class FormatLine
130
127
  emit("$$")
131
128
  break
132
129
  when Alpha
133
- loop { @fname << grab; break unless Alpha2 === peek }
130
+ loop { ch = peek; break if ch == EOL; @fname << grab; break unless Alpha2 === peek }
134
131
  case peek
135
132
  when " " # no param - just call
133
+ @param = nil
136
134
  fcall # no param? Hmm
137
135
  when "[" # long param - may have spaces - can hit eol
138
136
  skip
139
137
  loop { break if ["]", EOL].include?(peek); @param << grab }
138
+ skip
140
139
  fcall
141
140
  when ":" # param (single token or to-eol)
142
141
  case skip
data/lib/functions.rb CHANGED
@@ -1,4 +1,16 @@
1
+ require 'standard' # FIXME
2
+
1
3
  class Livetext::Functions # Functions will go here... user-def AND pre-def??
4
+ Formats = ::Livetext::Standard::SimpleFormats
5
+
6
+ def initialize
7
+ @param = nil
8
+ end
9
+
10
+ def param=(str)
11
+ @param = str
12
+ end
13
+
2
14
  def date
3
15
  Time.now.strftime("%F")
4
16
  end
@@ -6,4 +18,31 @@ class Livetext::Functions # Functions will go here... user-def AND pre-def??
6
18
  def time
7
19
  Time.now.strftime("%T")
8
20
  end
21
+
22
+ def simple_format(*args)
23
+ @param ||= "NO PARAMETER"
24
+ pairs = Formats.values_at(*args)
25
+ str = @param.dup
26
+ pairs.reverse.each do |pair|
27
+ str = "#{pair.first}#{str}#{pair.last}"
28
+ end
29
+ str
30
+ end
31
+
32
+ def b; simple_format(:b); end
33
+ def i; simple_format(:i); end
34
+ def t; simple_format(:t); end
35
+ def s; simple_format(:s); end
36
+ def bi; simple_format(:b, :i); end
37
+ def bt; simple_format(:b, :t); end
38
+ def bs; simple_format(:b, :s); end
39
+ def it; simple_format(:i, :t); end
40
+ def is; simple_format(:i, :s); end
41
+ def ts; simple_format(:t, :s); end
42
+ def bit; simple_format(:b, :i, :t); end
43
+ def bis; simple_format(:b, :i, :s); end
44
+ def bts; simple_format(:b, :t, :s); end
45
+ def its; simple_format(:i, :t, :s); end
46
+ def bits; simple_format(:b, :i, :t, :s); end
47
+
9
48
  end
data/lib/livetext.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  class Livetext
2
- VERSION = "0.7.9"
2
+ VERSION = "0.8.0"
3
3
  end
4
4
 
5
5
  require 'fileutils'
data/lib/standard.rb CHANGED
@@ -57,13 +57,13 @@ module Livetext::Standard
57
57
  end
58
58
 
59
59
  def say
60
- str = _substitution(@_data)
60
+ str = _formatting(@_data)
61
61
  TTY.puts str
62
62
  _optional_blank_line
63
63
  end
64
64
 
65
65
  def banner
66
- str = _substitution(@_data)
66
+ str = _formatting(@_data)
67
67
  n = str.length - 1
68
68
  _errout "-"*n
69
69
  _errout str
@@ -153,6 +153,7 @@ module Livetext::Standard
153
153
 
154
154
  def set
155
155
  assigns = @_data.chomp.split(/, */)
156
+ # Do a better way?
156
157
  assigns.each do |a|
157
158
  var, val = a.split("=")
158
159
  val = val[1..-2] if val[0] == ?" and val[-1] == ?"
@@ -2,7 +2,7 @@ Testing out
2
2
  some functions
3
3
  here...
4
4
 
5
- .func myfunc(x)
5
+ .func myfunc
6
6
  "Eureka!"
7
7
  .end
8
8
 
@@ -182,3 +182,75 @@ strike: Doubled, ignores EOL
182
182
  Up to EOL, this is ~~redacted
183
183
  Up to EOL, this is <strike>redacted</strike>
184
184
 
185
+ Trying $$b function, no param
186
+ This is $$b being called
187
+ This is <b>NO PARAMETER</b> being called
188
+
189
+ Trying $$b function, brackets
190
+ This is $$b[bold text] being called
191
+ This is <b>bold text</b> being called
192
+
193
+ Trying $$b function, unterminated brackets
194
+ This is $$b[bold text being called
195
+ This is <b>bold text being called</b>
196
+
197
+ Trying $$b function, colon param
198
+ This is $$b:token being called
199
+ This is <b>token</b> being called
200
+
201
+ Try $$i
202
+ There is $$i[some text] here
203
+ There is <i>some text</i> here
204
+
205
+ Try $$t
206
+ There is $$t[some text] here
207
+ There is <tt>some text</tt> here
208
+
209
+ Try $$s
210
+ There is $$s[some text] here
211
+ There is <strike>some text</strike> here
212
+
213
+ Try $$bi
214
+ There is $$bi[some text] here
215
+ There is <b><i>some text</i></b> here
216
+
217
+ Try $$bt
218
+ There is $$bt[some text] here
219
+ There is <b><tt>some text</tt></b> here
220
+
221
+ Try $$bs
222
+ There is $$bs[some text] here
223
+ There is <b><strike>some text</strike></b> here
224
+
225
+ Try $$it
226
+ There is $$it[some text] here
227
+ There is <i><tt>some text</tt></i> here
228
+
229
+ Try $$is
230
+ There is $$is[some text] here
231
+ There is <i><strike>some text</strike></i> here
232
+
233
+ Try $$ts
234
+ There is $$ts[some text] here
235
+ There is <tt><strike>some text</strike></tt> here
236
+
237
+ Try $$bit
238
+ There is $$bit[some text] here
239
+ There is <b><i><tt>some text</tt></i></b> here
240
+
241
+ Try $$bis
242
+ There is $$bis[some text] here
243
+ There is <b><i><strike>some text</strike></i></b> here
244
+
245
+ Try $$bts
246
+ There is $$bts[some text] here
247
+ There is <b><tt><strike>some text</strike></tt></b> here
248
+
249
+ Try $$its
250
+ There is $$its[some text] here
251
+ There is <i><tt><strike>some text</strike></tt></i> here
252
+
253
+ Try $$bits
254
+ There is $$bits[some text] here
255
+ There is <b><i><tt><strike>some text</strike></tt></i></b> here
256
+
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.7.9
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hal Fulton
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-04-02 00:00:00.000000000 Z
11
+ date: 2017-04-03 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A smart text processor extensible in Ruby
14
14
  email: rubyhacker@gmail.com
@@ -146,8 +146,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
146
146
  version: '0'
147
147
  requirements: []
148
148
  rubyforge_project:
149
- rubygems_version: 2.2.2
149
+ rubygems_version: 2.4.2
150
150
  signing_key:
151
151
  specification_version: 4
152
152
  summary: A smart processor for text
153
153
  test_files: []
154
+ has_rdoc: