我打算在ruby中编写一个支持制表完成的CLI。
鉴于ruby-doc中的readline
示例:
require 'readline'
LIST = [
'search', 'download', 'open',
'help', 'history', 'quit',
'url', 'next', 'clear',
'prev', 'past'
].sort
comp = proc { |s| LIST.grep(/^#{Regexp.escape(s)}/) }
Readline.completion_append_character = " "
Readline.completion_proc = comp
while line = Readline.readline('> ', true)
p line
end
我正在试图弄清楚是否有一种方法可以显示带有注释的自动完成选项,比如git,这样第一列就是autocompelte本身,第二列是解释函数的注释:
» git w [TAB]
whatchanged -- show commit-logs and differences they introduce
write-tree -- create tree from the current index
现在,我可以添加评论,但它是自动完成的一部分。
是否可以使用readline
或其他模块?