【问题标题】:Is there a way to quit Node.js and launch VIM on a file?有没有办法退出 Node.js 并在文件上启动 VIM?
【发布时间】:2013-03-31 03:22:31
【问题描述】:

我正在 Node.js 上创建一个简单的基于终端的文件管理器。有什么办法可以在我的程序在终端上运行时退出它并使用 VIM 打开一个文件?

【问题讨论】:

    标签: node.js vim terminal


    【解决方案1】:

    简单地说:

    require('child_process').spawn('vim', ['test.txt'], {stdio: 'inherit'});
    

    如果 vim 退出时 Node.js 事件循环中没有任何内容,则 node 也会自动退出。或者,如果您需要保证节点会在 vim 退出时退出:

    var vim = require('child_process').spawn('vim', ['test.txt'], {stdio: 'inherit'});
    vim.on('exit', process.exit);
    

    至于在 vim 退出之前 关闭节点应用程序,这实际上是不可能的,因为 vim 从生成进程(节点)继承标准输入/输出/错误流,这些流在节点退出时被销毁。 p>

    【讨论】:

    • 这没有按预期工作......当我按下任何键时,它会让 VIM 回到 node.js 进程......
    • 发现问题。在生成 vim 之前,我必须做 stdin.pause()。谢谢!
    • 如何使用 sublime 做到这一点?我用 subl 替换了 vim。它打开 sublime,但 exit 会立即被调用,而不是在文件保存后等。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-03
    • 1970-01-01
    • 2013-04-19
    • 1970-01-01
    • 2012-04-15
    相关资源
    最近更新 更多