LINUX.ORG.RU
ФорумGames

Не работает ввод русских символов, wine

 , ,


0

1

Шалом ЛОР!

Русские символы отображаются, но ввод не работает, с английским все впрорядке. Дистрибутиво-специфичное, в круксе локали выпиливают, но в порте вина я не наблюдаю упоминания о локалях. Чего этой падлюке не хватает?

Установка виндовс шрифтов не помогает, устанавливал и из портов и через winetricks.

Быть добру!


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

Текущая. Пока выглядит так словно у вас какая-то C кодировка. Обычно с ней такое.

$LANG и $LC_ALL покажите

vbcnthfkmnth123 ★★★★★
()
Последнее исправление: vbcnthfkmnth123 (всего исправлений: 2)
Ответ на: комментарий от coceg

Я рекомендую вам одну кодировку использовать везде типа как у меня

bash-5.1$ locale
LANG=en_US.UTF-8
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=
И не используйте кодировку C. При такой конфигурации у меня описанных вами проблем не наблюдаю, следовательно советую вам такое решение вашей проблемы.

И пересоберите все пакеты, у которых отключена поддержка локалей. Все пакеты.

vbcnthfkmnth123 ★★★★★
()
Последнее исправление: vbcnthfkmnth123 (всего исправлений: 1)
Ответ на: комментарий от vbcnthfkmnth123

у мну в круксе locale вот что выводит:

LANG=en_US.UTF-8
LC_CTYPE="C.UTF-8"
LC_NUMERIC="C.UTF-8"
LC_TIME="C.UTF-8"
LC_COLLATE="C.UTF-8"
LC_MONETARY="C.UTF-8"
LC_MESSAGES="C.UTF-8"
LC_PAPER="C.UTF-8"
LC_NAME="C.UTF-8"
LC_ADDRESS="C.UTF-8"
LC_TELEPHONE="C.UTF-8"
LC_MEASUREMENT="C.UTF-8"
LC_IDENTIFICATION="C.UTF-8"
LC_ALL=C.UTF-8
как исправить?

teod0r ★★★★★
()
Ответ на: комментарий от teod0r

export LC_ALL=en_US.UTF-8 и забить это например в ~/.bashrc По крайней мере у меня похоже и работает

bash-5.1$ cat ~/.bashrc
# ~/.bashrc
# The individual per-interactive-shell startup file.

# Source global definitions.
if [ -r /etc/bashrc ]; then
        . /etc/bashrc
fi

# Define user specific aliases and functions.
export LANG=en_US.UTF-8

vbcnthfkmnth123 ★★★★★
()
Последнее исправление: vbcnthfkmnth123 (всего исправлений: 4)
Ответ на: комментарий от teod0r

может, можно как-то глобально сделать?

Можно, но я на практике я это не делал. Если теоретически, то можно точно также переопределить переменную LC_ALL, но не для локального юзера а глобально в баше( /etc/bashrc ).

vbcnthfkmnth123 ★★★★★
()
Последнее исправление: vbcnthfkmnth123 (всего исправлений: 1)
Ответ на: комментарий от teod0r

Да, я не использую эту переменную. Однако её проще всего использовать, потому что она переопределит все сразу

подробности - https://wiki.archlinux.org/title/Locale_(Русский)

vbcnthfkmnth123 ★★★★★
()
Последнее исправление: vbcnthfkmnth123 (всего исправлений: 1)
Ответ на: комментарий от vbcnthfkmnth123

хочу понять, почему у меня locale везде, кроме LANG по-умолчанию C.UTF-8.
Откуда он дефолт берёт? Как сделать везде это «по-умолчанию» en_US.UTF-8?
Возможно, я раньше делал C.UTF-8, или так и должно быть по дефолту?

# strace -fy -- locale
https://sebsauvage.net/paste/?9bda5952ed8ddf75#2QxwJvVIbn41hCOkNYW6g1Z4ya4I7q...

teod0r ★★★★★
()
Последнее исправление: teod0r (всего исправлений: 1)
Ответ на: комментарий от teod0r

Я занимался настройкой локалей больше чем полгода назад, так что не могу подсказать по подробностям. Советую начать с прочтения той статьи на которую я кинул ссылку выше

vbcnthfkmnth123 ★★★★★
()
Последнее исправление: vbcnthfkmnth123 (всего исправлений: 1)
Ответ на: комментарий от vbcnthfkmnth123

тока что посмотрел в дефолтном окружении, там после редактирования /etc/locale.gen (оставил раскомментированной тока строку en_US.UTF-8 UTF-8) и после выполнения locale-gen:

# locale                                                              
LANG=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=
значит у я себя дефолт как-то менял на C.UTF-8.

может, ещё какая команда нужна? кто подскажет?

статью просмотрел.
прописал в /etc/locale.conf:
LANG=ru_RU.UTF-8
LC_MESSAGES=en_US.UTF-8
выполнил locale-gen
перезашёл (это chroot)
# locale
LANG=
LC_CTYPE="C.UTF-8"
LC_NUMERIC="C.UTF-8"
LC_TIME="C.UTF-8"
LC_COLLATE="C.UTF-8"
LC_MONETARY="C.UTF-8"
LC_MESSAGES="C.UTF-8"
LC_PAPER="C.UTF-8"
LC_NAME="C.UTF-8"
LC_ADDRESS="C.UTF-8"
LC_TELEPHONE="C.UTF-8"
LC_MEASUREMENT="C.UTF-8"
LC_IDENTIFICATION="C.UTF-8"
LC_ALL=C.UTF-8

teod0r ★★★★★
()
Ответ на: комментарий от coceg

crux разве читает /etc/locale.conf ?

походу, нет

добавляй в ~/.bash_profile или ~/.profile

добавить то я могу. хочу разобраться на системном уровне, почему у меня остаётся C.UTF-8, значит я как-то менял этот дефолт. значит как-то можно этот дефолт настроить...

teod0r ★★★★★
()