为什么双向文本(希伯来语,阿拉伯语)的软件支持如此差?

时间:2008-09-23 21:25:36

标签: globalization standards-compliance bidi

虽然大多数操作系统和网络浏览器都非常支持bidirectional text,例如希伯来语和阿拉伯语,但大多数商业和开源软件都不支持:

  • 除了原始的记事本和视觉工作室编辑器之外,大多数文本编辑都做得很差。 (我尝试过几十个)。
  • 我找不到任何文件比较工具做得不错 - 甚至没有Beyond-Compare。
  • 处理图表和报告的软件和软件包也是如此。

我有些问题:

  • 你和我一样痛苦吗?
  • 您编写的软件是否符合双向标准?你有关于它的错误报告吗?
  • 你甚至知道涉及的问题是什么?你测试他们吗?
  • 关于如何使软件世界成为双向语言发言人更好的地方的任何建议?

9 个答案:

答案 0 :(得分:3)

  

你和我一样痛苦吗?

没有。这可能就是答案:大多数人都不知道双向语言是如何工作的。例如,我有一些麻烦。因为我对这个话题很感兴趣,我有一段时间正在阅读pango资源,而这可能是支持很糟糕的第二个原因:很难做到这一点。

我认为由于Pango,GNOME项目对双向用户界面提供了最好的支持之一(当然我无法验证,因为我无法发现问题)。

但是因为你说“开源”:我认为开源项目中的全球化支持一般都很突出。 Linux很糟糕,但国际化是他们正确的事情。

gettext仍然是为数不多的翻译系统之一(我知道已经半熟但是)工作多元化系统。

  

您编写的软件是双向兼容的吗?你有关于它的错误报告吗?

可能不是。我目前正在开发一个网络出版软件,这是迄今为止我还没有测试过的东西之一: - (

  

你甚至知道涉及的问题是什么?你测试他们吗?

双向支持并不是直接的路线图。所以我没有对它们进行测试,我从Plurk为其编写的翻译界面知道这些问题。

  

有关如何使软件世界成为双向语言使用者更好的地方的任何建议吗?

对于一个开源项目:请大家帮助你了解问题所在。对于封闭源?聘请知道的人。

答案 1 :(得分:3)

我认为这有两个主要答案:

1)大多数语言从左到右阅读,所以人们要么认为他们可以在没有它的情况下逃脱,要么就是一开始就不考虑它。

2)根据您的项目,可能很难支持它。如果您的工具/库不支持它,您的软件可能也不支持。在编程意义上,它不仅难,而且当程序员不熟悉从右到左的语言时,很难做到正确。据我了解,为了真正正确地支持双向文本,UI中的某些内容也必须翻转为“正确”。

我对此有所了解的唯一原因是因为我和一个说阿拉伯语作为他的母语的人一起工作,我和他谈过这个问题。我仍然不太了解它。我们的产品最近才开始支持阿拉伯语,我没有参与其中。

答案 2 :(得分:2)

简单,让更多的双向语言发言者表达他们的担忧!由于双向语言用户很少,我认为双向文本支持在大多数人的优先级列表中相当低。但是,您和其他双向语言使用者提交的错误报告越多,问题就越多。

答案 3 :(得分:2)

如果你将一个字符串分解为子串并单独显示它们,你将打破操作系统双向渲染,如果你添加一些无辜的符号(比如 - 例如),你会搞乱文本显示。

编写与bidi兼容的软件时,您必须了解的两件事是:

  1. 始终显示整个字符串,切勿尝试显示较大字符串的部分。
  2. 始终使用bidi文本测试任何格式代码。
  3. 如果你正在编写一个文本编辑器,文字处理器或任何需要高端排版的东西而且你不能遵循上面的规则1那么编写一个bidi渲染引擎是很多工作。

答案 4 :(得分:1)

我是左撇子,处理物质世界中的类似问题。这是少数人的自然组成部分,企业主要迎合大多数人。

如果您认为双向文字存在问题,请稍后查看Turkish i问题。

无论如何,我认为将要发生的事情是文本处理将变得非常标准化,并且库将正确地执行操作,或者您必须等到应用程序变得足够大以保证添加良好支持..

答案 5 :(得分:1)

我知道Flash中的ltr文本是一个痛苦的屁股 - 我听说它对网页来说更容易,尽管你必须小心处理字符串,这样它们就不会混淆了。

这是一个非常主观的问题,顺便说一下,找不到“解决方案”的问题 - 你确定这是一个正确的问题吗?

答案 6 :(得分:1)

我自己一直在研究如何将原生BiDi添加到Android。到目前为止的结果:很多工作,Android实际上缺乏真正的BiDi。

问题在于,计算机世界都是关于互联网和共享,尤其是开源软件。这意味着主导语言是关注的,如果你注意到英语实际上是标准语言,而其他(主要是西方语言)则作为侧面翻译提供。

我说阿拉伯语/希伯来语/英语。使用计算机我几乎只使用英语,阿拉伯语/希伯来语用于本地的东西(新闻,在线电视......),这些都可以通过网络浏览器很好地处理。然而,自从我购买三星Galaxy并开始更新固件后,我开始注意问题的严重程度:(

答案 7 :(得分:0)

关于一些答案的说明 - 没有“双向语言”。语言是从左到右,从右到左(或从上到下......)。如果文本或字符串包含希伯来语和英语,则它们可以是双向的。

关于这个问题,Firefox似乎对我起了作用。 MSWord也是我使用希伯来语的几乎所有内容。

答案 8 :(得分:0)

关于如何让软件世界成为双向语言使用者更好的地方的任何建议?

不幸的是,我不认为情况会有所改善,除非有更多的RTL语言演讲者参与全球事务......这似乎不太可能。

目前,以色列是一个技术先进的社会,但规模很小,几乎所有受过教育的人都说英语。根据我所见的研究,有阿拉伯国家和其他使用阿拉伯文字的国家,这些国家不会产生和消费与西方世界相同的信息。