The FreeBSD in Bulgarian Project

$Ringlet: doc/en_US.ISO8859-1/articles/bulgarian/article.sgml,v 1.12 2002/02/08 14:47:47 roam Exp $

This article describes the goals and current state of the various efforts to make the FreeBSD Project available to Bulgarians in our native language.


Table of Contents
1 Introduction
2 The Bulgarian bg_BG.CP1251 locale
3 Bulgarian fonts and keymaps
4 FreeBSD documentation in Bulgarian
5 On-line resources for Bulgarian users of FreeBSD

1 Introduction

The FreeBSD in Bulgarian Project aims to make the FreeBSD Operating System easier to use for Bulgarians. This includes, but is not limited to, font, keymap and locale support, translation of the FreeBSD documentation into Bulgarian, local user groups and various forms of on-line help channels and discussion forums to help Bulgarians adopt and use FreeBSD.

The project is still at a very early stage and any kind of contributions and assistance will be appreciated :)


2 The Bulgarian bg_BG.CP1251 locale

2.1 What is a locale?

The basics of localization and internationalization are explained in The FreeBSD Handbook, more specifically Chapter 13, Localization - I18N/L10N Usage and Setup and 13.3 - Using Localization.

In short, a locale is a set of files that lets the OS use the appropriate format for date, time, numbers, character classes (letters, numbers, whitespace, uppercase and lowercase characters) and other information that is different for different countries or languages.


2.2 What is the bg_BG.CP1251 locale?

The bg_BG.CP1251 locale, as suggested by its name, determines the locale settings for Bulgaria (BG), using the Bulgarian language (bg) and the CP1251 codepage, also known as windows-1251. If you configure your system to use it, the OS will recognize correctly Cyrillic characters as letters, display day and month names in Bulgarian, use the Bulgarian currency unit - 'lev' - where appropriate, and more.

Note: To use the bg_BG.CP1251 locale, you might need a Cyrillic screen font and a keyboard map that will allow you to enter Cyrillic (CP1251) characters. See the Bulgarian fonts and keymaps section for more information how to do this with FreeBSD.


2.3 Is there support for the bg_BG.CP1251 locale in FreeBSD?

Patches for bringing the bg_BG.CP1251 locale into FreeBSD are available for the 4.x branch up to 4.4-STABLE-20011210 and for the 5.x branch up to 5.0-CURRENT-20011105. These patches were integrated into FreeBSD on 2001/11/05 for 5.0-CURRENT and on 2001/12/10 for 4.4-STABLE. Thus, the good news is that the bg_BG.CP1251 locale will be natively supported in both both 4.5-RELEASE and 5.0-RELEASE.


3 Bulgarian fonts and keymaps

3.1 Cyrillic CP1251 fonts for the FreeBSD virtual console

To be able to view files and webpages containing Cyrillic characters in the CP1251 (or windows-1251) character set, you need to configure your console to use the appropriate display font. Fortunately, FreeBSD comes with a CP1251 console font in the usual three sizes - 8-by-8 for 50x43 text modes, 8-by-14 for EGA normal text modes and 8-by-16 for the VGA normal text modes. These three screen fonts are located in the /usr/share/syscons/fonts/ directory under the names of cp1251-8x8.fnt, cp1251-8x14.fnt, and cp1251-8x16.fnt respectively.

Letting a FreeBSD system use these fonts is done either manually, using the vidcontrol(1) utility, or automatically, using /etc/rc.conf to customize the system startup procedure.

The vidcontrol(1) utility should be used either when you want to test-drive the new font to see if it fits your needs, or when you simply do not want to reboot the system. To set the cp1251-8x16.fnt font for the current console, use the following command:

    % vidcontrol -f 8x16 cp1251-8x16

Note: This command will only take effect if executed from a virtual console.

Note that in the vidcontrol(1) invocation you do not need to specify the full font file name - the .fnt extension may be omitted.

However, you do not really need to use vidcontrol(1), unless you really really do not want to reboot your computer. The easiest way to set up your FreeBSD system so that you can see Cyrillic characters on the console is to add the following line to /etc/rc.conf:

    font8x16="cp1251-8x16"

Of course, you may substitute 8x16 with your preferred font size. You may also define all three font sizes, just in case - it never hurts, and the only one that will actually take effect is, well, the correct one.

Note: Starting with FreeBSD 4.5-RELEASE, you will be able to choose the cp1251 console font straight from the sysinstall(8) menu. The cp1251 font was added to the Font submenu of the Console menu in the post-install Configure section of sysinstall(8) on November 23, 2001 in FreeBSD 5.0-CURRENT and on December 19, 2001 for FreeBSD 4.4-STABLE.


3.2 Cyrillic fonts for the X Window System

A short description of the fonts available (Cronyx; any more?) and the setup procedures.


3.3 Bulgarian keymaps for the FreeBSD virtual console

To be able to enter Cyrillic characters in the CP1251 (or windows-1251) character set, you need to configure your console to use the appropriate keyboard map. Fortunately, FreeBSD comes with keyboard maps for the two common Bulgarian keyboard layouts - ``BDS'' and ``Phonetic''. These two keymaps are located in the /usr/share/syscons/keymaps/ directory under the names of bg.bds.ctrlcaps.kbd and bg.phonetic.ctrlcaps.kbd respectively.

Letting a FreeBSD system use these keymaps is done either manually, using the kbdcontrol(1) utility, or automatically, using /etc/rc.conf to customize the system startup procedure.

The kbdcontrol(1) utility should be used either when you want to test-drive the new keymap to see if it fits your needs, or when you simply do not want to reboot the system. To set the bg.phonetic.ctrlcaps.kbd keyboard map, use the following command:

    % kbdcontrol -l bg.phonetic.ctrlcaps

Note: This command will only take effect if executed from a virtual console.

Note that in the kbdcontrol(1) invocation you do not need to specify the full keymap file name - the .kbd extension may be omitted.

However, you do not really need to use kbdcontrol(1), unless you really really do not want to reboot your computer. The easiest way to set up your FreeBSD system so that you can enter Cyrillic characters on the console is to add the following line to /etc/rc.conf:

    keymap="bg.phonetic.ctrlcaps"

Of course, you may substitute bg.phonetic.ctrlcaps with your preferred keymap name.

Note: Starting with FreeBSD 4.5-RELEASE, you will be able to choose either of the Bulgarian console keyboard maps straight from the sysinstall(8) menu. The ``Bulgarian BDS'' and ``Bulgarian Phonetic'' keymaps were added to the Keymap submenu of the Console menu in the post-install Configure section of sysinstall(8) on December 10, 2001 in FreeBSD 5.0-CURRENT and on December 17, 2001 for FreeBSD 4.4-STABLE.


4 FreeBSD documentation in Bulgarian

A short description of the Bulgarian translations of the books and articles of The FreeBSD Documentation Project (none really :).


5 On-line resources for Bulgarian users of FreeBSD

5.1 Web sites

Another resource for Bulgarian documentation for using and customizing FreeBSD is the FreeBSD-bg homepage.


5.2 IRC channels

On the IRC Bulgaria IRC network, there is a #FreeBSD channel for FreeBSD-related discussions and help.


This, and other documents, can be downloaded from ftp://ftp.FreeBSD-bg.ringlet.net/pub/FreeBSD-bg/doc/.

For questions about FreeBSD, read the documentation before contacting <questions@FreeBSD.org>.
For questions about this documentation, e-mail <doc@FreeBSD-bg.ringlet.net>.