У меня есть проблема, читая файлы, названные на арабском языке. Когда я был на Ubuntu с Единицей, она могла считать их, но когда я использую KDE, они не могут, если я не переименовываю их в латинских символах. Я считал некоторые решения, которые я нашел, как Установка арабского пакета языка или этого ряда команд:
~# echo ar__AR.UTF8 >> /var/lib/locales/supported.d/local
~# more /var/lib/locales/supported.d/local
fr_FR.UTF-8 UTF-8
en_US.UTF-8 UTF-8
ru_RU.UTF-8 UTF-8
ar__AR.UTF8
~# sudo dpkg-reconfigure locales
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = "en:ar:fr:en",
LC_ALL = (unset),
LC_PAPER = "en_DZ.UTF-8",
LC_ADDRESS = "en_DZ.UTF-8",
LC_MONETARY = "en_DZ.UTF-8",
LC_NUMERIC = "en_DZ.UTF-8",
LC_TELEPHONE = "en_DZ.UTF-8",
LC_IDENTIFICATION = "en_DZ.UTF-8",
LC_MEASUREMENT = "en_DZ.UTF-8",
LC_TIME = "en_DZ.UTF-8",
LC_NAME = "en_DZ.UTF-8",
LANG = "en_DZ.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Generating locales...
ar_AE.UTF-8... done
ar_BH.UTF-8... done
ar_DZ.UTF-8... done
ar_EG.UTF-8... done
ar_IN.UTF-8... done
ar_IQ.UTF-8... done
ar_JO.UTF-8... done
ar_KW.UTF-8... done
ar_LB.UTF-8... done
ar_LY.UTF-8... done
ar_MA.UTF-8... done
ar_OM.UTF-8... done
ar_QA.UTF-8... done
ar_SA.UTF-8... done
ar_SD.UTF-8... LC_MONETARY: value of field `int_curr_symbol' does not correspond to a valid name in ISO 4217
LC_ADDRESS: numeric country code `736' not valid
failed
ar_SY.UTF-8... done
ar_TN.UTF-8... done
ar_YE.UTF-8... done
Error: Bad entry 'ar__AR.UTF8 '
en_AG.UTF-8... done
en_AU.UTF-8... done
en_BW.UTF-8... done
en_CA.UTF-8... done
en_DK.UTF-8... done
en_GB.UTF-8... done
en_HK.UTF-8... done
en_IE.UTF-8... done
en_IN.UTF-8... done
en_NG.UTF-8... done
en_NZ.UTF-8... done
en_PH.UTF-8... done
en_SG.UTF-8... done
en_US.UTF-8... done
en_ZA.UTF-8... done
en_ZM.UTF-8... done
en_ZW.UTF-8... done
fr_BE.UTF-8... done
fr_CA.UTF-8... done
fr_CH.UTF-8... done
fr_FR.UTF-8... done
fr_LU.UTF-8... done
ru_RU.UTF-8... up-to-date
Generation complete.
Как я могу решить эту проблему? Я не хочу проходить свои файлы и менять их имена или возвращаться к Единице, мне нравится KDE.
У Вас есть недопустимый набор имени локали - нет такой вещи как "en_DZ.UTF-8" - который заставляет Вашу систему отступить к non-UTF-8 "C" локаль. Это, вероятно, что вызывает Вашу проблему.
я не использую Kubuntu сам, но необходимо открыть GUI для настроек языка. Где-нибудь там Вы, вероятно, выбрали Алжир как страну. Получить допустимое имя локали, изменение это к, например, Соединенные Штаты или Соединенное Королевство.
Следующий необходимо лучше удалить ту ошибочную строку в /var/lib/locales/supported.d/local
:
sudo sed -i '/ar__AR/d' /var/lib/locales/supported.d/local
Тогда выходят из системы и входят в систему снова.
Наконец повторно создают Вашу локаль:
sudo locale-gen --purge
На этот раз вывод должен быть чистым из сообщений об ошибках за исключением тех о LC_MONETARY и LC_ADDRESS в ar_SD.UTF-8.