|
编码和键盘-俄化基础知识
编码
编码是一种在字符集中为不同字符分配数字代码的方法。已经有一系列的编码用来表现西里尔字符,如Windows-1251,DOS(CP866),KOI8-R,KOI8-U,ISO,Unicode(包括UTF-8,Unicode big endian),Mac等等。最流行的是以下两种:
KOI8-R
美国英语使用的编码是ASCII (American National Standard Code)编码,它是一种7位(128个字符)编码,只包含拉丁字母和一些符号,因此西里尔字符编码采用7位是不够的。KOI8-R(Kod Obmena Informatsii,俄语Код Обмена Инфармации的拉丁写法,缩写为КОИ8)是一种官方的Internet标准编码 ,它是一种包含西里尔字母的8位编码,它是由KOI8派生的,KOI8-R中的8就是指8位的意思,R指俄语(KOI8-U使用于乌克兰语),这在Cyrillic Character Set (RFC, Request For Comments, 请求注解,Internet标准草案,1489)的注册纪录中有详细描述。它同时也是事实上的e-mail 和 NNTP (Network News Transfer Protocol, 网络新闻传输协议)的西里尔字符标准。另外,它还是Unix系统的标准编码。
CP1251
CP1251是MS Widows编码页1251 它是Microsoft西里尔字符的标准编码 它也恰恰是MS Windows平台实事上的西里尔字符标准
下面是几种编码的图解:
 koi8-r |
 koi8 ukrainian |
Apple Standard Cyrillic
CP866 and CP1251
 Code Page 866 |
 Code Page 1251 |
字体
字体就是一组成套的字形,字形和字符集中的字符一一对应,因为每一个字形都被分配了一个字符代码,所以每一种字体都有其对应的特定编码(如CP1251字体和KOI8-R字体)。
键盘布局
什么是键盘布局keyboard layouts呢?首先,我们讨论一下字体和安装在计算机上的硬件键盘。他们之间有一些共同点,如:他们都被作为2维表格考虑,表格中的每个单元格包含字母和符号。在键盘和字体之间存在着一种关联---当你敲击一个键时,键盘会把这个键的地址发送到计算机,计算机使用这个地址在字体中读取一个相应的字符显示在屏幕上。这是认识键盘和字体间的关系的简便方法。 keyboard layout软件提供了键盘按键到字体中字符“映射”的适应性。每当用户敲击一个键,计算机从键盘收到这个键的“地址”并把它送到keyboard layout软件,软件计算出字体中相应的字符是什么(如图),计算机将这个字符显示在屏幕上。简单地说,键盘布局建立了键盘上的键和按下此键所产生的字符之间的对应关系,
计算机使用的默认键盘布局是US,它处理所有的英文字体。但是,西里尔字体是不同的,因为西里尔字体同时包含了西里尔和拉丁字母以供用户混合输入和显示两种字符而不需要改变字体。这就是在使用西里尔字母输入时需要单独的keyboard layout的原因。
注:一般习惯称键盘布局为键盘,虽然它是个软件。
键盘布局的种类
当你选择键盘布局时,以下几点是必须考虑的:
- 键盘布局的种类
西里尔键盘有两种风格 - 俄语打字机键盘布局(Russian Typewriter),它的布局和真正的俄语打字机一样,适合熟悉俄语打字的人使用;语音键盘布局 (Phonetic),它按照和拉丁字母发音相近的原则分配各键,适合熟悉拉丁键盘但不熟悉俄语打字机键盘的人使用。
- 所支持的编码标准
键盘布局是针对具体的字符编码标准设计的,如:Apple Standard Cyrillic, KOI-8, CP1251和 CP866等. 另外对于一种特定编码的键盘布局还需要相应编码的字体。
注意:MS Windows的任何语言版本均默认安装了俄语本机语言键盘[Native Language Support (NLS) keyboard] ,它是JTsUKENG(ЙЦУКЕНГ)标准的控制台打字机键盘布局,对应Windows 1251编码。
下面是两种流行的西里尔键盘布局:
JTsUKENG(ЙЦУКЕНГ)
标准的控制台打字机键盘布局,是大多数计算机系统的默认键盘布局。
小写

大写shift

YaWERTY(ЯВЕРТЫ)
语音西里尔键盘布局,其中西里尔字符“А”被指派给拉丁键“A”,西里尔字符“О”被指派给拉丁键“O”,逗号和句号“,”“.”保持不变,如果同时输入俄语和英语是很方便的。
小写

大写

编码大战
的确,在KOI8-R和CP1251之间存在持久的“战争”,如果你不想受伤,最好的方法是:
- 在MS Windows系统仅使用CP1251字体和内置键盘,因为所有好的Internet Windows软件(Netscape Navigator 4.0 and Microsoft Internet Explorer 3.0以上版本)都“知道” KOI8-R是标准的外部编码,当你发送邮件和新闻时,它会自动将它们从CP1251转换成KOI8-R;而当你接收邮件和新闻时,它会自动将它们从KOI8-R转换成CP1251。
- 在UNIX系统使用KOI8-R字体和键盘,在程序中不需要任何编码和解码。
|