meld показывает вывод в нечитаемом алфавите (японский / китайский?)

Я использую meld для визуализации различий между двумя файлами. meld показывает вывод diff в... что-то вроде японского или китайского?

Есть идеи, что может случиться? Проблема локали? Что странно, что при использовании diff или же colordiff в терминале они работают отлично!

Спасибо!

3 ответа

Та же проблема: кодировка файла не определена правильно.

В моем случае это связано с настройками meld для "обнаружения кодировок".

Проверить с:

$ gsettings get org.gnome.meld detect-encodings
['utf8']

Только utf8 обнаружен.

Чтобы обойти эту проблему, добавьте 'latin1' или любая другая кодировка вашего файла:

$ gsettings set org.gnome.meld detect-encodings "['utf8','latin1']"

Краткое продолжение к последнему ответу:

Я должен был добавить цитаты в [] часть:

gsettings set org.gnome.meld detect-encodings "['utf8','latin1']"

выполняя его в терминале в Ubuntu 16.04

Я уверен, что это проблема кодирования. Ваш терминал, вероятно, в UTF-8 и файл ISO. Это новая проблема уже в 16.04, я думаю, что это может произойти и в 15.04, но я могу подтвердить, что это не так в 12.04.

Попробуйте проверить свой терминал, в котором вы работаете, набрав "locale". и вы должны получить что-то вроде этого:

$ locale
LANG=en_US.UTF-8
LANGUAGE=en_US
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=

Затем введите " file " для каждого из ваших файлов и убедитесь, что они соответствуют вашему терминалу.

Кстати, у меня возник ряд проблем с кодировкой между UTF-8 и ISO, которые действительно никогда не должны происходить в 16.04.

Для меня работало iconv для каждого файла:

iconv -f ISO-8859-15 -t UTF-8 file_1.txt >file_1.tmp;
iconv -f ISO-8859-15 -t UTF-8 file_2.txt >file2.tmp;
mv file_1.tmp file_1.txt;
mv file_2.tmp file_2.txt;
meld file_1 file_2
Другие вопросы по тегам