国际化与本地化
国际化与本地化(英文:Internationalization and Localization)通常简写为I18n和L10n。在资讯领域,通常是指调整软件,使之能适用于不同的语言和地区。
國際化是指在設計軟體,將軟體與特定語言及地區脱鉤的過程。當軟體被移植到不同的語言及地區時,軟體本身不用做內部工程上的改變或修正。本地化則是指當移植軟體時,加上與特定区域设置有關的資訊和翻譯文件的過程。 國際化和本地化之間的區别雖然微妙,但卻很重要。國際化意味着產品有適用於任何地方的「潜力」;本地化則是為了更適合於「特定」地方的使用,而另外增添的特色。用一項產品來說,國際化只需做一次,但本地化則要針對不同的區域各做一次。 這兩者之間是互補的,並且兩者合起來才能讓一個系統適用於各地。
基於他們的英文單字長度過長,常被分別簡稱成i18n(18意味著在國際化這個單字中,i 和 n 之間有 18 個字母)及L10n。使用大寫的 L 以利區分 i18n 中的 i 。
在如微軟及IBM等企業中,則會使用全球化來表示此兩者的合稱。[1][2]在英文中,也會使用 g11n做為簡稱。
目录 |
范围 [编辑]
国际化与本地化工作的焦点包括:
- 語言
- 文化
- 書寫習慣
- 產品和服務所要面向的法規
只属于本地化的主题有:
困难 [编辑]
开发软件时,国际化和本地化对开发者是一个有挑战性的任务,特别是当软件当初设计时没有考虑这个问题时。通常作法是将文本和其他环境相关的资源与程序代码相分离。这样在理想的情况下,应对变化的环境时无需修改代码,只要修改资源,从而显著简化了工作。
开发团队需要人了解其他语言和文化;而这样的人才,可能难以寻觅。而且资源的复制也可能成为维护恶梦。例如,如果某个语言中显示给用户的信息变化了,其他的翻译版本都要随之变化。Gettext之类软件库有助于解决这一问题。
由于自由软件自由地修改和再分发,因此它比较容易国际化。当KDE拥有70个语言版本时,大多数专有软件只提供商业上有利可图的语言版本。
区域设置(locale) [编辑]
计算机中一套定义用户的语言、国家和用于定义用户希望在其用户界面上看到的各种可以改变的选择的参数集合。通常一个locale标识符至少包括一个语言标识符和一个区域标识符。
在UNIX和WINDOWS中,locale的控制是不同的。在UNIX下,通常通过环境变量来控制locale。这些环境变量包括:LANG,LC_ALL, LC_CTYPE, LC_TIME, 等等。你可以通过改变这些环境变量来控制你的程序或者命令所表现出来的locale,前提是这些程序或者命令必须是已经被国际化的和本地化的。在Windows下,你可以通过改变控制面板上的“语言/区域”中的区域的值来设定Windows的当前用户的locale。
参见 [编辑]
- 中日韓統一表意文字
- 全球化
- 雙向文稿支援
- 多语言文字排版引擎:
- Uniscribe (Windows)
- Apple Type Services for Unicode Imaging (New Macintosh)
- WorldScript (Old Macintosh)
- Pango (Open source)
- Graphite (Windows & Linux, open source)
參考資料 [编辑]
外部链接 [编辑]
- i18n软件介绍
- Open directory of links to internationalization resources and related material
- Information for developers about localisation of Free and Open Source Software
- W3C规范
- IETF规范
- Free/Open Source Software: Localization Primer (PDF, 1.25 Megabytes)
- "Free/Open Source Software: Localization" KnowProSE Remix 1.0 (HTML-Wikipedia Remix of PDF primer)
- Translate Tookit guide to localizing Free/Open Source Software
- KDE国际化网站
- Hurricane Transparent Website Localization Platform
- World Wide Navi 软件国际化工具
- 中国本地化网