Google Wave中使用的操作转换内容具有相当好奇的文档格式.文档基本上只是一个xml子集文档 - 字符,开始标记和结束标记.除此之外,文档具有"注释",其是与范围相关联的元数据,例如开始位置和结束位置.白皮书证明了他们的存在:
Wave文档操作也支持注释.注释是与项目范围相关联的一些元数据,即开始位置和结束位置.这对于描述文本格式和拼写建议特别有用,因为它不会使底层结构化文档格式不必要地复杂化.
我当然可以看到如果选择文档中的任意范围并且例如用粗体显示会有些困难 - XML标记嵌套是严格的并且会导致打开和关闭标记插入的混乱.
但是,这实际上是一个问题吗?我的意思是,是否必须支持这样的操作,如果不是使编辑器基本上模仿多年的文字处理范例而不是结构化编辑器?将纯XML操作转换为文档结构只是简单的HTML5会是那么可怕吗?是一个性能问题,样式会在文档中作为标记吗?或者,如果操作转换模型用标记表示,它们会以某种方式在文本格式上产生令人不满意的结果吗?
另外,一个侧面问题 - 纯粹的"插入字符,删除字符,保留"操作变换模型在纯文本表示中有多好?例如,将HTML5编辑为文本 - 还是编辑维基百科文章?
今天尝试了这个实验:为Google文档打开了两个离线编辑器.在其中一个,我加粗了第一个字.在第二个,我删除了它.无论我先打开哪个客户端,该字总是会被删除.
首先,为什么会这样 - 我对运营转型的理解是订购问题?在两个人分别输入"a"和"b"的简单例子中,如果服务器首先接收"a",它将通过将第二个人的"b"事件转换为"通过一个空格"来强制执行"ab"的输出. ,然后添加b"事件,反之亦然.
其次,如果排序无关紧要,是否存在技术原因导致Google Docs选择在删除方面犯错?或者用户的原因很简单?
real-time google-docs google-wave operational-transform google-drive-api
阅读基座演示文稿(并阅读示例源代码) - 我看到了一个基于变换和操作的模型.
Pedestal是否真的使用类似于Google Wave中使用的操作转换(在这里和这里看)?
clojure google-wave clojurescript operational-transform pedestal
是否有像Google Wave这样的现有或即将推出的网络或桌面应用?
我希望我不再重复任何先前提出的问题.
无论如何,所以谷歌浪潮是好的和闪亮的,听起来像很多人(至少在谷歌I/O :)使用它有用的工作(!)方式.我已经对Google Wave进行了一段时间的测试,但是还不太清楚如何使用它来改进我们的工作流程.我们拥有一支中等规模的开发团队,遍布美国和欧洲,当然大部分沟通都是通过IM,Skype和电子邮件进行的.那么有哪些特定的东西可以卸载到Google Wave以改善协作的突飞猛进(意味着不仅仅用更好的IM取代IM)?
我相信你们中的一些人会看到Google Wave的演示.我特别想知道拼写检查技术.一个拼写检查器是多么具有革命性,它通过弄清楚一个单词在句子中出现在哪里来提出这些建议?
我之前没有见过这种技术,但其他地方有这样的例子吗?
如果有,那么代码示例和文献在其工作中是什么?
任何人都知道如何使用谷歌wave python api发送电子邮件?
谢谢
由于我们在移动应用程序中面临GWT性能问题,因此我使用GWT开发了Google Wave代码.
我认为那里的所有按钮都有小部件但是如果你用firebug查看生成的HTML,你会发现在可点击的div上没有设置onclick属性.我想知道他们如何实现它有一个元素发出click或mousedown事件,看起来既不是一个小部件也不是注入onclick属性.
能够创建这样的组件肯定会让我更进一步优化性能.
谢谢.ps:还没有谷歌去开源客户端代码.一直无法找到它.
google-wave ×8
api ×1
clojure ×1
google-docs ×1
gwt ×1
gwt2 ×1
pedestal ×1
python ×1
real-time ×1
workflow ×1