我试图创建一个roo附加组件,从而创建一些自定义命令。有没有办法检查用户是否填写了他/她正在键入的命令的一个选项?例如,用户正在键入命令:
say hello --name MyName --album SomeAlbum --song
现在,就在他应该输入一首歌并按下TAB键时,我想检查他是否已经推出了一张专辑。有没有办法读取他/她到目前为止输入的缓冲区字符串?
我想我需要以某种方式访问当前的shell实例,但到目前为止我无法找到任何方法。任何提示或想法都是受欢迎的。
答案 0 :(得分:0)
在MethodTarget
类中有一个名为getRemainingBuffer()
的方法,它返回在控制台中输入的当前行的内容。这种类型的对象是getAllPossibleValues
方法的参数之一,需要在转换器中实现,这是自定义命令类型所必需的。
似乎就是这样。