标签打印软件中信软件

一些开发人员几乎从未接触过软件标签翻译,有些则每天进行。 它无疑有助于在一个国家使用多种语言(官方或事实上)的工作。

即使是在第一种情况下,也可以将属性文件中的标签外部化。 至于第二种情况,语言通常是相关的。

在Java中,整个标签转换机制是通过属性文件的层次结构来处理的。 在层次结构的顶部是根文件,在第二层是特定于语言的文件,最后是在最底下的针对特定国家的文件(让我们忘了较低的级别,因为我已经有15年没有使用它们了)。 沿着特定的语言环境搜索消息字符串的翻译,从最特定的国家(直到国家)一直到根。 如果找到任何级别的翻译,则解析机制将在那里停止并返回标签。

作为一个简单的示例,让我们看一个简单的用例,在列表上显示项目数。 我可能需要3个标签:

  • 找不到项目
  • 找到一项
  • 找到多个项目

这可能是生成的messages.properties文件:

result.found.none=No item found
result.found.one=One item found
result.found.multiple={0} items found

当客户希望在初始发行后将软件翻译成不相关的语言时,事情会变得很有趣。 让我们不深入探讨基于象形文字的语言(例如普通话中文)或RTL语言(例如阿拉伯语),而是使用俄语(我正在尝试学习的语言)(强调尝试)。

俄语是一种带有个案的语言,例如拉丁语。

格是一种语法类别,其值反映了短语,从句或句子中名词或代词所执行的语法功能。 在某些语言中,名词,代词及其修饰语根据其所处的情况采用不同的变体形式。

常见的情况包括主格,宾格,宾格和宾格。 这些语言之一按大小写标记的角色通常会使用介词用英语标记。

—维基百科

那么,有什么大惊小怪的呢? 只需翻译文件并完成即可! 好吧,俄语是一种有趣的计数语言。 如果是1,则使用2到4的单数,使用复数和主格的情况,但是从5开始,使用复数和和格的格–表示数量。

现在,密钥将如下所示(消息本身并不是很重要):

  • result.found.none
  • 结果找到一个
  • result.found.twotofour
  • 结果发现五

现在可以翻译吗? 不完全的。 俄语源自旧斯拉夫语,而旧斯拉夫语具有三个语法数字:单数,复数和对偶。 俄语只有单数和复数形式,但是对于女性而言,这是一个剩余的数字。 在这种情况下,您将使用две而不是два。

这需要以下键:

  • result.found.none
  • 结果找到一个
  • 结果发现两个女性
  • 结果发现两个女人味
  • 结果三三四
  • 结果发现五

这仅适用于我所知道的事情。 恐怕还有比我不知道更多的规则。

这里有两课要学习:

  1. 翻译并不简单,特别是当目标是具有不同根源的语言时。
  2. i18n比翻译要庞大,难得多。 想想日期:月或日应该放在第一位吗? l10n比i18n更大,更难。
  3. 翻译的成本不为零,并且可能会比预期的高。 估算很难,而且在大多数情况下都是错误的。
  4. 永远不要承担任何责任。 隐式对软件项目不利...

翻译自: https://blog.frankel.ch/software-labels-translation-not-easy/

标签打印软件中信软件

