Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
VeL
Зарегистрирован: 18.01.2006 Сообщения: 521 Откуда: Харьков
|
Добавлено: Чт Июн 18 2009 22:36 Заголовок сообщения: FreeBSD+английский язык и русские имена файлов |
|
|
Доброго времени суток господа!
Пытаюсь разобраться с локализацией под FreeBSD.
Вообщем по ходу расскажу что я делаю, что в итоге получаю и что хочу получить.
Устанавливаю ОС FreeBSD 7.2
в /etc/rc.conf настраиваю консоль
Код: | keymap="ru.koi8-r"
scrnmap="koi8-r2cp866"
font8x16="cp866b-8x16"
font8x14="cp866-8x14"
font8x8="cp866-8x8" |
в /etc/ttys настраиваю терминал
Код: | cons25 меняю на cons25r |
Далее для пользователя включаю локализацию (кодировку символов и регионязык)
Код: | #vipw
user:XXXXXXXXXX:0:0:russian:0:0:Charlie &:/root:/bin/csh |
соответственно для выше указанного параметра russian
в /etc/login.conf по умолчанию есть такие строки:
Код: | russian|Russian Users Accounts:\
:charset=KOI8-R:\
:lang=ru_RU.KOI8-R:\
:tc=default: |
Далее ребут
Логинимся под пользователем user
В итоге что получилось:
Русские символы в консоли работают
Вывод комманды date на русском языке
Сообщения об ошибках в консоли тоже на русском языке
Далее например монтирую флешку с фат разделом, с которой раньше работал под виндой. Естественно я знаю что все имена файлов винда писала в кодировке CP1251 поэтому монтирую флешку с перекодировкой так:
mount_msdosfs -Lru_RU.KOI8-R -DCP866 /dev/da0s1 /mnt
далее $ls /mnt
Файлы с русскими именами отображаются нормально
Все казалось бы хорошо, но
Я начал изучать английский и мне бы хотелось чтобы например вывод команды date был в английском формате а не в русском и также хотелось бы получат сообщения об ошибках тоже на английском а не на русском
Далее получается понятно, что нужно изменить регионязык для чего секцию в /etc/login.conf приводим к следующему виду (удаляем строку :lang=ru_RU.KOI8-R:\ которая переопределяет установленный по умолчанию регионязык с английского на русский(то что по умолчанию установлен английский, вывод сделан на основании того, что когда при установке минимальной конфигурации FreeBSD например комманда date делает вывод в английском формате а в файле /etc/login.conf получается таким образом его переопределение, если конечно я не ошибаюсь) ):
Код: | russian|Russian Users Accounts:\
:charset=KOI8-R:\
:tc=default: |
В результате этих действий я получаю вывод команды date и сообщения об ошибках в английском формате, НО:
$ls /mnt в русских названиях имен файлов показывает знаки вопросов: например так: ????? ?????????.txt
Тоесть получается что решил одно но при этом поламал другое
Уважаемые господа, подскажите как решить такую задачу?
Думаю много кто из вас в англоязычной FreeBSD монтирует виндовые флешки в которых могут попадаться русские имена, да и FreeBSD использует в качестве десктопа
Как обьединить эти две простые задачи в одну? _________________ Best regards |
|
Вернуться к началу |
|
|
vasstr
Зарегистрирован: 15.07.2008 Сообщения: 50
|
Добавлено: Чт Июн 25 2009 06:40 Заголовок сообщения: |
|
|
наверное будет достаточно
cp /usr/share/locale/en_US.ISO8859-1/LC_TIME /usr/share/locale/ru_RU.XXXX/LC_TIME |
|
Вернуться к началу |
|
|
C37
Зарегистрирован: 09.03.2005 Сообщения: 311
|
Добавлено: Сб Июн 27 2009 20:54 Заголовок сообщения: |
|
|
Unicode |
|
Вернуться к началу |
|
|
VeL
Зарегистрирован: 18.01.2006 Сообщения: 521 Откуда: Харьков
|
Добавлено: Вт Июн 30 2009 17:23 Заголовок сообщения: |
|
|
А можете показать как у вас эти настройки выполнены? _________________ Best regards |
|
Вернуться к началу |
|
|
butcher
Зарегистрирован: 18.04.2003 Сообщения: 467 Откуда: Киров
|
Добавлено: Вт Июл 21 2009 12:33 Заголовок сообщения: |
|
|
Определите переменные окружения LC_MESSAGES=C и LC_TIME=C, например в том же login.conf:
Код: |
russian|Russian Users Accounts:\
:charset=KOI8-R:\
:lang=ru_RU.KOI8-R:\
:setenv=LC_MESSAGES=C,LC_TIME=C:\
:tc=default:
|
_________________ Нет ничего невозможного... |
|
Вернуться к началу |
|
|
butcher
Зарегистрирован: 18.04.2003 Сообщения: 467 Откуда: Киров
|
Добавлено: Вт Июл 21 2009 12:34 Заголовок сообщения: |
|
|
Определите переменные окружения LC_MESSAGES=C и LC_TIME=C, например в том же login.conf:
Код: |
russian|Russian Users Accounts:\
:charset=KOI8-R:\
:lang=ru_RU.KOI8-R:\
:setenv=LC_MESSAGES=C,LC_TIME=C:\
:tc=default:
|
_________________ Нет ничего невозможного... |
|
Вернуться к началу |
|
|
VeL
Зарегистрирован: 18.01.2006 Сообщения: 521 Откуда: Харьков
|
Добавлено: Ср Июл 22 2009 21:30 Заголовок сообщения: |
|
|
butcher писал(а): | Определите переменные окружения LC_MESSAGES=C и LC_TIME=C, например в том же login.conf:
Код: |
russian|Russian Users Accounts:\
:charset=KOI8-R:\
:lang=ru_RU.KOI8-R:\
:setenv=LC_MESSAGES=C,LC_TIME=C:\
:tc=default:
|
|
А как можно узнать список всех этих подобных переменных? _________________ Best regards |
|
Вернуться к началу |
|
|
butcher
Зарегистрирован: 18.04.2003 Сообщения: 467 Откуда: Киров
|
Добавлено: Чт Июл 23 2009 08:18 Заголовок сообщения: |
|
|
VeL писал(а): |
А как можно узнать список всех этих подобных переменных? |
_________________ Нет ничего невозможного... |
|
Вернуться к началу |
|
|
|