[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: О категориях




> >   Хм.. Странный какой-то аргумент.
> > - Какие проблемы с чтением даты?
> 
> Большие. Дело в том, что почти все пишут ее посредством strftime,
> а читают чем бог на душу положит, но только не strptime.

  Это не противоречит тому, что я написал.
  Если программа (точнее - ее автор) пишет "локале-зависимым" вызовом,
а читает чем-то другим, то ... он сам себе буратино.

  Если ему явно нужна "обратная конвертируемость" пусть _явно_ указывает,
что setlocale(LC_TIME, "C").
  Если он "забыл" это сделать, то последствия не хуже и не лучше, чем
в случае когда автор "забывает" setlocale(LC_CTYPE, "") для иксовых
приложений. 

  Кстати, если есть portable character set, то неплохо было бы иметь
и portable time format. И использовать его в таких вот случаях.

> Уже стало практически стандартом, что читающие дату понимают
> всяческие now + 1 day и тому подобные тонкости. Совместить это со
> strptime непонятно как. 

  Ну так, а пишет такое strftime?
  Тоже - или "ручками" или своя самописанная процедурка.

> >    - если она написала дату по LC_TIME, то и прочитать должна так же
> Это было бы хорошо если бы не... А если конфигурационный файл живет в
> home, который кроссмонтируется на системы с разными локалями, скажем
> Linux с koi8 и hp/ux с iso.

  Это вообще трудный случай. Проблемы будут, например, у тех, кто пользуется
обычными "иксовыми ресурсами" и захочет "лейблы" по русски подписать.
  Кстати, вот для Xt'ишных приложений можно делать "локале-зависимые"
app_defaults (мне на это Алексей "глаза открыл" :-).
  Но при записи программой в конфиг - это еще хуже может получиться. :(

> >    - если программа хранит где-то дату, пусть пишет ее в любом самописном
> > формате, вывод по locale только для human readable
> А конфигурационный файл как раз тот случай, когда оно должно быть и
> human-readable (и writable) и machine-readable.

  А "самописаный" может быть и human readable/writable. :-)
  И заодно - portable. :-)

-- 
 Ivan U. Pascal         |   e-mail: pascal@tsu.ru
   Administrator of     |   Tomsk State University
     University Network |       Tomsk, Russia