rdp-rb-readline 0.2.0 → 0.2.0.1

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 (3) hide show
  1. data/Rakefile +1 -3
  2. data/lib/rbreadline.rb +10 -9
  3. metadata +19 -9
data/Rakefile CHANGED
@@ -1,6 +1,5 @@
1
1
  require 'rake/packagetask'
2
2
  require 'rake/testtask'
3
- require 'lib/rbreadline'
4
3
 
5
4
  $:.unshift File.join(File.dirname(__FILE__), 'lib')
6
5
  require 'readline'
@@ -20,10 +19,9 @@ Rake::TestTask.new do |t|
20
19
  t.verbose = true
21
20
  end
22
21
 
23
-
24
22
  require 'jeweler'
25
23
  Jeweler::Tasks.new do |s|
26
- s.version = RbReadline::RB_READLINE_VERSION
24
+ s.version = version
27
25
  s.name = "rdp-rb-readline"
28
26
  s.summary = "Pure Ruby readline"
29
27
  s.email = "rogerdpack@gmail.com"
data/lib/rbreadline.rb CHANGED
@@ -15,7 +15,7 @@ module RbReadline
15
15
 
16
16
  RL_LIBRARY_VERSION = "5.2"
17
17
  RL_READLINE_VERSION = 0x0502
18
- RB_READLINE_VERSION = "0.2.0"
18
+ RB_READLINE_VERSION = "0.2.0.1"
19
19
 
20
20
  EOF = "\xFF"
21
21
  ESC = "\C-["
@@ -2478,7 +2478,7 @@ module RbReadline
2478
2478
  @rl_outstream ||= $stdout
2479
2479
 
2480
2480
  # Bind _rl_in_stream and _rl_out_stream immediately. These values
2481
- # may change, but they may also be used before readline_internal ()
2481
+ # may change, but hey may also be used before readline_internal ()
2482
2482
  # is called.
2483
2483
  @_rl_in_stream = @rl_instream
2484
2484
  @_rl_out_stream = @rl_outstream
@@ -4276,6 +4276,7 @@ module RbReadline
4276
4276
  # Cygwin will look like Windows, but we want to treat it like a Posix OS:
4277
4277
  raise LoadError, "Cygwin is a Posix OS." if RUBY_PLATFORM =~ /\bcygwin\b/i
4278
4278
  raise LoadError, "Not Windows" if RUBY_PLATFORM !~ /mswin|mingw/
4279
+ raise LoadError, "Using file I/O for windows" if $rb_readline_use_file_io_on_windows
4279
4280
 
4280
4281
  if RUBY_VERSION < '1.9.1'
4281
4282
  require 'Win32API'
@@ -4285,10 +4286,10 @@ module RbReadline
4285
4286
  DLL = {}
4286
4287
  TYPEMAP = {"0" => DL::TYPE_VOID, "S" => DL::TYPE_VOIDP, "I" => DL::TYPE_LONG}
4287
4288
 
4288
- def initialize(dllname, func, import, export = "0")
4289
+ def initialize(dllname, func, import, export = "0", calltype = :stdcall)
4289
4290
  @proto = [import].join.tr("VPpNnLlIi", "0SSI").sub(/^(.)0*$/, '\1')
4290
4291
  handle = DLL[dllname] ||= DL.dlopen(dllname)
4291
- @func = DL::CFunc.new(handle[func], TYPEMAP[export.tr("VPpNnLlIi", "0SSI")], func)
4292
+ @func = DL::CFunc.new(handle[func], TYPEMAP[export.tr("VPpNnLlIi", "0SSI")], func, calltype)
4292
4293
  end
4293
4294
 
4294
4295
  def call(*args)
@@ -4348,7 +4349,7 @@ module RbReadline
4348
4349
  @encoding = "N"
4349
4350
  end
4350
4351
 
4351
- def rl_getc(stream)
4352
+ def rl_getc(stream) # windows only here
4352
4353
  c = @getch.Call
4353
4354
  alt = (@GetKeyState.call(VK_LMENU) & 0x80) != 0
4354
4355
  if c==0 || c==0xE0
@@ -4380,7 +4381,7 @@ module RbReadline
4380
4381
  @encoding = "N"
4381
4382
  end
4382
4383
 
4383
- def rl_getc(stream)
4384
+ def rl_getc(stream) # linux
4384
4385
  begin
4385
4386
  c = stream.read(1)
4386
4387
  rescue Errno::EINTR
@@ -4399,7 +4400,7 @@ module RbReadline
4399
4400
  end
4400
4401
  end
4401
4402
 
4402
- if defined? ''.getbyte
4403
+ if RUBY_VERSION >= '1.9'
4403
4404
  @encoding = "X" # ruby 1.9.x or greater
4404
4405
  @encoding_name = Encoding.default_external.to_s
4405
4406
  end
@@ -4430,7 +4431,7 @@ module RbReadline
4430
4431
 
4431
4432
  else
4432
4433
 
4433
- if (c=rl_get_char()).nil?
4434
+ if (c=rl_get_char()).nil? # do we have one cached?
4434
4435
  c = send(@rl_getc_function,@rl_instream)
4435
4436
  end
4436
4437
  end
@@ -6117,7 +6118,7 @@ module RbReadline
6117
6118
  next
6118
6119
  end
6119
6120
  # Call the application-specific function to tell us whether
6120
- # this word break character is quoted and should be skipped.
6121
+ # this word break character is quoted and should be skipped.
6121
6122
  if (@rl_char_is_quoted_p && found_quote!=0 &&
6122
6123
  send(@rl_char_is_quoted_p,@rl_line_buffer, @rl_point))
6123
6124
  next
metadata CHANGED
@@ -1,7 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rdp-rb-readline
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 2
8
+ - 0
9
+ - 1
10
+ version: 0.2.0.1
5
11
  platform: ruby
6
12
  authors:
7
13
  - ""
@@ -9,19 +15,21 @@ autorequire:
9
15
  bindir: bin
10
16
  cert_chain: []
11
17
 
12
- date: 2009-12-30 00:00:00 -07:00
18
+ date: 2010-04-28 00:00:00 -06:00
13
19
  default_executable:
14
20
  dependencies:
15
21
  - !ruby/object:Gem::Dependency
16
22
  name: jeweler
17
- type: :development
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
23
+ prerelease: false
24
+ requirement: &id001 !ruby/object:Gem::Requirement
20
25
  requirements:
21
26
  - - ">="
22
27
  - !ruby/object:Gem::Version
28
+ segments:
29
+ - 0
23
30
  version: "0"
24
- version:
31
+ type: :development
32
+ version_requirements: *id001
25
33
  description:
26
34
  email: rogerdpack@gmail.com
27
35
  executables: []
@@ -59,18 +67,20 @@ required_ruby_version: !ruby/object:Gem::Requirement
59
67
  requirements:
60
68
  - - ">="
61
69
  - !ruby/object:Gem::Version
70
+ segments:
71
+ - 0
62
72
  version: "0"
63
- version:
64
73
  required_rubygems_version: !ruby/object:Gem::Requirement
65
74
  requirements:
66
75
  - - ">="
67
76
  - !ruby/object:Gem::Version
77
+ segments:
78
+ - 0
68
79
  version: "0"
69
- version:
70
80
  requirements: []
71
81
 
72
82
  rubyforge_project:
73
- rubygems_version: 1.3.5
83
+ rubygems_version: 1.3.6
74
84
  signing_key:
75
85
  specification_version: 3
76
86
  summary: Pure Ruby readline