PC Help

 Към заглавната страница на PC HelpТърсене


Уроци

Системни настройки

 

От игла до конец за кирилицата и кръпките по нея

Има някаква ирония във факта, че българин (Джон Атанасов) е измислил начина на работа на компютрите, а много българи до ден днешен имат проблеми с кирилицата при работа с компютрите. Тази година се промъкнаха и някои идеи за въвеждане на “методиевицата” (т.е. латиницата) като официална азбука, но за щастие повечето хора не гледат на тях сериозно.

За да бъдем наясно с проблема с кирилизацията (респективно и с методите за решаването му), трябва да сме запознати с видовете използвана през годините кирилица.

Once upon a time in the west…

Операционните системи първоначално са предвидени за работа на един единствен език, което е разбираемо предвид малкото системни ресурси на компютрите в миналото. И тъй като компютрите всъщност са електронни машини, изключително мощни калкулатори, те не могат да “разбират” нищо друго, освен логическите положения да и не (т. нар. бинарен код – 1 и 0, включено и изключено). Затова на всяка буква или друг знак се съпоставя определен числов код. Тази система за съпоставяне се нарича кодова таблица, кодировка.

Както вече казахме, в миналото компютрите са имали малко ресурси. ASCII таблицата (American Standard Code for Information Interchange) е 7-битова – със 128 знака, а разработената впоследствие OEM е 8 битова, и е побирала 256 знака – максимумът за един байт. В нея са намерили място ограничен брой знаци. Това са символите за интервал, нов ред, пунктуация, малките и главните букви на английската азбука, някои гръцки букви, използвани в математиката, и в оставащото малко място – знаците за т. нар. псевдографика (по това време компютрите са работели в текстови режим).

Работата на втори език обаче е необходима възможност, и програмистите във всяка страна правят нужното, за да я добавят. Ето тук преминаваме от общото към частния случай за кирилица. В България и страните от бившия СССР се ползва кирилица, и за кирилизацията са били заменени знаците от псевдографиката с буквите на кирилица. Буквите от кирилицата се разполагат във вторите 128 знака на таблицата. По това време най-разпространените операционни системи са 2 – UNIX и DOS (основно MS-DOS) като наследник на CP/M. Разбира се, Apple Macintosh също има нужда от кирилица. И за нещастие (или пък за щастие на бъдещите производители на кирилизиращ софтуер) се създават най-различни кодировки, т.е. подреждания на знаците на азбуките на кирилица в кодовите таблици. В резултат от това едва ли не във всяка държава, ползваща кирилица, кодировката е различна за всяка операционна система.

История славянобългарская

В България като стандартно за DOS се приема кодирането MIK (то се използва и при компютрите Правец, като Правец 16 е хардуерно кирилизиран). В Русия и Беларус се ползва CP866. Югославия и Македония се спират на CP855, а в Украйна (поради особености на азбуката им) се създава още една кодировка – ruscyr. При UNIX системите кодировките са други и е цяло щастие, че за Windows се пренасят именно те, а не се създават нови. Разпределението на кирилиците е следното: България – CP 1251, Русия – KOI8-R (по-късно го поправят, преработват, и в крайна сметка KOI има може би над 10 варианта), Украйна – KOI8-U, Югославия и Македония – ISO 8859-5.

Windows 3.0 Program Manager
(screenshot)С прехвърлянето от DOS към Windows (т.е. от текстови режим към графичен интерфейс) се преминава към символен набор, съдържащ различни тирета, кавички, валутни знаци и др. Тези таблици се наричат ANSI, и в по-голяма степен покриват изискванията на типографията. Много приложения (като например класическият Word 6) ползват такива кодови таблици. При Windows 2.03 до 3.11 за кодиране на българската кирилица се използва CP1251.

Вероятно се питате какво става след Windows 3.11, и защо през цялото това време не е създаден един общ стандарт за кирилица. И имате пълното право да зададете този въпрос, тъй като кашата е наистина голяма.

