FindLang Policy: различия между версиями

Материал из ALT Linux Wiki
 
(не показано 9 промежуточных версий 4 участников)
Строка 1: Строка 1:
{{DraftPolicy
{{Policy
|responsible=viy@
|responsible=Игорь Власенко
|discussion_link=
|since=незапамятных времен
|discussion_since=26.02.2010
|metabug=
}}
}}
Policy по применению %find_lang.


== Общие положения. ==
==Policy по применению %find_lang.==


* Языкозависимые файлы, отсутствие которых не нарушает работы программы,должны быть помечены как %lang.
=== Общие положения. ===
 
* Языкозависимые файлы, отсутствие которых не нарушает работы программы, должны быть помечены как %lang.


* Допускается (из-за особенностей реализации %find_lang, см. [http://lists.altlinux.org/pipermail/devel/2010-February/180492.html письмо]) не помечать файлы для языка en, в том числе .mo файлы.
* Допускается (из-за особенностей реализации %find_lang, см. [http://lists.altlinux.org/pipermail/devel/2010-February/180492.html письмо]) не помечать файлы для языка en, в том числе .mo файлы.
* Допускается не помечать файлы, входящие в подпакеты c разбивкой по языкам вида *-i18n-<lang>.


* .po файлы, установленные в {{path|/usr/share/locale/*/*.po}}, должны быть конвертированы в .mo формат.
* .po файлы, установленные в {{path|/usr/share/locale/*/*.po}}, должны быть конвертированы в .mo формат.
Строка 16: Строка 19:
* Рекомендуется для создания списков таких файлов использовать, где это возможно, встроенную команду %find_lang.
* Рекомендуется для создания списков таких файлов использовать, где это возможно, встроенную команду %find_lang.


Файлы, помечаемые командой %find_lang:
Часто встречающиеся файлы, которые рекомендуется помечать командой %find_lang:


** {{path|/usr/share/locale/*/*.mo}}
** {{path|/usr/share/locale/*/*.mo}}
** {{path|/usr/share/omf/*/*-<LANG>.omf}} [http://library.gnome.org/admin/system-admin-guide/stable/help-3.html.en описание omf]
** {{path|/usr/share/omf/*/*-<LANG>.omf}} [http://library.gnome.org/admin/system-admin-guide/stable/help-3.html.en описание omf]
** {{path|/usr/share/gnome/*/<LANG>}}
** {{path|/usr/share/gnome/*/<LANG>}}
** {{path|/usr/share/doc/HTML/<LANG>/*}}
** {{path|/usr/share/man/<LANG>/*}}


== Использование %find_lang ==
=== Использование %find_lang ===
%find_lang вызывается в секции %install
%find_lang вызывается в секции %install


Строка 38: Строка 43:
При этом find-lang ищет файлы справки KDE в %_defaultdocdir/HTML
При этом find-lang ищет файлы справки KDE в %_defaultdocdir/HTML


При необходимости "собрать" несколько групп файлов переводов можно применить такую форму:
%find_lang --output=%name.lang %name %name-gnulib


Далее секция %files оформляется следующим образом:
Далее секция %files оформляется следующим образом:
  %files -f %name.lang
  %files -f %name.lang


%find_lang, являющийся скриптом, имеет и другие параметры, делающие его более гибким.
%find_lang, являющийся скриптом {{path|/usr/lib/rpm/find-lang}}, имеет и другие параметры, делающие его более гибким,
см. исходный текст.

Текущая версия от 20:32, 2 января 2021

Stamp90cw.png
Действующая политика Sisyphus

Политика действует с незапамятных времен.

Ответственный за проведение политики в жизнь — Игорь Власенко.


Policy по применению %find_lang.

Общие положения.

  • Языкозависимые файлы, отсутствие которых не нарушает работы программы, должны быть помечены как %lang.
  • Допускается (из-за особенностей реализации %find_lang, см. письмо) не помечать файлы для языка en, в том числе .mo файлы.
  • Допускается не помечать файлы, входящие в подпакеты c разбивкой по языкам вида *-i18n-<lang>.
  • .po файлы, установленные в /usr/share/locale/*/*.po, должны быть конвертированы в .mo формат.
  • Рекомендуется для создания списков таких файлов использовать, где это возможно, встроенную команду %find_lang.

Часто встречающиеся файлы, которые рекомендуется помечать командой %find_lang:

    • /usr/share/locale/*/*.mo
    • /usr/share/omf/*/*-<LANG>.omf описание omf
    • /usr/share/gnome/*/<LANG>
    • /usr/share/doc/HTML/<LANG>/*
    • /usr/share/man/<LANG>/*

Использование %find_lang

%find_lang вызывается в секции %install

Для программ GNOME указывается:

%find_lang --with-gnome %name

При этом find-lang кроме файлов переводов в %_datadir/locale ищет файлы справки Гном в %_datadir/gnome/help и .omf файлы в %_datadir/omf

Поэтому не нужно указывать в секции %files каталоги с locale (переводами), а также

%_datadir/omf/%name
%_datadir/gnome/help/

Для программ KDE указывается:

%find_lang --with-kde %name

При этом find-lang ищет файлы справки KDE в %_defaultdocdir/HTML

При необходимости "собрать" несколько групп файлов переводов можно применить такую форму:

%find_lang --output=%name.lang %name %name-gnulib

Далее секция %files оформляется следующим образом:

%files -f %name.lang

%find_lang, являющийся скриптом /usr/lib/rpm/find-lang, имеет и другие параметры, делающие его более гибким, см. исходный текст.