带有注释的Ruby readline完成

时间:2014-02-25 13:21:37

标签: ruby autocomplete readline command-line-interface

我打算在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或其他模块?

0 个答案:

没有答案