От Windows 95 нататък положението се променя, и (странно, наистина) то е към по-добро. Кирилицата за Windows 95 и по-новите версии на системата е по новия стандарт Unicode (универсално кодиране). Тази кодова таблица е 16-битова, т.е. има 256 х 256 = 65 536 елемента. Много по-голяма и по-тежка от дотогавашните. Unicode шрифтовете са с много по-голям обем, но и компютрите вече са много по-мощни, и нямат проблеми да се справят с тях. А крайният ефект за потребителите е, че стандартите за кирилица вече са унифицирани, и не би трябвало да имат повече проблеми. В Unicode са събрани буквите от всички азбуки по света, както и множество типографски и специални символи. Те са разпределени по семантичен принцип – буквите, които изглеждат по еднакъв начин, но са от различни азбуки, притежават различни кодове. Unicode позволява създаването на многоезикови документи без да се сменя шрифтът, като за отделните пасажи са валидни различни езикови правила. Вече не се задава конкретен шрифт за кирилица, тъй като шрифтът съдържа всички символи. Тъй като всеки символ има различен код, преносът на данни се осъществява безпогрешно при коректни кодови таблици. И от този момент нататък всичко би било идеално, ако не бяха милионите документи, създадени със старите кодировки.

Житие и страдание...

В началото се ползват т. нар. виртуални шрифтове, дефинирани в конфигурационния файл Win.ini като части от един общ Unicode шрифт. Пример за такива шрифтове са Arial CE, Arial Cyr, Arial Greek и др. Това обаче е свързано с редица неудобства при работата, и затова се предприемат мерки за решаване на проблема окончателно – чрез автоматично разпознаване на клавиатурната настройка по време на въвеждане на текста.

MS Office 97 въвежда Unicode стандарта за документите на Word, и в резултат от това възниква необходимостта от конвертиране на документите, създадени с предните версии на програмата. Към това се добавя и още един проблем, и той също не е малък – файловите имена на кирилица. Програмите като Word 6, създадени за работа по стандарт за кирилица 1251, продължават да работят по него. Това разбира се не е такъв проблем, когато се отнася само до съдържанието на документите. Но Word (както и доста други програми) предлагат за име на файла първия ред от съдържанието му. И когато потребителят работи под Win 95 или по-нов и приеме предложеното име на файл, получава документ с име на кирилица. Прекрасен като съдържание, и наистина вечен. Почти неизтриваем, непреместваем, файл, който не се поддава на преименуване или на редактиране. Изходът беше да се инсталира кирилизация по стандарта 1251, или да се ползва програма от типа на Norton Disk Doctor, а някои потребители предпочитаха да ползват шестнадесетичен редактор на диска. Ето защо дълги години едно от златните правила при работа с компютри беше “Никакви файлови имена на кирилица”. Към това трябва да добавим, че Word 97 отказва да показва кирилица от обикновен (не-Unicode) шрифт, ако няма инсталиран някой от сервизните пакети – SR1 или по-нов.

Дотук с теоретичната и историческата страна на въпроса. Да видим как се кирилизират различните операционни системи, и как се конвертират старите документи и текстовете на маймуни в използваем вид.

Кирилизиране на операционните системи

Кирилизирането по българските стандарти на разпространените операционни системи е въпрос, чийто отговор засяга всички ни. Не всички обаче са запознати как става това, затова ще го опиша накратко.

Кирилизирането на DOS конзолата става чрез зареждане в Autoexec.bat или Config.sys на системен драйвер, който зарежда в паметта съответните шрифтове, и позволява на потребителя с клавишна комбинация да се прехвърли в режим на кирилица, като “превежда” символите по екрана в нормален вид. Така създадените в DOS текстове на кирилица са със споменатото вече кодиране MIK. Такъв вид кирилица ползват всички DOS базирани системи – от класиките Правец 8 и Правец 16, през XT, до най-мощните (266-300 MHz, 64 MB RAM и т.н.) машини, които редовият болен мозък ще остави да работят с DOS. Създадени са множество драйвери за такава кирилизация – някои по-добри, други не. Някои работят и с DOS режима на Win 2000. Повечето дават възможност за избор на клавиатурна подредба – БДС или фонетична. Сред най-популярните такива драйвери са kbd.com и bds.com.Кирилизиран DOS команден ред

