rubytext 0.0.78 → 0.0.79

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.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/lib/output.rb +44 -14
  3. data/lib/settings.rb +3 -1
  4. data/lib/version.rb +1 -1
  5. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 4e354c6fdb94b4939d7c3fbe944b852d783db1235f571b6b882250be184ea531
4
- data.tar.gz: 5d1924c94b30a6a54df89a16fdcb0e9ca5885921fc29b6c882a32c9cfc0dd40a
3
+ metadata.gz: 575b3566044a490f9c1f1616882b453fc812521fba5ef1e26e2f497932bddf63
4
+ data.tar.gz: 83c79003049e00fdcb0cd1a234f7fad54ec237b663ace9d6632c29ac6a244c30
5
5
  SHA512:
6
- metadata.gz: 2abaa8f1c0d14fbc306a94b99e971ba72b923b6cc6986408292c1e6c3610e613ad5f3db634322f8338e43c794efebf8f189ad844d886ff17251df29702608914
7
- data.tar.gz: 0bd784d37d361c964cd15aa7c3c6f14bd46980ba2509bee9dd8303ed4f6578b4f0c71e6d6a4c2b2c3c9c19053e68814d165c80b6d3fe146acea3fcbb9f26680b
6
+ metadata.gz: 778b0e9d83e375f2edc7c232e4c126838f19996b6d561714cc38fd44bc76b36cbdbc75a8bd672d82a5ebf92a66dd6f433ee74ae3aa1057d49553ff0bea92a1cc
7
+ data.tar.gz: e07bb935388fc39eadb7d5961d5b42b98e50597db2950966d80654a9047aa294e05760e691ba8cef1673e5fbaf6d466bf0fdddd8ad0b8e5004ea27d36df669bb
data/lib/output.rb CHANGED
@@ -113,10 +113,10 @@ class RubyText::Window
113
113
  end
114
114
 
115
115
  def clear
116
- num = @cwin.maxx * @cwin.maxy
117
- home
118
- @cwin.addstr(' '*num)
119
- home
116
+ num = self.rows * self.cols
117
+ self.home
118
+ self.rows.times { @cwin.addstr(' '*self.cols); @cwin.refresh }
119
+ self.home
120
120
  @cwin.refresh
121
121
  end
122
122
 
@@ -147,6 +147,44 @@ class RubyText::Window
147
147
  def refresh
148
148
  @cwin.refresh
149
149
  end
150
+
151
+ def gets # still needs improvement
152
+ # echo assumed to be OFF, keypad ON
153
+ str = ""
154
+ i = 0
155
+ r0, c0 = self.rc
156
+ loop do
157
+ ch = self.getch
158
+ debug "gets: found #{ch.inspect}; cursor at #{self.rc.inspect}"
159
+ case ch
160
+ when 10 # Enter
161
+ self.crlf
162
+ break
163
+ when 8, 127, 63 # backspace, del, ^H (huh?)
164
+ if i >= 1
165
+ str = str[0..-2]
166
+ i -= 1
167
+ self.left
168
+ self[*self.rc] = ' '
169
+ self.left
170
+ end
171
+ when 260 # left-arrow
172
+ i -= 1
173
+ self.left
174
+ when 261 # right-arrow
175
+ i += 1
176
+ self.right
177
+ else
178
+ debug " case 3 (#{ch.inspect})"
179
+ str.insert(i, ch)
180
+ self.right
181
+ self.go(r0, c0) { self.print str }
182
+ i += 1
183
+ end
184
+ end
185
+ str
186
+ end
187
+
150
188
  end
151
189
 
152
190
  # into top level...
@@ -179,16 +217,8 @@ module WindowIO
179
217
  end
180
218
 
181
219
  def gets # still needs improvement
182
- str = ""
183
- loop do
184
- ch = ::STDSCR.getch
185
- if ch == 10
186
- ::STDSCR.crlf
187
- break
188
- end
189
- str << ch
190
- end
191
- str
220
+ recv = RubyText.started ? $stdscr : Kernel
221
+ recv.gets
192
222
  end
193
223
 
194
224
  def putch(ch, r: nil, c: nil, fx: nil)
data/lib/settings.rb CHANGED
@@ -1,12 +1,14 @@
1
1
  module RubyText
2
2
  # Hmm, all these are module-level.
3
3
 
4
- ValidArgs = [:raw, :_raw, :echo, :_echo, :cbreak, :_cbreak]
4
+ ValidArgs = [:raw, :_raw, :echo, :_echo, :cbreak, :_cbreak, :keypad, :_keypad]
5
5
 
6
6
  def self.started
7
7
  @started
8
8
  end
9
9
 
10
+ $debugging = true
11
+
10
12
  def self.start(*args, log: "/tmp/rubytext.log",
11
13
  fg: White, bg: Blue, scroll: false)
12
14
  $debug ||= File.new(log, "w") if log # FIXME remove global
data/lib/version.rb CHANGED
@@ -1,6 +1,6 @@
1
1
 
2
2
  module RubyText
3
- VERSION = "0.0.78"
3
+ VERSION = "0.0.79"
4
4
 
5
5
  Path = File.expand_path(File.join(File.dirname(__FILE__)))
6
6
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubytext
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.78
4
+ version: 0.0.79
5
5
  platform: ruby
6
6
  authors:
7
7
  - Hal Fulton
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-12-09 00:00:00.000000000 Z
11
+ date: 2018-12-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: curses