The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
mc и LC_ALL, !*! Eugene, 23-Май-16, 13:30  [смотреть все]

Привык пользоваться в mc английским интерфейсом (удобнее пользоваться горячими клавишами, а не меню).
Для этого всегда вызываю mc так:

LC_ALL=en_US.UTF-8 mc

До последнего времени все было OK. Но сегодня меня ждал облом. Вызываю из-под обычного юзера как всегда, какое-то время работаю, нажимаю горячую клавишу, и -- абзац. Смотрю на экран -- там русский интерфейс. Проверяю из-под root'а -- там все OK.
Видимо какое-то обновление сломадо привычное поведение.
Как победить??
Система -- RFRemix-23.

  • mc и LC_ALL, !*! Аноним, 13:56 , 23-Май-16 (1)
    С другими программами всё нормально?
    • mc и LC_ALL, !*! Eugene, 14:08 , 23-Май-16 (2)
      > С другими программами всё нормально?

      проверил с

      LC_ALL=en_US.UTF-8 dnf --help

      та же петрушка: под юзером -- русский, под root'ом -- английский.

      • mc и LC_ALL, !*! Hawk, 14:18 , 23-Май-16 (3)
        >> С другими программами всё нормально?
        > проверил с
        > LC_ALL=en_US.UTF-8 dnf --help
        > та же петрушка: под юзером -- русский, под root'ом -- английский.

        А en_US.UTF-8 собрана? Может нет такой локали, а для рута по умолчанию прописана англ.?
        собери localedef -c -i en_us -f UTF-8 en_US.UTF-8
        а если попробовать
        LC_ALL=C mc ?

        • mc и LC_ALL, !*! Eugene, 14:25 , 23-Май-16 (4)
          > LC_ALL=C mc ?

          Спасибо, работает!!!

        • mc и LC_ALL, !*! Eugene, 15:32 , 23-Май-16 (5)
          > а если попробовать
          > LC_ALL=C mc ?

          Так не отображаются русские имена файлов,
          но вот так:
          LC_MESSAGES=C mc
          Все работает как надо.

          Еще раз спасибо за помощь.

        • mc и LC_ALL, !*! Eugene, 14:13 , 25-Май-16 (6)
          > собери localedef -c -i en_us -f UTF-8 en_US.UTF-8

          Не помогло
          localedef -c -i en_US -f UTF-8 en_US.UTF-8

          Проходит без сообщений об ошибке.
          После этого
          locales -a | grep -i en_us
          выдает:

          en_US
          en_US.iso88591
          en_US.iso885915
          en_US.utf8

          Как видите, en_US.UTF-8 в списке отсутствует.
          en_US.utf8 для пользователя также не срабатывает.

          Хоть и нашел обходной путь с LC_MESSAGES=C, но хочется разобраться, как все-таки должно работать и почему перестало.

          Hawk, если Вас не очень затруднит, дайте ссылку, где толково описана работа с локалями (на русском или на английском -- вс равно).
          Мне не удалось найти толкового описания.

          • mc и LC_ALL, !*! lavr, 08:37 , 26-Май-16 (7)
            google search?!

            кто Вас научил использовать LC_ALL для задания locale?
            LC_ALL переопределяет все переменные и обычно используется для отладочных действий.


            • mc и LC_ALL, !*! Eugene, 10:19 , 26-Май-16 (8)
              > google search?!

              У Google'а спрашивал. Нашел много интересного (например http://stephane.lesimple.fr/blog/2010-04-29/fixing-a-locale-...).
              Но не нашел вразумительного описания, как строится работа с локалями.
              В частности, мне непонятно, почему, хотя в системе установлена локаль ru_RU.UTF-8, команда
              locale -a | grep ru_RU
              дает вывод:
              ru_RU
              ru_RU.iso88595
              ru_RU.koi8r
              ru_RU.utf8

              в котором нет
              ru_RU.UTF-8

              Я не просил растолковать мне все. Я хотел, чтобы меня ткнули носом в источник, где это толково описано.

              > кто Вас научил использовать LC_ALL для задания locale?
              > LC_ALL переопределяет все переменные и обычно используется для отладочных действий.

              Это я придумал сам, после того, как меня достало поведение горячих клавиш в русской локали. И использовал я этот прием для единственной программы -- mc. Этот прием давал мне именно тот результат, который мне был нужен. Если бы я нашел более ГРАМОТНОЕ решение, я бы непременно им воспользовался.

              • mc и LC_ALL, !*! lavr, 13:49 , 26-Май-16 (9)
                >[оверквотинг удален]
                > ru_RU.UTF-8
                > Я не просил растолковать мне все. Я хотел, чтобы меня ткнули носом
                > в источник, где это толково описано.
                >> кто Вас научил использовать LC_ALL для задания locale?
                >> LC_ALL переопределяет все переменные и обычно используется для отладочных действий.
                > Это я придумал сам, после того, как меня достало поведение горячих клавиш
                > в русской локали. И использовал я этот прием для единственной программы
                > -- mc. Этот прием давал мне именно тот результат, который мне
                > был нужен. Если бы я нашел более ГРАМОТНОЕ решение, я бы
                > непременно им воспользовался.

                http://www.sensi.org/~alec/locale/index.html




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру