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)知道这件事...

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