blob: 2c1b6da8db7828573a654aa29a927973711f2481 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# coding: utf-8
class HighLine
module SystemExtensions
module JRuby
def initialize_system_extensions
require 'java'
require 'readline'
if JRUBY_VERSION =~ /^1.7/
java_import 'jline.console.ConsoleReader'
input = @input && @input.to_inputstream
output = @output && @output.to_outputstream
@java_console = ConsoleReader.new(input, output)
@java_console.set_history_enabled(false)
@java_console.set_bell_enabled(true)
@java_console.set_pagination_enabled(false)
@java_terminal = @java_console.getTerminal
elsif JRUBY_VERSION =~ /^1.6/
java_import 'java.io.OutputStreamWriter'
java_import 'java.nio.channels.Channels'
java_import 'jline.ConsoleReader'
java_import 'jline.Terminal'
@java_input = Channels.newInputStream(@input.to_channel)
@java_output = OutputStreamWriter.new(Channels.newOutputStream(@output.to_channel))
@java_terminal = Terminal.getTerminal
@java_console = ConsoleReader.new(@java_input, @java_output)
@java_console.setUseHistory(false)
@java_console.setBellEnabled(true)
@java_console.setUsePagination(false)
end
end
end
end
end
|