有效地跟踪文本的变化

时间:2014-11-28 17:59:40

标签: python performance websocket network-programming

我必须通过网络将一些文本发送到python中的另一台计算机。我可能会使用套接字来做这件事。我这样做是因为两台不同计算机上的人可以同时编辑文档。我想知道是否有一种有效的方法可以做到这一点。我想每次用户按下按键时发送更新的文本根本没有意义。我是否只能发送每次用户更改文本内容时所做的更改。我该怎么做呢?

1 个答案:

答案 0 :(得分:0)

由于您希望允许将文本编辑为2个(或更多)客户端,我会使用补丁库,例如diff_match_patch(谷歌差异匹配补丁)。

以下是您可以使用的示例代码:

import diff_match_patch as dmp

d = dmp()
patch = d.patch_make(current_text, new_text)
updated_text, status = d.patch_apply(patch, current_text)

因此,您可以处理插入,删除,甚至可以添加撤消操作...

相关问题