Сразу скажу, что пишу кроссплатформенную программу, и не у нее, а у систем, в которых она используется есть проблема: перед запуском невозможно выставить для нее переменные среды.
Теперь про локализацию: я так понимаю, что необходимо использовать функции catopen, catclose и catgets (gettext не стандарт для всех систем, кроме Solaris и Linux). Есть несколько вопросов по применению POSIX-функций (я конечно могу опытным путем проверить их в Linux и HP-UX, но это не полный перечень платформ, которые хотелось бы поддерживать, вразумительной документации не нашел):
1. POSIX не определяет, где хранить каталоги (cat-файлы), т.е. catopen конечно читает NLSPATH, но, например, в Slackware Linux ни переменной NLSPATH, ни одного .cat файла я не обнаружил. Вопрос: куда программа по make install должна их забросить и что должна передавать в качестве первого параметра catopen?
2. Правильно ли будет (оч. хочется) сделать массив указателей типа char * и при старте программы заполнить его указателями через catgets? Ведь catgets с номером сообщения мало информативен для кода, да и обременяет программу каждый раз по catgets делать поиск (пусть даже по индексу) в каталоге.
3. К п.2 выше, живут ли значения catgets после очередного вызова catgets? Согласно man из HP-UX и Linux - живут.
4. Согласно man на catgets, сказано, что если catopen не нашел каталога (вернул -1), то будут использоваться значения по-умолчанию для C/POSIX. Правильно ли я понимаю, что через NLSPATH всегда должна быть доступна директория en (или какая? en_US? en_GB???) с локализацией на английском?
P.S. Гуглил, яндексил, читал стандарт, всё весьма противоречиво, кстати, очень ругают *BSD системы :-\


Ответ на:
комментарий
от zwon

Ответ на:
комментарий
от saper

Ответ на:
комментарий
от zwon

Ответ на:
комментарий
от zwon

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Новости GNU awk 4.0.0 (2011)
- Форум POSIX (2010)
- Форум POSIX (2006)
- Форум Локализация (2022)
- Форум Локализация (2009)
- Форум Локализация (2008)
- Форум Локализация (2008)
- Форум Локализация (2008)
- Форум локализация (2009)
- Форум локализация (2005)