我有一组名称和 URL,并希望以向上/向下滚动菜单的形式向用户显示名称列表。基本上是dialog
外壳内允许的。
我已经调查过了ncurses-ruby
,但它们似乎要么被放弃为一个项目,要么甚至从他们的例子中抛出错误(如果存在的话)rdialog
。HighLine
有人可以向我指出一个不错的、可用的 TUI 菜单的 gem,或者一个简单的(我会是新手……)介绍如何在 Rails 中做到这一点(即可用数据的表示(=什么我的数组中有))以及如何处理用户的选择?
谢谢!
我有一组名称和 URL,并希望以向上/向下滚动菜单的形式向用户显示名称列表。基本上是dialog
外壳内允许的。
我已经调查过了ncurses-ruby
,但它们似乎要么被放弃为一个项目,要么甚至从他们的例子中抛出错误(如果存在的话)rdialog
。HighLine
有人可以向我指出一个不错的、可用的 TUI 菜单的 gem,或者一个简单的(我会是新手……)介绍如何在 Rails 中做到这一点(即可用数据的表示(=什么我的数组中有))以及如何处理用户的选择?
谢谢!
绿鞋是这种工作的好宝石,它有菜单、选择、编辑框、文件对话框、复选框等,同时简单并且除了 Ruby 本身之外没有其他依赖项。
有一个很小但非常活跃的社区,有一个邮件列表来寻求帮助。有关详细信息,请参阅http://vgoff.posterous.com/green-shoes。安装与gem install green_shoes
这里是一个小例子
Shoes.app title: 'Selecteer vakantie', height: 600 do
background lightgreen..lightskyblue, :angle => 30
@list = ["choice1","choice2"]
@result = []
stack do
para "Make your choice.", font: "sans", size: 10
flow do
button "Ok" do
selected = @list.map{|c, n| n if c.checked?}.compact
@result[0].text = "you selected #{selected}"
end
button("End") {exit}
end
@list.map! do |name|
flow { @c = check; para name, width: 500, font: "sans", size: 10 }
[@c, name]
end
@result << para('', :stroke => forestgreen)
end
end