问题标签 [thor]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
616 浏览

ruby-on-rails - 为什么我的 thor copy_file 命令不起作用?

我正在尝试设置一个 Rails 应用程序模板,并在我的 sample.rb 模板文件中有这个代码:

捆绑安装运行得很好,但复制命令失败并出现以下错误:

我无法理解这个错误以及如何解决它。我究竟做错了什么?请帮忙。

0 投票
1 回答
1052 浏览

ruby-on-rails - 使用 Thor 删除文件中的一行

是否可以使用 Thor 操作从文件中删除一行文本。例如,我想删除 ruby​​ 评论。到目前为止,我发现了 2 个操作:comment_lines- 注释掉行,以及gsub_file

谢谢

0 投票
2 回答
243 浏览

ruby-on-rails - 使用 Ruby 脚本中的 .rvmrc 文件

背景

先介绍一下这个问题的背景:Ruby on Rails 最近存在一些安全问题。所以我们需要更新我们项目的 Rails 版本。如果你有几个,如果你手工做的话,它会很快变老......所以我想我可以为此创建一个 Thor 任务。

问题

现在效果很好!但!在安装新版本的 rails 时,我需要尊重每个项目的 .rvmrc 文件。我希望这个脚本尽快开源,但我想先解决不尊重 .rvmrc 文件的问题。

所以我需要的是一种在我切换到目录以更新 Rails 版本时使用正确的 RVM ruby​​ 版本/gemset 的方法。

如何做到这一点?是否可以通过 Ruby 脚本以某种方式完成它,以便它可以在 Mac 和 Linux 上运行,无论 Shell 是什么(找到了 zsh 支持的答案,但是那里的所有其他 shell 呢?)

快速示例代码:

只是为了让您了解我正在尝试做的事情。

链接到 githubs 上的脚本

我的脚本的 github 存储库——正在进行中!

0 投票
0 回答
77 浏览

ruby - 在参数声明中使用参数值

我希望根据先前声明的参数的值指定参数的默认值。在此示例中,handlerSendPort默认值应为handlerRecvPort + 1

这失败了:

undefined local variable or methodNoov::App:Class (NameError) 的 handlerRecvPort'`

我意识到参数值在类评估的上下文中不可用(尽管我希望有一些超魔来使其工作),那么此时我如何访问参数值?

0 投票
1 回答
1538 浏览

ruby - 为什么 Thor 采用 no_tasks 方法?

或者,更具体地说:我不能只使用私有方法吗?

0 投票
1 回答
649 浏览

ruby - 如何在停止时杀死 ruby​​ Thor 中的所有进程?

我在下面有一个脚本,它使用Thor像 rake 任务管理一样运行ARGV

当 start 时ruby script.rb start,它会生成两个子进程(总共三个)。我的问题是如何在我执行时杀死所有进程ruby script.rb stop。我在网上看到,在启动时,我应该将 pid 父进程存储到一个文件中,当停止时,我读取它并杀死它。问题是杀死父母不会杀死孩子。所以我可以将所有三个pid都保存在文件中,然后一一杀死。

我在问自己什么是正确的方法,以及我在内部处理流程的方式start是否正确。

0 投票
1 回答
356 浏览

ruby-on-rails - 如何在自定义生成器中销毁文件夹

通过使用 Thor 在 Rails 中创建自己的生成器,我遇到了一个有点愚蠢的问题。

事实证明,当您运行生成器并在您的代码库中创建文件时,它是自动的,假设

假设 Thor 足够聪明,可以在我们调用时知道逆向方式destroy

但正如您所见,为包含该文件而生成的文件夹并未被删除。我了解这是一种预期行为,因为您可能希望保留稍后创建的其他文件或其他文件。

问题是:我如何在打电话时要求/强制雷神删除文件夹destroy

预先感谢!

0 投票
1 回答
527 浏览

thor - 与雷神互斥的选项

有没有办法让 Thor 有两个互斥的选项?例如,我需要提供某物列表的选项。我可能有一个选项-l ent1 ent2 ent3 ent67,并且我可能有一个选项-f,我传递一个包含内容的文件ent1 ent2 ent3 ent67。这两个选项能否与 Thor 互斥而无需在方法中编写额外的处理代码?

0 投票
1 回答
201 浏览

ruby - Thor 启动 Jekyll 然后在浏览器中打开页面

嗨,我想让 Thor 启动一个服务器 - Jekyll / Python / PHP 等,然后打开浏览器

然而,开始是一个阻塞任务。

有没有办法在 Thor 中创建子进程;或产生一个新的终端窗口 - 看不到,谷歌没有给我任何合理的答案。

我的代码

0 投票
2 回答
336 浏览

ruby-on-rails-3.2 - Autotest re: Thor 中的“Bundler:GemNotFound”错误

编辑:我回滚到 Thor 0.17.0,这似乎有效。不知道为什么,但它就在那里。

我可以弄清楚是什么原因造成的,但是我的自动测试停止了运行测试并给了我以下错误:

我在 SO 上看到了一些关于 GemNotFound 错误的类似问题,但解决方案似乎对此不起作用。当我运行bundle exex gem listThor 时,存在 0.18.0。