[devel] menu DURING_INSTALL
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Вт Ноя 25 14:32:26 MSK 2008
On Tue, Nov 25, 2008 at 01:05:15PM +0200, Igor Vlasenko wrote:
> On Tue, Nov 25, 2008 at 01:37:34PM +0300, Alexey Tourbin wrote:
> > По-моему, в списке languages() кодировки указывать не надо.
>
> Но кодировки нужно указывать в langs(),
> чтобы не сломать рабочие системы :(
lang() будет работать как и раньше.
> Например, в
> /etc/menu-methods/icewm:
> [...]
> x11= " prog \"" translate(lang(), title()) "\" \"" findicon($icon, "-") "\"
> " $command"\n"
> [...]
>
> $ cat /etc/menu-methods/lang.h
> function lang()="ru_RU.CP1251"
> function languages()="ru_RU"
>
> (У меня локаль пользователей - ru_RU.CP1251).
>
> Проблема в том, что, например, icewm не поддерживает кодировок,
> что видит, то и поет (хоть бНОПНЯ, хоть РєРСРs).
Вот как это будет работать.
$ hsh --init && hsh-install menu
...
<13>Nov 25 11:26:26 rpmi: sox-14.0.1-alt3 installed
<13>Nov 25 11:26:26 rpmi: sound_handler-0.3.1-alt1 installed
<13>Nov 25 11:26:26 rpmi: libao-alsa-0.8.8-alt1.13239 installed
<13>Nov 25 11:26:26 rpmi: menu-2.1.41-alt3 installed
$ echo LC_MESSAGES=ru_RU.CP1251 |hsh-run --rooter -- sort -o /etc/sysconfig/i18n
$ hsh-run --rooter /usr/sbin/update-menus
$ hsh-run cat /etc/menu-methods/lang.h
# Generated by /usr/sbin/update-menus.
function lang()="ru_RU.CP1251"
function languages()="af:am:ar:az:be:bg:br:bs:ca:cs:cy:da:de:el:eo:es:et:eu:fa:fi:fr:ga:gl:he:hi:hr:hu:id:is:it:ja:ka:ko:lt:lv:mi:mk:mn:ms:mt:nb:nl:nn:oc:pl:pt:pt_BR:ro:ru:sk:sl:sq:sr:sr на Latn:sv:ta:tg:th:tr:uk:uz:uz на Cyrl:vi:wa:xh:zh_CN:zh_TW"
$
(Далее.)
$ hsh-install icewm
...
<13>Nov 25 11:28:41 rpmi: xinitrc-2.4.31-alt1 installed
<13>Nov 25 11:28:41 rpmi: icewm-light-1:1.2.36-alt1 installed
WARNING: icewm-light uses obsolete alternatives interface
<13>Nov 25 11:28:41 rpmi: design-icewm-1.0-alt5 installed
<13>Nov 25 11:28:41 rpmi: icewm-1:1.2.36-alt1 installed
$ hsh-run cat /etc/X11/icewm/menu |iconv -f cp1251
prog "Terminal" xterm xvt
menu "Сессия" "windowmanager_section" {
menu "Оконные менеджеры" "windowmanager_section" {
restart "IceWM" "icewm" icewm
}
}
menu "Терминалы" "terminals_section" {
prog "UXTerm" "xterm-color_48x48" uxterm
prog "XTerm" "xterm-color_48x48" xterm -name XTerm
}
$
> На примере
> /etc/menu-methods/xdg-desktop-entry-spec-apps
> эта проблема не видна, так как для .desktop файлов
> конечная кодировка (utf-8) задана заранее
> и не зависит от системной локали.
lang() всегда соответсвует LC_MESSAGES (или LC_ALL), и поэтому,
как правило, там всегда есть кодировка.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20081125/205414eb/attachment-0001.bin>
Подробная информация о списке рассылки Devel