【问题标题】:Node.js streaming python autocomplete entriesNode.js 流式传输 python 自动完成条目
【发布时间】:2013-11-05 20:52:16
【问题描述】:

我正在制作一个具有 IPython 命令行界面的 Web 应用程序,我想添加自动完成功能。到目前为止,stdout/stdin 的读取和写入工作正常,我可以传输命令,但我无法实现自动完成功能。我尝试通过标准输入发送\t,但这不是要走的路。有没有办法做到这一点?

这是我的基本服务器逻辑:

var python = spawn('ipython', ['-i']);
s.on('run', function (input) {
  python.stdin.write(input.command + '\n');
});
python.stdout.on('data', function (data) {
  var output = '' + data;
  s.emit('response', {
    output: output
  });
});
python.stderr.on('data', function (data) {
  var output = '' + data;
  s.emit('response', {
    error: output
  });
});

【问题讨论】:

    标签: python node.js stream socket.io ipython


    【解决方案1】:

    为什么这么讨厌大写的 I?它是 IPython(不是由 Apple 构建的),但没关系。

    话虽如此,为什么要使用重新发明轮子的艰难道路? 没看过其他SO questions 相同的主题?

    我猜你的略有不同,因为你在服务器端有 js,所以你可以要求 服务器端的 ZMQ 并遵守 the message spec(和不错的 blog post about messaging protocol from the guy who wrote IHaskell)。有了它,它就会比解析标准输出更脆弱,拥有更多功能(发送图像)。此外,您将免费使用其他语言,如果您搭建到 websockets 的桥梁,我想您可以重复使用 kernel.js

    愚蠢的问题,但你见过 IPython 笔记本吗?看起来你可以从中重复使用很多东西。

    【讨论】:

      猜你喜欢
      • 2016-09-10
      • 2022-11-10
      • 2018-02-20
      • 1970-01-01
      • 1970-01-01
      • 2021-08-03
      • 1970-01-01
      • 2011-02-03
      • 1970-01-01
      相关资源
      最近更新 更多