Commit a8432d4

mo khan <mo@mokhan.ca>
2025-08-14 15:52:59
feat: add dependency on reline
1 parent a52e4b9
exe/elelem
@@ -3,6 +3,9 @@
 
 require "elelem"
 
+Reline.input = $stdin
+Reline.output = $stdout
+
 Signal.trap("INT") do
   exit(1)
 end
lib/elelem/tui.rb
@@ -10,8 +10,7 @@ module Elelem
     end
 
     def prompt(message)
-      say(message)
-      stdin.gets&.chomp
+      Reline.readline(message, true)
     end
 
     def say(message, colour: :default, newline: false)
lib/elelem.rb
@@ -5,6 +5,7 @@ require "json"
 require "logger"
 require "net/http"
 require "open3"
+require "reline"
 require "thor"
 require "uri"
 
elelem.gemspec
@@ -36,6 +36,7 @@ Gem::Specification.new do |spec|
   spec.add_dependency "logger"
   spec.add_dependency "net-http"
   spec.add_dependency "open3"
+  spec.add_dependency "reline"
   spec.add_dependency "thor"
   spec.add_dependency "uri"
 end
Gemfile.lock
@@ -7,6 +7,7 @@ PATH
       logger
       net-http
       open3
+      reline
       thor
       uri