标签打印软件中信软件_软件标签翻译不是那么容易相关推荐

  1. 产线数字化软件源码_软件生产线技术、开源软件声明、源码下载地址

    软件生产线技术.开源软件声明.源码下载地址 软件生产线指生产软件的软件,先利用建模工具软件用图解的形式给出应用系统的系统模型,之后自动生成应用系统可执行程序,自动完成建立应用系统的工作.它能有效提高应 ...

  2. android 魔力锁屏,锁屏软件横评:锁屏功能PK_Android软件合辑_软件合辑_太平洋电脑网PConline...

    三.功能设置 GO锁屏:除了以上两个评测项目设计的设置之外,GO锁屏还可以设置开启锁屏提示音.解锁提示音及解锁震动.在设置中可以设置锁屏开启或关闭. 其他功能设置 魔力锁屏:魔力锁屏可以启用音量键唤醒 ...

  3. 抢单软件开发原理_软件开发原理

    抢单软件开发原理 Rubbish software is produced when we try to do everything at once. 当我们尝试一次做所有事情时,就会产生垃圾软件. ...

  4. 软件质量保证计划_软件测试计划 笔记

    软件测试计划 软件项目的测试计划是描述测试目的.范围.方法和软件测试的重点等的文档.对于验证软件产品的可接受程度编写测试计划文档是一种有用的方式. 软件测试计划就是在软件测试工作正式实施之前明确测试的 ...

  5. 软件技术基础_软件技术(游戏软件开发)专业介绍

    软件技术(游戏软件开发)专业 核心课程 C++程序设计.Java程序设计.C#程序设计.Cocos2d-x游戏开发.Unity3D游戏开发.Android游戏开发.IOS游戏开发.游戏框架设计.游戏服 ...

  6. python软件开发目录_软件开发目录规范

    为了提高程序的可读性与可维护性,我们应该为软件设计良好的目录结构,这与规范的编码风格同等重要.软件的目录规范并无硬性标准,只要清晰可读即可,假设你的软件名为foo,笔者推荐目录结构如下 Foo/ |- ...

  7. 内网通不用软件改积分_软件项目为什么不能够如期交付?

    作为一个多年软件行业项目经理,发现大部分软件项目都没办法如期交付给客户.比如,我现在就职的软件公司就有至少5个项目处于延期状态.于是我私下对每个延期项目进行了调研和详细分析,发现普遍存在以下问题: 1 ...

  8. OCR识别缺点_常用的OCR文字识别软件有哪些_软件动态论坛

    随着大家办公需求的增加,办公软件如雨后春笋般纷纷面世,旨在提高大家的工作效率,OCR文字识别软件便是不可缺少的办公软件之一.那么,有哪些专业又好用的OCR文字识别软件呢?小编来为大家推荐几款,以供参考 ...

  9. 软件发明专利实例_软件发明专利思路

    针对软件类的专利 : 以发明为主 . 软件类的发明专利目前在我国还没有足够的重视 , 也许和我国的文化有关 , 包容 融合是我们历来的尊崇 . 下文主要说明在编写软件发明专利时的注意问题 , 让大家有 ...

  10. 软件发明专利实例_软件发明专利思路(精)

    针对软件类的专利 : 以发明为主 . 软件类的发明专利目前在我国还没有足够的重视 , 也许和我国的文化有关 , 包容 融合是我们历来的尊崇 . 下文主要说明在编写软件发明专利时的注意问题 , 让大家有 ...

最新文章

  1. 超图iServer版本安装和使用入门图解
  2. lwip接收文件 stm32_接收数据
  3. Java 单测 回滚
  4. 大一c语言操作题期末考答案,大一期末考试c语言操作题答案
  5. Autofac 之 基于 Castle DynamicProxy2 的 Interceptor 功能
  6. jsp中forward与sendRedirect的区别
  7. 一个简单的EXCEL 导入SQL 的例子
  8. 今天加入了OSChina,准备将我的BLOG搬到这里。
  9. windows10下搭建spark平台
  10. 德裔美国Delphi程序员霍尔格-弗里克博士访谈
  11. oracle 7天密码过期,oracle密码过期ORA-28002: 7天之后口令将过期的解决方法
  12. 如何使用计算机模拟,手把手教你电脑手机模拟器MuMu模拟器怎么使用
  13. 在个人隐私方面做得比Google好的搜索引擎——DuckDuckGo
  14. python输出二进制数_Python计算二进制数及输出补码
  15. vue 中的 attribute 和 property
  16. python学习 -女神或者男神把微信消息撤回后好慌,有了这个妈妈再也不担心你看不到女神或者男神撤回的消息了(超详解)...
  17. python编程阶乘_Python阶乘实现的三种方法
  18. Vue3中TSX和h函数的用法
  19. spark:Task,Partition,RDD、节点数、Executor数、core数目的关系和Application,Driver,Job,Task,Stage理解
  20. 将字符串的一部分拷贝到另一个字符串

热门文章

  1. echarts时间轴属性参数
  2. Python绘制图像的灰度直方图、累计直方图
  3. 编译型语言(C/C++)和解释性语言(Python)的区别
  4. uniapp绘制小程序海报如何追加图表
  5. Mac MongoDB客户端MongoBooster安装教程分享
  6. linux下批量删除指定后缀的文件
  7. 前端标注切图利器-像素大厨(PxCook)
  8. 登陆注册 跳转商品列表
  9. python pyodbc mysql_pyodbc和mySQL
  10. 黄淮学院CSDN高校俱乐部与加拿大East-Link高管座谈会