KDE一周提交摘要(2011/1/2)

csslayer | 2011/02/05

Digikam,Plasma和上面的小部件,Kate,Solid,KDE PIM,Calligra,Oxygen样式进行了Bug修复。libktorrent的bug修复包括了让它在D Link DIR 635路由上正常工作。KStars现在实现了运行时进行OpenGL和QPainter的切换功能。Marble的指南针和准星支持主题化。这周个工作还包括Cirkuit新的后端,Knights的在线游戏,KDevelop的Python解析器,Digikam文件的撤销和重做。“Net Usershare”支持被添加到KSambaShare中。Plasma现在有了一个新的KWelcomeWidget。Solid实现了新的usb://子系统。Rekonq增加了历史访问次数。和Krita滤镜有关的修改。Kaffeine的DVB支持相关的修改。Smb4k的新的特性和优化。Nuno Pinheiro主要工作是修改Oxygen图标集中的22×22的mimetype图标。

Granesh Paramasivam带来了KOffice/Calligra的”change-tracking”分支。

KOffice和Calligra当中的两个”change tracking”开发分支在KDE的SVN和Git中在过去的3个月内进行了不少开发,主要由KOffice和Caliigra的开发者Granesh Paramasivam完成。这些开发分支用于实现ODF Change Tracking格式。由于迁移到Git使得浏览Calligra的历史变得暂时有点困难,KOffice的在这个项目上的SVN历史可以在这里查看http://websvn.kde.org/branches/work/koffice-change-tracking/。Ganesh对这些分支的描述如下:

过去对于ODF文档对于跟踪修改的规范有很多缺点。一些用例并不能被ODF的规范支持:

  • 表格的修改
  • 删除行
  • 删除列
  • 横向和竖向的单元格合并
  • 横向和竖向的单元格拆分
  • 细节的格式修改:尽管规范标记了格式修改的开始和结束,但它并不能指名做了什么修改。如果一段文字从斜体改为了粗体,规范能确认修改的范围,但不能确认这些文本从斜体改为粗体。
  • 复杂的删除合并场景(例如删除一段当中的一部分和一个列表中的一部分)

由于规范对于这些从场景的缺失和不明确,这些场景处理的实现各种各样,使得包含这些修改跟踪信息的文档不可能被处理。之前KOffice的版本通过保存一些RDF的元数据来解决这个问题。通过使用RDF,KWord可以处理很多标准不支持的用例。但这样就导致了和其他的ODF实现之间的互操作性问题(例如OpenOffice)。

为了克服这些问题,DeltaXML(由NLNet赞助)正在制定一个新的格式用于存储这些修改跟踪信息来解决上述问题。这个新的格式被技术委员会提出要合并到ODF的规范当中去。

KOffice的Git代码库中的koffice/change-tracking分支,和Caliigra代码库中的words-change_tracking-ganeshp分支是主要用于实现这个提出的新修改跟踪标准的。这部分实现同样也得到了NLNet基金会的赞助。这部分工作的目的是:

  • 测试标准的实现上的可行性
  • 有一个可以工作实现作为其他实现的参考。
  • 为KWord和Caliigra Words带来一个可互操作的鲁棒的修改跟踪特性。

由于KOffice的KWord和Caillgra的Words来源于同一个项目,这使得可以为两个fork同时实现这一特性。这里有一个这个实现将要支持的用例列表。

现在一个新的子委员会已经成立,来讨论和确定一个独立的修改跟踪标准。

来源:

http://commit-digest.org/issues/2011-01-02/

Tags:

2 FEEDBACKS

  1. Calligra 2.4 Snapshot 1 发布及测试 | I, KDE

Leave a Reply

Your email address will not be published. Required fields are marked *

Note: Commenter is allowed to use '@User+blank' to automatically notify your reply to other commenter. e.g, if ABC is one of commenter of this post, then write '@ABC '(exclude ') will automatically send your comment to ABC. Using '@all ' to notify all previous commenters. Be sure that the value of User should exactly match with commenter's name (case sensitive).

This site uses Akismet to reduce spam. Learn how your comment data is processed.