Date: Mon, 15 Jul 2019 21:38:15 +0000 (UTC) From: Sergey Kandaurov <pluknet@FreeBSD.org> To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r53258 - head/ru_RU.KOI8-R/books/handbook/l10n Message-ID: <201907152138.x6FLcF8o062588@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: pluknet Date: Mon Jul 15 21:38:15 2019 New Revision: 53258 URL: https://svnweb.freebsd.org/changeset/doc/53258 Log: MFen r30225 -> r53208. Modified: head/ru_RU.KOI8-R/books/handbook/l10n/chapter.xml Modified: head/ru_RU.KOI8-R/books/handbook/l10n/chapter.xml ============================================================================== --- head/ru_RU.KOI8-R/books/handbook/l10n/chapter.xml Mon Jul 15 09:41:39 2019 (r53257) +++ head/ru_RU.KOI8-R/books/handbook/l10n/chapter.xml Mon Jul 15 21:38:15 2019 (r53258) @@ -5,10 +5,15 @@ $FreeBSD$ $FreeBSDru: frdp/doc/ru_RU.KOI8-R/books/handbook/l10n/chapter.xml,v 1.20 2007/06/26 11:42:42 den Exp $ - Original revision: r30225 + Original revision: r53208 --> -<chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" xml:id="l10n"> - <info><title>Локализация - I18N/L10N использование и настройка</title> +<chapter xmlns="http://docbook.org/ns/docbook" + xmlns:xlink="http://www.w3.org/1999/xlink" version="5.0" + xml:id="l10n"> + <info> + <title>Локализация - использование и настройка + <acronym>i18n</acronym>/<acronym>L10n</acronym></title> + <authorgroup> <author><personname><firstname>Andrey</firstname><surname>Chernov</surname></personname><contrib>Предоставил </contrib></author> </authorgroup> @@ -22,520 +27,426 @@ </authorgroup> </info> - - <sect1 xml:id="l10n-synopsis"> <title>Краткий обзор</title> - <para>FreeBSD - это очень распределенный проект, пользователи + <para>&os; - это распределенный проект, пользователи и контрибьюторы которого находятся в самых разных частях света. - В этой главе рассказывается о возможностях интернационализации - и локализации FreeBSD, которые позволяют не-англоговорящим - пользователям делать свою работу. Существует много подходов в - i18n реализации - как на системном уровне, так и на уровне - приложений, так что, где это возможно, мы будем давать читателю - ссылки на более углубленные источники документации.</para> + Поэтому &os; поддерживает локализацию на многие языки, что + позволяет просматривать, вводить и обрабатывать данные на + языках, отличных от английского. Можно выбрать среди + большинства основных языков, в том числе: китайский, + немецкий, японский, корейский, французский, русский и + вьетнамский.</para> - <para>После прочтения этой главы, вы будете знать:</para> - <itemizedlist> - <listitem><para>Как разные языки и региональные настройки кодируются - в современных операционных системах.</para></listitem> - <listitem><para>Как установить региональные настройки для вашей - оболочки.</para></listitem> - <listitem><para>Как настроить вашу консоль для отличных от - английского языков.</para></listitem> - <listitem><para>Как эффективно использовать X Window System с разными - языками.</para></listitem> - <listitem><para>Где найти дополнительную документацию по созданию - i18n-совместимых приложений.</para></listitem> - </itemizedlist> - - <para>Перед чтением этой главы вам следует::</para> - - <itemizedlist> - <listitem><para>Знать как установить дополнительные приложения сторонних - разработчиков (<xref linkend="ports"/>).</para></listitem> - </itemizedlist> - </sect1> - - <sect1 xml:id="l10n-basics"> - <title>Основы</title> - - <sect2> - <title>Что такое I18N/L10N?</title> <indexterm> <primary>интернационализация</primary> <see>локализация</see> </indexterm> <indexterm><primary>локализация</primary></indexterm> - <para>Разработчики сократили интернационализацию в термин I18N, по числу - символов между первым и последним символом интернационализации. В - названии L10N используется тот же принцип от <quote>локализации</quote>. - Совместно используемые I18N/L10N методы, протоколы и приложения - позволяют пользователям использовать языки по своему выбору.</para> + <para>Термин интернационализация + (<literal>internationalization</literal>) сокращают до + <acronym>i18n</acronym>, по числу символов в английском слове. + Сокращение <acronym>L10n</acronym> аналогично получается от + слова <literal>localization</literal>. + <acronym>i18n</acronym>/<acronym>L10n</acronym> методы, + протоколы и приложения позволяют пользователям использовать + языки по своему выбору.</para> - <para>I18N приложения написаны с применением набора I18N посредством - библиотек. Это позволяет разработчикам писать простые файлы и переводить - отображаемые меню и надписи на разные языки. Мы настоятельно рекомендуем - программистам следовать этому соглашению.</para> - </sect2> + <para>В этой главе обсуждаются особенности интернационализации и + локализации &os;, включая следующие темы:</para> - <sect2> - <title>Почему я должен использовать I18N/L10N?</title> + <itemizedlist> + <listitem> + <para>Схема именования локалей.</para> + </listitem> - <para>I18N/L10N используется всегда, когда вы хотите просмотреть, ввести - или обработать данные на отличных от английского языках.</para> - </sect2> + <listitem> + <para>Установка региональных настроек для оболочки.</para> + </listitem> - <sect2> - <title>Какие языки поддерживаются в проекте I18N?</title> + <listitem> + <para>Локализация консоли.</para> + </listitem> - <para>I18N и L10N не являются специфичными для FreeBSD. На текущий момент - у вас есть выбор между самыми распространенными языками мира, включая, но - не ограничиваясь: китайский, немецкий, японский, корейский, французский, - русский, вьетнамский и др.</para> - </sect2> + <listitem> + <para>Локализация <application>Xorg</application>.</para> + </listitem> + + <listitem> + <para>Поиск <acronym>i18n</acronym>-совместимых + приложений.</para> + </listitem> + + <listitem> + <para>Информация по настройке для некоторых языков.</para> + </listitem> + </itemizedlist> + + <para>Перед чтением этой главы вам следует знать:</para> + + <itemizedlist> + <listitem><para>Как <link linkend="ports">установить + дополнительные приложения сторонних + разработчиков</link>.</para></listitem> + </itemizedlist> </sect1> <sect1 xml:id="using-localization"> <title>Использование локализации</title> - <para>При всем своем величии, I18N не специфична для FreeBSD и - является, по сути, соглашением. Следование этому соглашению - помогает FreeBSD, и мы это приветствуем.</para> - <indexterm><primary>locale</primary></indexterm> + <indexterm><primary>локаль</primary></indexterm> - <para>Настройки локализации базируются на трех основных терминах: - код языка, код страны и кодировка. Имена локализаций строятся из этих - частей следующим образом:</para> + <para>Настройки локализации состоят из трёх компонентов: код + языка, код страны и кодировка. Из этих частей формируются + названия локалей:</para> - <programlisting><replaceable>кодязыка</replaceable>_<replaceable>кодстраны</replaceable>.<replaceable>кодировка</replaceable></programlisting> + <programlisting><replaceable>КодЯзыка</replaceable>_<replaceable>КодСтраны</replaceable>.<replaceable>Кодировка</replaceable></programlisting> - <sect2> - <title>Язык и код страны</title> - <indexterm><primary>language codes</primary></indexterm> - <indexterm><primary>country codes</primary></indexterm> + <indexterm><primary>коды языка</primary></indexterm> + <indexterm><primary>коды страны</primary></indexterm> - <para>Чтобы настроить FreeBSD (или любую другую &unix;-систему, - поддерживающую I18N) на использование специфического языка, пользователю - нужно выяснить коды этого языка и страны (коды страны сообщают - приложению какой именно диалект языка этой страны нужно использовать). К - тому же, веб-браузеры, SMTP/POP серверы, веб-серверы и т.п. делают свой - выбор в зависимости от этого. Далее показаны примеры кодов - языка/страны:</para> + <para><replaceable>КодЯзыка</replaceable> и + <replaceable>КодСтраны</replaceable> используются для + определения страны и конкретного диалекта языка. <xref + linkend="locale-lang-country"/> содержит некоторые примеры + пар <replaceable>КодЯзыка</replaceable>_<replaceable>КодСтраны</replaceable>:</para> - <informaltable frame="none" pgwide="1"> - <tgroup cols="2"> - <thead> - <row> - <entry>Код языка/страны</entry> - <entry>Описание</entry> - </row> - </thead> + <table xml:id="locale-lang-country" frame="none" pgwide="1"> + <title>Основные коды языка и страны</title> - <tbody> - <row> - <entry>en_US</entry> - <entry>Английский - Соединенные Штаты</entry> - </row> + <tgroup cols="2"> + <thead> + <row> + <entry>КодЯзыка_КодСтраны</entry> + <entry>Описание</entry> + </row> + </thead> - <row> - <entry>ru_RU</entry> - <entry>Русский для России</entry> - </row> + <tbody> + <row> + <entry>en_US</entry> + <entry>Английский, Соединенные Штаты</entry> + </row> - <row> - <entry>zh_TW</entry> - <entry>Традиционный китайский для Тайваня</entry> - </row> - </tbody> - </tgroup> - </informaltable> + <row> + <entry>ru_RU</entry> + <entry>Русский, Россия</entry> + </row> - </sect2> + <row> + <entry>zh_TW</entry> + <entry>Традиционный китайский, Тайвань</entry> + </row> + </tbody> + </tgroup> + </table> - <sect2> - <title>Кодировки</title> - <indexterm><primary>кодировки</primary></indexterm> - <indexterm><primary>ASCII</primary></indexterm> + <para>Полный список локалей доступен по команде:</para> - <para>Некоторые языки используют не соответствующие ASCII кодировки, - которые используют для кодирования 8 бит, расширенное или - многобайтовое представление символов (подробности см. в &man.multibyte.3;). - Старые приложения не распознают такие кодировки и ошибочно принимают их - за управляющие символы. Новые приложения обычно распознают 8-битные - символы. В зависимости от реализации, пользователю может - потребоваться компиляция приложения с поддержкой расширенного или - многобайтного представления символов, или же просто правильная его - настройка. Чтобы иметь возможность вводить и обрабатывать символы с - расширенным или многобайтным представлением, <link xlink:href="&url.base;/ru/ports/index.html">Коллекция портов FreeBSD</link> - предоставляет поддержку разных языков для различных приложений. Смотрите - документацию по I18N в соответствующем порту FreeBSD.</para> + <screen>&prompt.user; <userinput>locale -a | more</userinput></screen> - <para>В частности, пользователю необходимо читать прилагаемую к приложению - документацию чтобы решить, как правильно его настроить или - указать правильные параметры configure/Makefile/компилятору.</para> + <para>Чтобы определить текущую локаль:</para> - <para>Следует помнить следующие вещи:</para> + <screen>&prompt.user; <userinput>locale</userinput></screen> - <itemizedlist> - <listitem> - <para>Наборы символов, использующие один байт для кодирования символа - (см. &man.multibyte.3;), например, - ISO8859-1, ISO8859-15, KOI8-R, CP437.</para> - </listitem> + <indexterm><primary>кодировки</primary></indexterm> + <indexterm><primary>ASCII</primary></indexterm> - <listitem> - <para>Расширенные или многобайтные кодировки, например, EUC, Big5.</para> - </listitem> - </itemizedlist> + <para>Специфичные для языков наборы символов ISO8859-1, + ISO8859-15, KOI8-R, CP437 описаны в &man.multibyte.3;. + Актуальный список наборов символов находится на сайте <link + xlink:href="http://www.iana.org/assignments/character-sets">IANA + Registry</link>.</para> - <para>Вы можете посмотреть актуальный список наборов символов на сайте - <link xlink:href="http://www.iana.org/assignments/character-sets">IANA Registry</link>.</para> + <para>Некоторые языки, такие как китайский или японский, не могут + быть представлены с использованием символов + <acronym>ASCII</acronym>, и для них требуется дополненная + языковая кодировка с использованием расширенного или + многобайтового представления символов. Такими кодировками + являются EUC и Big5. Старые приложения могут ошибочно + принимать символы в таких кодировках за управляющие, в то время + как новые обычно их распознают. В зависимости от реализации, + пользователю может потребоваться компиляция приложения с + поддержкой расширенного или многобайтового представления + символов или правильная его настройка.</para> - <note> - <para>Вместо этого, &os; используют X11-совместимые - кодировки для локализации.</para> - </note> + <note> + <para>Во &os; используются Xorg-совместимые кодировки.</para> + </note> - </sect2> + <para>В продолжении этого раздела рассматриваются различные + способы настройки локализации в системе &os;. В следующем + разделе выносятся соображения по поиску и компиляции + приложений с поддержкой <acronym>i18n</acronym>.</para> - <sect2> - <title>Приложения, использующие I18N</title> - - <para>В системе Портов и Пакетов FreeBSD в название приложений, - поддерживающих I18N, включена аббревиатура <literal>I18N</literal> для - легкой их идентификации. И, тем не менее, не все приложения поддерживают - требуемый язык.</para> - </sect2> - <sect2 xml:id="setting-locale"> - <title>Настройка локализации</title> + <title>Настройка локализации для оболочки</title> - <para>Обычно достаточно экспортировать значение имени локализации в - переменной <envar>LANG</envar> Вашей оболочки. Это можно сделать в - пользовательском <filename>~/.login_conf</filename> файле или в - инициализационном файле пользовательской оболочки - (<filename>~/.profile</filename>, <filename>~/.bashrc</filename>, - <filename>~/.cshrc</filename>). Нет надобности устанавливать отдельные - параметры локализации такие как <envar>LC_CTYPE</envar>, - <envar>LC_CTIME</envar>. За дополнительной информацией, пожалуйста, - обращайтесь к документации FreeBSD по нужному вам языку.</para> + <para>Для настроек локализации используется + пользовательский <filename>~/.login_conf</filename> или + инициализационый файл пользовательской оболочки: + <filename>~/.profile</filename>, + <filename>~/.bashrc</filename> или + <filename>~/.cshrc</filename>.</para> - <para>Вам следует установить следующие переменные окружения в ваших - конфигурационных файлах:</para> + <para>Следует задать две переменные окружения:</para> <itemizedlist> <listitem> - <indexterm><primary>POSIX</primary></indexterm> - - <para><envar>LANG</envar> для семейства функций &posix; - &man.setlocale.3;</para> + <para><envar>LANG</envar> задаёт локаль<indexterm> + <primary>POSIX</primary></indexterm></para> </listitem> <listitem> <indexterm><primary>MIME</primary></indexterm> - <para><envar>MM_CHARSET</envar>набор символов MIME для - приложений</para> + <para><envar>MM_CHARSET</envar> задаёт набор символов + <acronym>MIME</acronym> для приложений</para> </listitem> </itemizedlist> - <para>Эти настройки включают конфигурацию оболочки пользователя, - конфигурацию конкретных приложений и конфигурацию X11.</para> + <para>В дополнение к настройкам пользовательской оболочки + эти переменные также следует задать в конфигурации + конкретного приложения и в конфигурации + <application>Xorg</application>.</para> - <sect3> - <title>Методы настройки локализации</title> - <indexterm><primary>locale</primary></indexterm> - <indexterm><primary>login class</primary></indexterm> + <indexterm><primary>локаль</primary></indexterm> + <indexterm><primary>класс логина</primary></indexterm> - <para>Существует два метода настройки локализации и оба описаны ниже. - Первый (рекомендуемый) заключается в задании переменных в <link linkend="login-class">классе логина</link>, другой метод заключается в - задании переменных окружения в - <link linkend="startup-file">инициализационном - файле</link> системной оболочки.</para> + <para>Существует два способа выполнить необходимые присвоения + переменным: <link linkend="login-class">класс логина</link>, + который является рекомендуемым, и <link + linkend="startup-file">файл инициализации</link>. + В следующих двух разделах будет показано, как использовать + оба способа.</para> - <sect4 xml:id="login-class"> - <title>Метод Login Classes</title> + <sect3 xml:id="login-class"> + <title>Настройка через классы логина</title> - <para>Этот метод позволяет установить переменные окружения, - необходимые для установки локализации и набора символов MIME, - однократно для любых оболочек, вместо того, чтобы добавлять - установку этих переменных в инициализационный файл каждой оболочки. - <link linkend="usr-setup">Настройка на уровне пользователя</link> может - быть сделана самим пользователем, а <link linkend="adm-setup"> - Настройка на уровне администратора</link> требует привилегий - суперпользователя.</para> + <para>Первый способ является рекомендуемым, поскольку в нём + необходимые для выбора локализации и набора символов + <acronym>MIME</acronym> значения переменных окружения + присваиваются для всех оболочек. Эту процедуру может + выполнить пользователь для себя, а также это может сделать + в виде настройки суперпользователь для всех пользователей + системы.</para> - <sect5 xml:id="usr-setup"> - <title>Настройка на уровне пользователя</title> + <para>В этом минимальном примере обе переменные задаются для + кодировки Latin-1 в <filename>.login_conf</filename> + домашнего каталога отдельного пользователя:</para> - <para>Вот минимальный пример файла <filename>.login_conf</filename> - в домашнем каталоге пользователя, в котором задаются обе переменные - для кодировки Latin-1:</para> - - <programlisting>me:\ + <programlisting>me:\ :charset=ISO-8859-1:\ :lang=de_DE.ISO8859-1:</programlisting> - <indexterm><primary>Traditional Chinese</primary><secondary>BIG-5 encoding</secondary></indexterm> - <para>Это пример <filename>.login_conf</filename>, который задает - переменные для Традиционного Китайского языка в кодировке BIG-5. - Обратите внимание, что задается намного больше переменных, потому - что некоторое программы некорректно воспринимают переменные - окружения локализации для Китая, Японии и Кореи.</para> + <indexterm><primary>традиционный китайский</primary> + <secondary>кодировка BIG-5</secondary></indexterm> - <programlisting>#Пользователи, которые не хотят использовать -денежные единицы + <para>Ниже дан <filename>~/.login_conf</filename>, в котором + переменные заданы для традиционного китайского в кодировке + BIG-5. Здесь нужно больше переменных, потому что некоторые + программы некорректно воспринимают переменные окружения + локализации для Китая, Японии и Кореи:</para> + + <programlisting>#Пользователи, которые не хотят использовать денежные единицы #и форматы времени Тайваня, могут вручную изменить каждую переменную me:\ :lang=zh_TW.Big5:\ - :setenv=LC_ALL=zh_TW.Big:\ - :setenv=LC_COLLATE=zh_TW.Big5:\ - :setenv=LC_CTYPE=zh_TW.Big5:\ - :setenv=LC_MESSAGES=zh_TW.Big5:\ - :setenv=LC_MONETARY=zh_TW.Big5:\ - :setenv=LC_NUMERIC=zh_TW.Big5:\ - :setenv=LC_TIME=zh_TW.Big5:\ + :setenv=LC_ALL=zh_TW.Big5,LC_COLLATE=zh_TW.Big5,LC_CTYPE=zh_TW.Big5,LC_MESSAGES=zh_TW.Big5,LC_MONETARY=zh_TW.Big5,LC_NUMERIC=zh_TW.Big5,LC_TIME=zh_TW.Big5:\ :charset=big5:\ :xmodifiers="@im=gcin": #Set gcin as the XIM Input Server</programlisting> - <para>За подробностями обращайтесь к разделу - <link linkend="adm-setup">Настройка на - уровне администратора</link> и &man.login.conf.5;.</para> - </sect5> + <para>Как вариант, суперпользователь может настроить + локализацию для всех пользователей системы. Следующие + переменные в <filename>/etc/login.conf</filename> + используются для установки локализации и набора символов + <acronym>MIME</acronym>:</para> - <sect5 xml:id="adm-setup"> - <title>Настройка на уровне администратора</title> - - <para>Проверьте, что класс логина пользователя в - <filename>/etc/login.conf</filename> задает нужный язык. - Убедитесь, что эти настройки присутствуют в - <filename>/etc/login.conf</filename>:</para> - - <programlisting><replaceable>language_name</replaceable>:<replaceable>accounts_title</replaceable>:\ - :charset=<replaceable>MIME_charset</replaceable>:\ - :lang=<replaceable>locale_name</replaceable>:\ + <programlisting><replaceable>название_языка</replaceable>|<replaceable>подробное описание</replaceable>:\ + :charset=<replaceable>кодировка_MIME</replaceable>:\ + :lang=<replaceable>название_локализации</replaceable>:\ :tc=default:</programlisting> - <para>Используя наш предыдущий пример с Latin-1, это должно - выглядеть так:</para> + <para>Таким образом, на предыдущем примере с Latin-1 + это бы выглядело так:</para> - <programlisting>german:German Users Accounts:\ + <programlisting>german|German Users Accounts:\ :charset=ISO-8859-1:\ :lang=de_DE.ISO8859-1:\ :tc=default:</programlisting> - <para>Отметим, что класс <replaceable>russian</replaceable> - присутствует во FreeBSD по умолчанию.</para> + <para>За информацией по этим переменным обращайтесь к + &man.login.conf.5;. Отметим, что там уже присутствует + класс <replaceable>russian</replaceable>.</para> - <para>После изменения описания классов логинов выполните - команду:</para> + <para>После каждого изменения + <filename>/etc/login.conf</filename> не забывайте выполнить + команду для обновления базы данных:</para> - <screen>&prompt.root; <userinput>cap_mkdb /etc/login.conf</userinput></screen> + <screen>&prompt.root; <userinput>cap_mkdb /etc/login.conf</userinput></screen> - <para>для того, чтобы изменения в файле - <filename>/etc/login.conf</filename> стали использоваться - системой.</para> + <sect4> + <title>Утилиты для смены класса логина</title> - <bridgehead renderas="sect4">Установка класса логина с помощью - &man.vipw.8;</bridgehead> + <indexterm> + <primary><command>vipw</command></primary> + </indexterm> - <indexterm> - <primary><command>vipw</command></primary> - </indexterm> - <para>Используйте <command>vipw</command> для добавления новых - пользователей и отредактируйте запись о пользователе, чтобы она была - похожа на эту:</para> + <para>В дополнение к ручному редактированию + <filename>/etc/login.conf</filename> имеется несколько + утилит, которые позволяют задать локаль при создании + новых пользователей:</para> - <programlisting>user:password:1111:11:<replaceable>language</replaceable>:0:0:User Name:/home/user:/bin/sh</programlisting> + <para>Если для добавлении новых пользователей + используется <command>vipw</command>, то чтобы задать + локаль, укажите <replaceable>язык</replaceable>:</para> - <bridgehead renderas="sect4">Установка класса логина с помощью - &man.adduser.8;</bridgehead> + <programlisting>user:password:1111:11:<replaceable>язык</replaceable>:0:0:User Name:/home/user:/bin/sh</programlisting> - <indexterm> - <primary><command>adduser</command></primary> - </indexterm> - <indexterm><primary>login class</primary></indexterm> - <para>Используйте <command>adduser</command> для добавления новых - пользователей и сделайте следующее:</para> + <indexterm> + <primary><command>adduser</command></primary> + </indexterm> + <indexterm><primary>класс логина</primary></indexterm> - <itemizedlist> - <listitem> - <para>Установите <literal>defaultclass = - <replaceable>язык</replaceable></literal> в - <filename>/etc/adduser.conf</filename>. Помните, что в этом - случае вы должны задать <literal>default</literal> класс для - всех пользователей других языков.</para> - </listitem> + <para>Если для добавления новых пользователей используется + <command>adduser</command>, то язык по умолчанию можно + предварительно выбрать для всех новых пользователей + или указать его для отдельного пользователя.</para> - <listitem> - <para>Другой способ заключается в задании класса логина каждый - раз, когда &man.adduser.8; попросит об этом: - <screen><prompt>Enter login class: default []: </prompt></screen> - </para> - </listitem> + <para>Если все новые пользователи используют общий язык, + задайте <literal>defaultclass=<replaceable>язык</replaceable></literal> + в <filename>/etc/adduser.conf</filename>.</para> - <listitem> - <para>Еще один способ - использовать следующее для каждого - пользователя другого языка, которого вы хотите - добавить:</para> + <para>Чтобы переопределить эту настройку при создании + пользователя, введите требуемую локаль в запросе + командной строки:</para> - <screen>&prompt.root; <userinput>adduser -class <replaceable>язык</replaceable></userinput></screen> - </listitem> - </itemizedlist> + <screen><prompt>Enter login class: default []: </prompt></screen> - <bridgehead renderas="sect4">Установка класса логина с помощью - &man.pw.8;</bridgehead> - <indexterm><primary><command>pw</command></primary></indexterm> - <para>Если для добавления новых пользователей вы используете - утилиту &man.pw.8;, запускайте ее с такими параметрами:</para> + <para>или укажите её в команде &man.adduser.8;:</para> - <screen>&prompt.root; <userinput>pw useradd - <replaceable>имя_пользователя</replaceable> -L <replaceable>язык</replaceable></userinput></screen> + <screen>&prompt.root; <userinput>adduser -class <replaceable>язык</replaceable></userinput></screen> - <bridgehead renderas="sect4">Изменение класса логина с помощью - &man.chpass.1;</bridgehead> - <indexterm><primary><command>chpass</command></primary></indexterm> - <para>Чтобы изменить класс логина у существующего пользователя, - воспользуйтесь утилитой &man.chpass.1;. Её необходимо - запустить с правами суперпользователя и передать имя пользователя, - которому требуется изменить класс, в качестве параметра.</para> + <indexterm> + <primary><command>pw</command></primary> + </indexterm> - <screen>&prompt.root; <userinput>chpass <replaceable>имя_пользователя</replaceable></userinput></screen> - </sect5> - </sect4> + <para>Если для добавления новых пользователей используется + <command>pw</command>, укажите локаль так:</para> - <sect4 xml:id="startup-file"> - <title>Метод инициализационных файлов оболочки</title> + <screen>&prompt.root; <userinput>pw useradd <replaceable>имя_пользователя</replaceable> -L <replaceable>язык</replaceable></userinput></screen> - <note> - <para>Этот метод не рекомендуется, потому что он требует разных - настроек для каждой оболочки. Вместо этого используйте - <link linkend="login-class">Метод класса логина</link>.</para> - </note> + <indexterm> + <primary><command>chpass</command></primary> + </indexterm> - <indexterm><primary>MIME</primary></indexterm> - <indexterm><primary>locale</primary></indexterm> - <para>Чтобы добавить локализацию и набор символов MIME, просто - установите две переменные окружения, приведенные ниже, в - инициализационные файлы оболочек <filename>/etc/profile</filename> - и/или <filename>/etc/csh.login</filename>. Для примера мы используем - немецкий язык:</para> + <para>Изменить класс логина у существующего пользователя + можно с помощью <command>chpass</command>, передав имя + пользователя через параметр:</para> - <para>В <filename>/etc/profile</filename>:</para> + <screen>&prompt.root; <userinput>chpass <replaceable>имя_пользователя</replaceable></userinput></screen> + </sect4> + </sect3> - <programlisting><envar>LANG=de_DE.ISO8859-1; export LANG</envar> -<envar>MM_CHARSET=ISO-8859-1; export MM_CHARSET</envar></programlisting> + <sect3 xml:id="startup-file"> + <title>Файл инициализации оболочки</title> - <para>Или в <filename>/etc/csh.login</filename>:</para> + <para>Второй способ не рекомендуется, поскольку для каждой + используемой оболочки требуется ручная конфигурация, при + этом в каждой оболочке используется собственный файл + конфигурации и разный синтаксис. Например, чтобы задать + немецкий язык в оболочке <command>sh</command>, эти + строчки можно было бы добавить в + <filename>~/.profile</filename> для настройки оболочки + отдельного пользователя. Также их можно было бы добавить + в <filename>/etc/profile</filename> или + <filename>/usr/share/skel/dot.profile</filename>, чтобы + применить ко всем пользователям:</para> - <programlisting><envar>setenv LANG de_DE.ISO8859-1</envar> -<envar>setenv MM_CHARSET ISO-8859-1</envar></programlisting> + <programlisting><envar>LANG</envar>=de_DE.ISO8859-1; export <envar>LANG</envar> +<envar>MM_CHARSET</envar>=ISO-8859-1; export <envar>MM_CHARSET</envar></programlisting> - <para>Как вариант, вы можете добавить установки, приведенные выше в - <filename>/usr/share/skel/dot.profile</filename> (соответствует - установкам в <filename>/etc/profile</filename> выше), или - <filename>/usr/share/skel/dot.login</filename> (соответствует - установкам в <filename>/etc/csh.login</filename> выше).</para> + <para>Тем не менее, путь к файлу конфигурации и используемый + синтаксис отличаются в оболочке <command>csh</command>. + Следующие настройки можно одинаково успешно задать в + <filename>~/.csh.login</filename>, + <filename>/etc/csh.login</filename> и + <filename>/usr/share/skel/dot.login</filename>:</para> - <para>Для X11:</para> + <programlisting>setenv <envar>LANG</envar> de_DE.ISO8859-1 +setenv <envar>MM_CHARSET</envar> ISO-8859-1</programlisting> - <para>В <filename>$HOME/.xinitrc</filename>:</para> + <para>Используемый в <filename>~/.xinitrc</filename> + синтаксис для настройки <application>Xorg</application> + также зависит от оболочки. Первый пример для оболочки + <command>sh</command>, и второй для + <command>csh</command>:</para> - <programlisting><envar>LANG=de_DE.ISO8859-1; export LANG</envar></programlisting> + <programlisting><envar>LANG</envar>=de_DE.ISO8859-1; export <envar>LANG</envar></programlisting> - <para>Или:</para> - - <programlisting><envar>setenv LANG de_DE.ISO8859-1</envar></programlisting> - - <para>В зависимости от вашей оболочки (см. выше).</para> - - </sect4> + <programlisting>setenv <envar>LANG</envar> de_DE.ISO8859-1</programlisting> </sect3> </sect2> <sect2 xml:id="setting-console"> <title>Настройка консоли</title> - <para>Для всех однобайтовых кодовых таблиц, укажите подходящие - консольные шрифты в <filename>/etc/rc.conf</filename> для - требуемого языка:</para> + <para>Для консоли имеется несколько локализованных шрифтов. + Для их просмотра наберите + <command>ls /usr/share/syscons/fonts</command>. + Чтобы настроить консольный шрифт, + укажите в <filename>/etc/rc.conf</filename> + <replaceable>имя_шрифта</replaceable> без расширения + <filename>.fnt</filename>:</para> <programlisting>font8x16=<replaceable>имя_шрифта</replaceable> font8x14=<replaceable>имя_шрифта</replaceable> font8x8=<replaceable>имя_шрифта</replaceable></programlisting> - <para>The <replaceable>имя_шрифта</replaceable> берется из каталога - <filename>/usr/share/syscons/fonts</filename>, - без указания расширения <filename>.fnt</filename>.</para> - - <indexterm> - <primary><application>sysinstall</application></primary> - </indexterm> <indexterm><primary>keymap</primary></indexterm> <indexterm><primary>screenmap</primary></indexterm> - <para>Убедитесь также в установке правильных значений keymap и screenmap - для вашей однобайтовой кодовой таблицы через - <command>sysinstall</command> (<command>/stand/sysinstall</command> - в &os; версий более ранних, чем 5.2). - В <application>sysinstall</application> выберите - <guimenuitem>Configure</guimenuitem>, затем - <guimenuitem>Console</guimenuitem>. Или добавьте следующие строки в + <para>Значения keymap и screenmap можно задать в <filename>/etc/rc.conf</filename>:</para> - <programlisting>scrnmap=<replaceable>screenmap_name</replaceable> -keymap=<replaceable>keymap_name</replaceable> -keychange="<replaceable>fkey_number sequence</replaceable>"</programlisting> + <programlisting>scrnmap=<replaceable>название_screenmap</replaceable> +keymap=<replaceable>название_keymap</replaceable> +keychange="<replaceable>последовательность fkey_number</replaceable>"</programlisting> - <para><replaceable>screenmap_name</replaceable> берется из - каталога <filename>/usr/share/syscons/scrnmaps</filename>, без - суффикса <filename>.scm</filename>. - Screenmap с соответствующим шрифтом обычно используется в качестве - обходного пути для расширения 8 бит до 9 бит в псевдографическую - область VGA адаптера, например для удаления букв из этой области + <para>Чтобы просмотреть доступные таблицы screenmap, наберите + <command>ls /usr/share/syscons/scrnmaps</command>. Значение + <replaceable>screenmap</replaceable> указывается без + расширения <filename>.scm</filename>. Таблица screenmap с + соответствующим шрифтом обычно используется в качестве + обходного пути для расширения 8 бит до 9 бит в матрице символов + шрифта адаптора VGA. Это будет приводить к вынесению букв за + границы псевдографической области, если используется 8-битный шрифт.</para> - <para>Если даемон мыши <application>moused</application> включен - добавлением в <filename>/etc/rc.conf</filename> следующей - строки:</para> + <para>Чтобы просмотреть доступные таблицы keymap, наберите + <command>ls /usr/share/syscons/keymaps</command>. Значение + <replaceable>keymap</replaceable> указывается без расширения + <filename>.kbd</filename>. Чтобы проверить keymap без + перезагрузки системы, используйте &man.kbdmap.1;.</para> -<programlisting>moused_enable="YES"</programlisting> + <para>Запись <literal>keychange</literal> обычно нужна для + сопоставления функциональных клавиш выбранному типу + терминала, поскольку последовательности функциональных клавиш + не могут быть определены в keymap.</para> - <para>прочтите информацию о курсоре мыши в следующем параграфе.</para> + <para>После этого задайте правильный консольный тип терминала + в <filename>/etc/ttys</filename> для всех виртуальных + терминалов. <xref linkend="locale-charset"/> содержит + доступные типы терминалов:</para> - <indexterm> - <primary><application>moused</application></primary> - </indexterm> - <para>По умолчанию драйвер &man.syscons.4; выделяет для курсора мыши - в таблице символов диапазон 0xd0-0xd3. Если в вашем языке - используется этот диапазон, переместите этот диапазон, - включив следующую строку в - <filename>/etc/rc.conf</filename>:</para> + <table xml:id="locale-charset" frame="none" pgwide="1"> + <title>Типы терминалов для набора символов</title> - <programlisting>mousechar_start=3</programlisting> - - <para><replaceable>keymap_name</replaceable> берется из каталога - <filename>/usr/share/syscons/keymaps</filename>, без расширения - <filename>.kbd</filename>. Если вы не знаете какую таблицу - использовать, запустите &man.kbdmap.1; для тестирования таблицы - без перезагрузки.</para> - - <para><literal>keychange</literal> обычно требуется для сопоставления - функциональных клавиш выбранному типу терминала, поскольку - последовательности функциональных клавиш не могут быть определены - в раскладке клавиатуры.</para> - - <para>Убедитесь также, что для всех записей <literal>ttyv*</literal> - в <filename>/etc/ttys</filename> установлен подходящий тип терминала. - Имеющиеся типы соответствуют следующим кодировкам:</para> - - <informaltable frame="none" pgwide="1"> <tgroup cols="2"> <thead> <row> - <entry>Кодовая таблица</entry> + <entry>Набор символов</entry> <entry>Тип терминала</entry> </row> </thead> @@ -577,23 +488,27 @@ keychange="<replaceable>fkey_number sequence</replacea </row> </tbody> </tgroup> - </informaltable> + </table> - <para>Для расширенных кодировок, а также для многобайтовых кодировок, - используйте порт FreeBSD из каталога - <filename>/usr/ports/<replaceable>language</replaceable></filename>. - Некоторые порты выводят информацию на консоль, хотя для системы - выглядят как последовательные псевдотерминалы, следовательно вы - должны зарезервировать достаточное количество псевдотерминалов - и для X11 и для последовательных псевдоконсолей. Вот неполный - список приложений для использования этих кодировок в консоли:</para> + <indexterm> + <primary><application>moused</application></primary> + </indexterm> - <informaltable frame="none" pgwide="1"> + <para>Для языков с расширенной или многобайтовой кодировкой + установите консоль для данного языка из Коллекции Портов + &os;. <xref linkend="locale-console"/> содержит доступные + порты. После установки смотрите + <filename>pkg-message</filename> или страницы Справочника + по конфигурации и использованию данного порта.</para> + + <table xml:id="locale-console" frame="none" pgwide="1"> + <title>Доступные консоли из Коллекции Портов</title> + <tgroup cols="2"> <thead> <row> <entry>Язык</entry> - <entry>Приложение</entry> + <entry>Расположение порта</entry> </row> </thead> @@ -604,330 +519,457 @@ keychange="<replaceable>fkey_number sequence</replacea </row> <row> - <entry>Японский</entry> - <entry><package>japanese/kon2-16dot</package> или - <package>japanese/mule-freewnn</package></entry> + <entry>Chinese/Japanese/Korean</entry> + <entry><package>chinese/cce</package></entry> </row> <row> - <entry>Корейский</entry> - <entry><package>korean/han</package></entry> + <entry>Chinese/Japanese/Korean</entry> + <entry><package>chinese/zhcon</package></entry> </row> + + <row> + <entry>Japanese</entry> + <entry><package>chinese/kon2</package></entry> + </row> + + <row> + <entry>Japanese</entry> + <entry><package>japanese/kon2-14dot</package></entry> + </row> + + <row> + <entry>Japanese</entry> + <entry><package>japanese/kon2-16dot</package></entry> + </row> </tbody> </tgroup> - </informaltable> + </table> + + <para>Если <application>moused</application> включен + в <filename>/etc/rc.conf</filename>, может потребоваться + дополнительная настройка. По умолчанию драйвер + &man.syscons.4; выделяет для курсора мыши в таблице символов + диапазон <literal>0xd0</literal>-<literal>0xd3</literal>. + Если в языке этот диапазон используется, переместите диапазон + курсора посредством добавления следующей строки в + <filename>/etc/rc.conf</filename>:</para> + + <programlisting>mousechar_start=3</programlisting> </sect2> <sect2> - <title>Настройка X11</title> + <title>Настройка Xorg</title> - <para>Хотя X11 не является частью проекта FreeBSD, мы включили сюда - некоторую информацию для пользователей FreeBSD. За детальной - информацией обращайтесь к <link xlink:href="http://www.x.org/">Веб - сайту &xorg;</link> или к сайту того сервера X11, который вы - используете.</para> + <para><xref linkend="x11"/> описывает процедуру установки и + настройки <application>Xorg</application>. Для настройки + локализации <application>Xorg</application> в Коллекции + Портов &os; имеются дополнительные шрифты и методы ввода. + Настройки <acronym>i18n</acronym> для отдельных приложений, + такие как шрифты и меню, можно внести в + <filename>~/.Xresources</filename>, чтобы меню в графических + приложениях отображались на выбранном языке.</para> - <para>В <filename>~/.Xresources</filename>, вы можете внести - дополнительные I18N настройки приложений (настройки шрифтов, - меню и т.п.).</para> + <indexterm><primary>X Input Method (XIM)</primary></indexterm> - <sect3> - <title>Отображение шрифтов</title> - <indexterm><primary>X11 True Type font server</primary></indexterm> - <para>Установите сервер <application>&xorg;</application> - (<package>x11-servers/xorg-server</package>) - или <application>&xfree86;</application> - (<package>x11-servers/XFree86-4-Server</package>), - затем &truetype; шрифты для используемого языка. - После установки корректного - значения locale меню, сообщения и т.д. должны появиться на - соответствующем языке.</para> - </sect3> + <para>Протокол X Input Method (<acronym>XIM</acronym>) - это + стандарт <application>Xorg</application> для ввода + неанглийских символов. <xref linkend="locale-xim"/> + описывает приложения для методов ввода, которые содержатся + в Коллекции Портов &os;. Также доступны дополнительные + приложения Fcitx и Uim.</para> - <sect3> - <title>Ввод не-англоязычных символов</title> - <indexterm><primary>X11 Input Method (XIM)</primary></indexterm> - <para>Протокол X11 Input Method (XIM) это новый стандарт для всех - клиентов X11. Все приложения X11 должны быть написаны как XIM - клиенты, получающие ввод с серверов XIM Input. Существует - несколько XIM серверов, доступных для различных языков.</para> - </sect3> - </sect2> + <table xml:id="locale-xim" frame="none" pgwide="1"> + <title>Доступные метода ввода</title> + <tgroup cols="2"> + <thead> + <row> + <entry>Язык</entry> + <entry>Метод ввода</entry> + </row> + </thead> + + <tbody> + <row> + <entry>китайский</entry> + <entry><package>chinese/gcin</package></entry> + </row> + + <row> + <entry>китайский</entry> + <entry><package>chinese/ibus-chewing</package></entry> + </row> + + <row> + <entry>китайский</entry> + <entry><package>chinese/ibus-pinyin</package></entry> + </row> + + <row> + <entry>китайский</entry> + <entry><package>chinese/oxim</package></entry> *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201907152138.x6FLcF8o062588>