Roland 入门指南:命令行随机选择工具

使用 Roland 轻松做出艰难选择,这是我们 2019 年提高工作效率的开源工具系列文章的第七篇。
176 位读者喜欢这篇文章。
Using open source tools to play Dungeons and Dragons

Peaches&Cream 在 Flickr 上发布,CC BY 2.0

似乎每年年初都会掀起一股寻找提高工作效率方法的狂潮。新年决心、新年新气象的渴望,当然还有“辞旧迎新”的态度都促成了这一点。通常的建议清单也严重偏向闭源和专有软件。但情况不必如此。

这是我为 2019 年挑选的 19 款全新(或对您而言是新的)开源工具中的第七款,它们将帮助您在 2019 年提高工作效率。

Roland

通常,在工作日结束后,我唯一想做的就是躺在沙发上玩本周的电子游戏。但即使我的工作义务在工作日结束时停止,我仍然必须管理我的家庭事务。洗衣、宠物护理、确保我的青少年拥有他需要的东西,以及最重要的:决定晚餐吃什么。

和许多人一样,我经常患有决策疲劳,而且我根据速度、易于准备程度以及(坦率地说)任何让我感到最少压力的事情,为晚餐做出不太健康的选择。

 

Roland

Roland 让我的膳食计划变得更加容易。Roland 是一个为桌面角色扮演游戏设计的 Perl 应用程序。它从项目列表中随机挑选,例如怪物和雇佣兵。本质上,Roland 在命令行中所做的事情与游戏大师在掷骰子以在《游戏大师的坏事大全》中查找表格时所做的事情相同。

稍作修改,Roland 就可以做更多的事情。例如,只需添加一个表格,我就可以让 Roland 帮助我选择晚餐吃什么。

第一步是安装 Roland 及其所有依赖项。

git clone git@github.com:rjbs/Roland.git
cpan install Getopt::Long::Descriptive Moose \
   namespace::autoclean List:AllUtils Games::Dice \
   Sort::ByExample Data::Bucketeer Text::Autoformat \
   YAML::XS
cd oland

接下来,我创建一个名为 dinner 的 YAML 文档,并输入我们所有的膳食选项。

type: list
pick: 1
items:
 - "frozen pizza"
 - "chipotle black beans"
 - "huevos rancheros"
 - "nachos"
 - "pork roast"
 - "15 bean soup"
 - "roast chicken"
 - "pot roast"
 - "grilled cheese sandwiches"

运行命令 bin/roland dinner 将读取该文件并选择其中一个选项。

 

Roland choosing a week's meals with one command

我喜欢提前计划一周的膳食,这样我可以提前购买所有食材。pick 命令确定要从列表中选择多少项,现在,pick 选项设置为 1。如果我想计划整整一周的晚餐菜单,我只需将 pick: 1 更改为 pick: 7,它就会给我一周的晚餐。您也可以使用 -m 命令行选项手动输入选项。

 

Roland manual entry

您还可以使用 Roland 做一些有趣的事情,例如添加一个名为 8ball 的文件,其中包含一些经典短语。

 

Playing 8 ball with Roland

您可以创建各种文件来帮助处理那些在漫长的工作一天后似乎压力很大的常见决策。即使您不将其用于此目的,您仍然可以使用它来决定今晚的游戏中设置哪个阴险的陷阱。

接下来阅读什么
标签
User profile image.
Kevin Sonney 是一位技术专业人士、媒体制作人和播客。作为 Linux 系统管理员和开源倡导者,Kevin 在 IT 行业拥有超过 25 年的经验,其中在开源领域超过 15 年。他目前在 elastic 担任 SRE。

4 条评论

那么古老的 fortune 命令呢?

它是 BSD 游戏的一部分,并且已包含在几乎所有 Linux 发行版中。添加您的私有 fortune 数据库非常简单,不比 YML 文件复杂:您的 fortune 是由 % 行分隔的(多行)文本,并且您需要使用以下命令添加 .dat 文件
strfile -c % dinner dinner.dat
之后命令
fortune dinner
基本上实现了相同的效果。

在 ubuntu 上
sudo apt install fortunes
您可以在 /usr/share/games/fortunes 中查看一些示例
其中一些非常有趣。

毫无疑问,这是一个填补 Linux 世界中急需空白的应用程序。

很棒的小文章。让我办公室里的每个人都笑了,尤其是当有人发现不可避免的 “git clone ... Roland.git” 时。很高兴我的同名可以帮助您计划膳食!希望 Roland McGrath(参见 glibc)知道这件事...

知识共享许可协议本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.