Ранните версии на Microsoft Windows не са разпространени. Версия 1 излиза през 1984 г., коригирана е на 1.01 през 1985 г., и с това започва официалната история на тази операционна система (макар и началото да съдържа доста бъгове). По-голям интерес представлява доста по-добрата версия 2, и по-специално 2.03. От нея нататък Windows поддържа работа с кирилица. И тъй като и тя е отдавна забравена, преминаваме към класическия Windows 3.x (3.0 от 1990 г., 3.1 от 1991 г. и 3.11 от 1993 г., за да сме точни), който в много организации работи безупречно вече близо 10 години.

Windows 2.0
(screenshot)Кирилизацията на Win 3.x също се извършва с помощта на кирилизиращ софтуер, тъй като не е вградена в системата. В отговор на тази потребност много български фирми започват разработката на кирилизиращ софтуер. Най-известният продукт от това време е всеизвестният FlexType на Датекс (продукт, имащ безспорни и добре познати качества), също и АКТсофт КИРИЛА на AКТ Софт, Кирилизация на Бора Системс, BulLet на Софт Плюс, Кирил на Перфект Софтуер и др. Целта в случая не е обзор на тези продукти, затова ще кажа само, че с тях потребителят получава всичко необходимо за работата си – кирилизиране, кирилизирани шрифтове, и възможност да работи с клавиатурна подредба по негов избор (фонетична или БДС).

Въпросът за кирилизацията на Windows 9x/ME е сред най-често задаваните, както и сред най-често “решаваните”. Вградената в тези системи кирилица покрива нуждите на голяма част от потребителите. Инсталирането й може да се извърши както при инсталирането на самата система, така и впоследствие. За да я добавите при инсталация на системата, следвайте тези стъпки:
1. Изберете Custom Install в началото на инсталацията, за да имате достъп до настройките по време на Setup процедурата
2. От предлаганите за инсталация компоненти изберете Multilanguage support, щракнете върху Details, а след това отбележете Cyrillic
3. При определяне на клавиатурните и регионални настройки задайте: Keyboard Layout – English, Regional Settings –Bulgarian.

Инсталацията на тези компоненти на вече инсталирана Windows система (стига самата инсталация да е била направена с българска регионална настройка) става от контролния панел. И така:
1. Добавя се поддръжка на кирилица: Control Panel -> Add/Remove Programs -> Windows Setup (втората страница) – от компонентите избирате Multilanguage support -> Details -> Cyrillic.
2. Добавя се българската клавиатурна подредба: Control Panel -> Keyboard -> Input Locales -> Add -> Bulgarian.
3. Задават се български регионални настройки, ако не са активни: Control Panel -> Regional Settings, и се избира Bulgarian.

В случай, че при инсталацията за регионална настройка е избрано друго, вместо Bulgarian, стандартното решение (препоръчвано и от Microsoft) е системата да се преинсталира. Това обаче не е задължително - с една команда може да се извърши това, което прави Setup програмата, и преинсталирането да се спести. Тази команда е:

RunDll.exe setupx.dll,InstallHinfSection L0402 2 %windir%\INF\LOCALE.INF

Можете да я задействате както от Start menu -> Run полето, така и DOS прозорец.

(Благодаря на Генади Атанасов - Инжинера за посочената неточност и командата)

При инсталация на Windows с регионални настройки, различни от български, добавянето на Multilanguage support и български настройки кирилизира системата, но не напълно. При преинсталация с български регионални настройки или ползване на командата, дадена по-горе, кирилицата става равностойна на английския език, т.е. тя се добавя на системно ниво.

