lib/dsu/support/ask.rb in dsu-2.4.4 vs lib/dsu/support/ask.rb in dsu-3.0.0.alpha.0
- old
+ new
@@ -1,14 +1,21 @@
# frozen_string_literal: true
+require 'io/console'
require 'thor'
module Dsu
module Support
module Ask
- def ask(prompt)
- options = {}
- Thor::LineEditor.readline(prompt, options)
+ def ask_while(prompt, options: {}) # rubocop:disable Lint/UnusedMethodArgument
+ loop do
+ print prompt
+ char = $stdin.getch
+ puts char
+ return char if yield(char)
+
+ char
+ end
end
def yes?(prompt, options: {})
auto_prompt = auto_prompt(prompt, options)