【发布时间】:2014-06-01 21:21:21
【问题描述】:
我有一个纯粹用咖啡脚本编写的项目,用于部署的 git 钩子也是用 cs 编写的。我真的不想脱离这种语言,只是为了使用 bash 来快速提交消息格式化程序,但是我在从 commit-msg 钩子中生成 vim 时遇到了问题。
我已经看到here 在管道到 vim 时,stdio 不一定正确设置为 tty 流。我知道这可能会导致问题,但我不完全知道如何使用 nodes spawn 命令让 vim 正确加载。目前我...
vim = (require 'child_process').spawn('vim', [file], stdio: 'inherit')
vim.on 'exit', (err) ->
console.log "Exited! [#{err}]"
cb?()
...它可以很好地生成一个可以从父 stdio 读/写的 vim 进程,但是当我在钩子中使用它时,事情就出错了。 Vim 声明 stdio 不是来自终端,然后一旦打开输入就会导致转义字符到处弹出。例如,退格会产生^?。
任何帮助将不胜感激!
【问题讨论】:
标签: node.js git vim coffeescript githooks