При поискване от системата в CD-ROM-а се поставя диска с инсталационния дистрибутив на Windows. За удобство някои хора го копират на твърдия диск, и можете да предпочетете този вариант, ако имате достатъчно свободно място. След инсталирането на компонентите и задаването на регионалните настройки системата ще поиска рестартиране. След него ще разполагате с един добре кирилизиран Windows. Единственото възможно неудобство е това, че клавиатурната подредба е БДС, а много хора предпочитат фонетичната. Това обаче може лесно да се коригира чрез подмяната на съответния системен файл (kbdbul.kbd), или с допълнителни програми, за които ще стане дума по-нататък в статията. Казаните дотук неща важат за Win 98, ME и паневропейската версия на 95 (практически всички разпространени в България версии на 95 покриват това изискване).

Софтуерните производители преработват кирилизаторите си във версии за Windows 9x (както и ME, който е базиран на същата технология), и така потребителите имат още един добър вариант за кирилизация. Колко добър? Фирми като Datecs и ActSoft още не са спрели дейността си :). Това е достатъчно показателно за търсенето на продуктите им, а то – за техните възможности.

Кирилизацията на Windows NT 3.х се извършва със съответните кирилизиращи програми (напр. FlexType NT). При Windows NT 4 обикновено се ползва същият метод. Все пак, NT 4 също има многоезикова поддръжка, има даже руска версия на NT 4. Затова той може да се кирилизира аналогично на Win 95/98.

Windows 2000 regional options
(screenshot)Кирилизацията при Windows 2000 също е доста улеснена, и може да се извърши както при инсталация на системата, така и впоследствие. Принципът е същият, както и при Win 9x. Единствената разлика е, че в регионалните настройки при частта Language settings for the system освен да се маркира Cyrillic, трябва да се избере Bulgarian и от “Set default…”. Така се задават кирилизирани системни шрифтове, и от този момент нататък можете да забравите проблема с кирилизацията. Фонетичната клавиатурна подредба се добавя по същия начин, както и при старите NT версии.

Практически е безсмислено да се обясняват начините за кирилизация на Windows XP – все пак тази версия на Windows е преведена на български, и поддръжката на български език е “в кръвта” на системата. А Win.NET ще доразвие това в още по-голяма степен, и въобще няма да има нужда от кирилизиращи допълнения.

Добавянето на фонетична кирилица освен с кирилизатор (като FlexType, Кирила и др.), което е най-честото решение, може да се извърши и с допълнителна програма за целта. В края на статията ще намерите няколко такива програми.

Начините за кирилизацията на други операционни системи няма да бъдат разглеждани в тази статия поради нейния ограничен обем. Все пак, за кирилизацията на Linux можете да прочетете на всеки сериозен български Linux сайт (доста добър е учебника на Linux общество България – linux-bulgaria.org/public/guide.html), а за кирилизация на BeOS можете да ползвате ръководството на адрес bbug.hit.bg/cyrbeos.htm с автор Ф. Петев. Поради специализираната им употреба няма да разглеждаме и кирилизациите на много от известните UNIX дистрибуции (FreeBSD, NetBSD, AIX, IRIX, Solaris, HP-UX и т.н.). IBM OS/2 отдавна вече не се разработва, и затова също я пропускаме.

Православие, католицизъм и протестантство в кирилиците

Както видяхме, няма едно единствено правилно кодиране на кирилицата. Основната задача на кирилизациите е прекодирането от едни кодови таблици в други. Основните транслирания са DOS-UniCode и ANSI-UniCode. Тези конвертори позволяват правилното прочитане на стари документи, които не са в съвременния UniCode формат.

Конвертирането на текстовете в нормална кирилица е задача, за която са създадени специални програми. Като най-добри (а и безплатни) в работата ми са се отличили 5 програми, и тук ще ви ги представя накратко.

  • Shtirlitz 4.01
