在ruby脚本中打开文本编辑器

在ruby脚本中打开文本编辑器,第1张

概述(免责声明:我之前发布了一个类似的问题: In a ruby script, how to ask git to open its message editor.我决定将此作为一个单独的问题发布,因为我认为这个问题更通用,因此可能更适用于其他程序员.但是,我保留了与git相关的问题因为我’我不确定这里的答案是否也适用于此.如果有违规的规则,请告诉我) 我目前正在开发一个命令行ruby gem,它可 (免责声明:我之前发布了一个类似的问题: In a ruby script,how to ask git to open its message editor.我决定将此作为一个单独的问题发布,因为我认为这个问题更通用,因此可能更适用于其他程序员.但是,我保留了与git相关的问题因为我’我不确定这里的答案是否也适用于此.如果有违规的规则,请告诉我)

我目前正在开发一个命令行ruby gem,它可以自动化在https://gist.github.com/jbenet/ee6c9ac48068889b0912讨论的“rebase no-ff merge”工作流程.你可以在https://github.com/gsmendoza/git_pretty_accept/tree/git_pretty_accept找到这个gem的WIP代码.gem会做这样的事情:

`vi some_temp_file.txt``git co master``git pull``git co pull_request``git rebase master``git co master`merge_message = file.read('some_temp_file.txt')`git merge --message "#{merge_message}" --no-ff pull_request``git push``git branch -d pull_request``git push origin:pull_request`

当我尝试通过ruby运行这些git命令时,vi some_temp_file.txt不会像我希望的那样打开文本编辑器.相反,我看到一个警告“Vim:警告:输出不是终端”,脚本只是挂起.

有任何想法吗?

解决方法 要从ruby脚本中运行bash命令,可以使用system()命令:
http://www.ruby-doc.org/core-2.0.0/Kernel.html#method-i-system

这应该在您的特定情况下产生所需的行为:

#!/usr/bin/rubysystem('vim','some_temp_file.txt')

从命令行运行此脚本将在Vim中打开给定文件.

总结

以上是内存溢出为你收集整理的在ruby脚本中打开文本编辑器全部内容,希望文章能够帮你解决在ruby脚本中打开文本编辑器所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1232673.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-06
下一篇2022-06-06

发表评论

登录后才能评论

评论列表(0条)

    保存