summaryrefslogtreecommitdiff
path: root/ext/tk/sample/irbtk.rb
blob: 8665b20539dda288615d2a47678549428b2589d7 (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
#!/usr/local/bin/ruby
# frozen_string_literal: false
#
#   irbtk.rb - irb with Ruby/Tk
#
#   If you want to use 'multi-tk.rb', give option '--multi-tk'.
#   And if you want to use 'remote-tk.rb', give option '--remote-tk'.
#   If you want both, you don't need to give both options, because
#   'remote-tk.rb' includes 'multi-tk.rb'.
#   ( There is no trouble even if you give both options. )
#
require 'remote-tk' if ARGV.delete('--remote-tk')
require 'multi-tk'  if ARGV.delete('--multi-tk')

require "tk"
module Tk
  MAINLOOP = Thread.new{ mainloop }
end

require "irb"

if __FILE__ == $0
  IRB.start(__FILE__)
else
  # check -e option
  if /^-e$/ =~ $0
    IRB.start(__FILE__)
  else
    IRB.setup(__FILE__)
  end
end