(screenshot, 18.8 KB)Shtirlitz 4.01 – тази програма е вероятно най-универсалният конвертор на кодировки. Поддържа Windows 1251, KOI8-R, DOS-овска кирилица, а също и кирилица с кодировка ISO, както и за Macintosh. Предимства са автоматичното разпознаване и конвертиране на текста възможността да запазите текста с такова кодиране, каквото искате. Полезна е и възможността за конвертиране на кирилицата в латиница и обратно, макар това далеч да не изчерпва функциите й. Автор на програмата е руснакът Всеволод Лукянин, а преводът на интерфейса е извършен от Филип Дудин. За теглене на програмата натиснете тук (697 KB)
  • Win2mik – малък и много бърз конвертор на кирилица от Win1251 към MIK и обратно. Автоматично разпознава кодировката на изходния текст. Автор е Григор Гачев. За теглене на програмата натиснете тук (4 KB)
  • AConvert – още един конвертор на DOS -> Win кирилица, но с графичен интерфейс. Написана е от WiseGuy. За теглене натиснете тук (135 KB)
  • Convert Document 1.1 for Word 97 – преобразува Word 6 -> Word 97 файлове на кирилица. Автор е Николай Стойчев. Можете да изтеглите програмата (9 KB)
  • Encoding Changer Macro 98c – прекодира кирилицата в документите, писани с Microsoft Office 97 в петте използвани в интернет кодови таблици - Windows 1251, DOS 866, UNIX ISO-8859-5, UNIX KOI8-R и Macintosh Cyrillic. Изтеглете програмата от тук (158 KB)

Освен кирилизаторите на различни производители, за добавяне на поддръжка на фонетична кирилица можете да използвате следните безплатни програми:

  • BG Phonetic - добавя фонетична подредба за клавиатурата, без да премахва БДС. Не инсталира и не подменя шрифтове. Работи с Windows 9x/ME/NT/2000/XP. За да изтеглите програмата натиснете тук (16 KB). Автор на програмата е Владимир Георгиев
  • Cyr95NT - с тази програма можете да работите както с фонетична подредба, така и с подредба по БДС. Тя също не инсталира и не подменя шрифтове. Единственото, което прави е да добави поддръжка за фонетична подредба за клавиатурата. Работи с Windows 9x/NT/2000/XP. Можете да изтеглите версия 3.0 от тук (85 KB), а най-новата версия винаги можете да изтеглите от нейния официален сайт. Автор на програмата е Стефан Чеканов
  • KBDBul - както и предните две програми, и тази добавя фонетична поддръжка, без да премахва БДС. Могат да бъдат настройвани отделните клавиши по предпочитание за максимално удобство, като по този начин могат да се добавят няколко различни подредби. Можете да изтеглите програмата от тук (405 KB). Автор на приложението е NoGarD
  • Phoncyr - променя драйвера за кирилица на Windows NT4/2000/XP така, че да поддържа и фонетична кирилица. Можете да изтеглите програмата от тук (100 KB). Автор на програмата е Неделчо Станев.

Добри помощни програми за работа с кирилица са:

  • FlexWord – проверка на правописа. Българска shareware програма от Datecs.
    КИРИЛА Корект + също служи проверка на правописа, разработка е на ActSoft.
  • FlexConvert 2K – преобразува кирилица в латиница (полезно, ако получателят на някой текст все пак няма никаква кирилица). Безплатна, пак от Datecs.
  • Convertor 2001 Pro - преобразува E-Mail съобщенията от кирилица на латиница и обратното. Безплатна програма с автор Дамян Минчев. За теглене на програмата натиснете тук (120 KB).
  • TTFConv – конвертира стари TrueType шрифтове с кирилица в Unicode шрифтове. Така можете да ги ползвате с програми като Outlook, изискващи Unicode шрифтове за работата си. Можете да изтеглите тази безплатна програма от ourworld.compuserve.com/homepages/PaulGor/ttfconv.zip, файлът е с размер 15 KB. На адрес http://ourworld.compuserve.com/homepages/PaulGor/word_win.htm ще намерите и подробни указания за работа с тази програма.
  • Proofing Tools на Microsot е допълнение към MS Office, което не бива да се забравя. В българския Office XP са включени модули за проверка на правописа и за пренасяне на текста на нов ред.

С това тази предълга статия завършва. Надявам се да ви е била от полза!

Авторът поема отговорност за написаното от него и гарантира верността му.

Назад


Webmaster