Bug 2657 - Сообщения, отличные от ASCII, выводятся вопросами.
: Сообщения, отличные от ASCII, выводятся вопросами.
Status: CLOSED WONTFIX
: Sisyphus
(All bugs in Sisyphus/fortune-mod)
: unstable
: all Linux
: P4 minor
Assigned To:
:
:
:
:
:
  Show dependency tree
 
Reported: 2003-06-11 06:44 by
Modified: 2009-05-10 09:31 (History)


Attachments


Note

You need to log in before you can comment on or make changes to this bug.


Description From 2003-06-11 06:44:57
Сообщения, отличные от ASCII, выводятся вопросами.
В предыдущей версии такого не было.
---

---
[<a href="mailto:black@black" target="_new">black@black</a> black]$ rpm -q
fortune-mod
fortune-mod-1.0-ipl33mdk
[<a href="mailto:black@black" target="_new">black@black</a> black]$ fortune
--version
fortune: invalid option -- -
fortune-mod version 9708
fortune [-afilosw] [-m pattern] [-n number] [ [#%] file/directory/all]
[<a href="mailto:black@black" target="_new">black@black</a> black]$ fortune
~/origin
... ? ????? ?? ?? ???? ??????????
[<a href="mailto:black@black" target="_new">black@black</a> black]$
LC_ALL=\&quot;ru_RU.KOI8-R\&quot; fortune ~/origin
... ?? ????, ????, ?????????
[<a href="mailto:black@black" target="_new">black@black</a> black]$ LC_ALL=C
fortune ~/origin
... ???? ? ???????? - ??????? ?????.
------- Comment #1 From 2003-06-11 09:52:48 -------
Ну это как бы не баг, а фича. fortune-mod &gt; 1.0-ipl33mdk думает что все
файлы данных в кодировке UTF-8 и перед выводом на экран перекодирует в текущий
CODESET.

Но наверно правильней будет сделать это конфигурабельным...
------- Comment #2 From 2003-06-11 09:52:48 -------
Ну это как бы не баг, а фича. fortune-mod &gt; 1.0-ipl33mdk думает что все
файлы данных в кодировке UTF-8 и перед выводом на экран перекодирует в текущий
CODESET.

Но наверно правильней будет сделать это конфигурабельным...
------- Comment #3 From 2003-12-01 03:12:19 -------
Надо подумать, как решить эту проблему красиво.
------- Comment #4 From 2005-06-20 12:46:04 -------
Не вижу проблемы. Файлы должны быть в UTF-8 и точка. 
Править тут в fortune нечего. 
------- Comment #5 From 2005-06-21 10:06:56 -------
А проблема не в этом.  Кроме кодировки есть ещё такое понятия как "язык".  Мне
например будет немного неинтересно читать фортунки на украинском или
белорусском
языке, потому как я их просто не знаю.  Должно быть что-то вроде:

/usr/share/games/fortune/
/usr/share/games/fortune/off/
/usr/share/games/fortune/ru/
/usr/share/games/fortune/ru/off/
/usr/share/games/fortune/uk/
/usr/share/games/fortune/uk/off/

и так далее.  И выбирать нужные каталоги в зависимости от LC_MESSAGES или опции
специального вида.  Как портабельно вышеплять язык из локали я не знаю, SUSv3
никак не ограничивает формат имени.
------- Comment #6 From 2005-06-21 22:43:11 -------
Как это? Язык всегда до первого подчёркивания (или конца строки) 
ru в ru_RU 
Идея замечательная - внести зависимость от языка. Но если я всё же хочу читать 
и белорусские тоже? 

И как минимум всё равно надо отделить данные от программы и не таскать 
английский за собой. Потому что планы - ещё совсем не скоро. 

------- Comment #7 From 2005-06-22 09:19:55 -------
(In reply to comment #6)
> Как это? Язык всегда до первого подчёркивания (или конца строки) 
> ru в ru_RU
А нету по стандарту никакого подчёркивания.  Название локали может быть
произвольным, главное чтобы libc это поддерживала.  Наверно таки сделаю по
первым двум буквам.

> Идея замечательная - внести зависимость от языка. Но если я всё же хочу читать 
> и белорусские тоже?
$LANGUAGE или ещё какая пересенная специального вида типа $FORTUNE_LANG или
опция специального вида.
------- Comment #8 From 2005-06-23 01:47:38 -------
(In reply to comment #7) 
> А нету по стандарту никакого подчёркивания.  Название локали может быть 
> произвольным, главное чтобы libc это поддерживала.  Наверно таки сделаю по 
> первым двум буквам. 
Да, тем более что других вариантов мне, например, не встречалось. 
По поводу локали я придерживаюсь такого формата: 
 * locale in form language[_territory][.charset][@modifier} 
 * where language is an ISO 639 language code, territory 
 * is an ISO 3166 country code, and codeset is a character set or encoding 
 * identifier like ISO-8859-1 or UTF-8 
 
> $LANGUAGE или ещё какая пересенная специального вида типа $FORTUNE_LANG или 
Мне кажется, LANGUAGE вполне подойдёт для начала. 
 
 
------- Comment #9 From 2008-02-15 22:48:03 -------
Как дела с фортунками по языкам? :)
------- Comment #10 From 2008-04-25 18:14:36 -------
Никак.  В этой помойке копаться просто противно.