ruby - 启用将文件拖放到 Ruby 脚本上

标签 ruby scripting cross-platform drag-and-drop

我正在创建一个小的 ruby​​ 脚本来调整图像大小并将它们保存在指定目录中。我希望应用程序尽可能透明。

是否可以在所有平台上允许文件拖放到我的 Ruby 脚本中?例如,用户将文件拖到脚本上,然后脚本将文件路径作为参数并相应地调整图像的大小——无 GUI、无控制台等。

最佳答案

拖放行为取决于操作系统(如果是 Linux 的窗口管理器),所以不。

在 Windows 中,您可以免费获得所需的行为。只需在桌面上放置一个 .rb 文件,拖到它上面的文件将成为您脚本的参数。

另一种与 Windows 集成的简单方法是将您希望出现在 Windows 资源管理器上下文菜单中的命令写入注册表项 HKLM\Software\Classes*.jpg\myhandler\command(右键单击 jpg 文件将弹出一个菜单,菜单中将包含您的脚本)。

我在 Linux 中根本不使用拖放,所以我不知道如何在那里做。我希望它有更多的安全问题(权限必须是正确的,......)但你可以通过创建一个 .desktop 文件来解决问题,参见 http://standards.freedesktop.org/desktop-entry-spec/latest/完整的标准,或阅读 ~/Desktop/*.desktop 中的一些示例。

关于ruby - 启用将文件拖放到 Ruby 脚本上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1155534/

相关文章:

java - 使用 JComboBox 在 JEditorPane 中设置所选文本的字体大小

ruby - 3Sum 算法问题 O(N^2 logn)

linux - 需要减少执行时间

iphone - 如何开始复杂级别的跨平台移动应用程序开发?

java - CAMEL 正在 "mv"命令完成之前处理文件

json - .json 文件的 Linux 正则表达式

javascript - NativeScript 中的 SOAP Web 服务

ruby - 在 Ruby 中覆盖方法调用?

ruby - 使用 RSpec 测试 ActionMailer 多部分电子邮件(文本和 html 版本)

ruby-on-rails - Rails - 当我尝试删除或发布操作时,sidekiq Web 界面显示禁止