命令行界面助手?

时间:2015-11-25 19:21:53

标签: ruby

我正在使用命令行界面来使我的代码更加用户友好。它目前看起来像这样:

loop do
  print "> "
  cmd = gets.chomp
  break  if cmd == "quit"
  run_command(cmd)
  puts
end

我想延长它以节省打字。例如,我想允许使用"向上箭头"重复最后一个命令的键,以及" Tab"自动匹配命令等的关键。

是否有任何工具可以缓解这项工作?

2 个答案:

答案 0 :(得分:5)

你可能正在寻找readline,这是一个例子:

require "readline"

while cmd = Readline.readline("> ", true)
  break if cmd == "quit"
  run_command(cmd)
  puts
end

Tab-completion有点棘手。看看example on their documentation page

答案 1 :(得分:0)

您正在寻找的图书馆是readline