Содержание
Описание проблемы
Ubuntu по умолчанию использует кодировку текстовых файлов UTF-8, однако некоторые операционные системы используют другие кодировки (например, русская версия Microsoft Windows использует CP-1251). Из-за разницы в кодировках могут возникнуть проблемы при открытии текстовых файлов в редакторе Gedit — они будут нечитаемыми. Данная статья предлагает несколько простых способов решения этой проблемы.
Настройка Gedit на автоопределение кодировки
Gedit может автоматически определить нужную кодировку. Для этого его нужно немного настроить.
Есть 3 варианта:
-
Для редактора dconf-editor1)
-
Для редактора gconf-editor2)
-
Способ, в котором нужно выполнить всего-лишь одну команду в Терминале.
Вариант 1.
Запускаем dconf-editor и переходим в
/org/gnome/gedit/preferences/encodings/

Редактируем ключ auto_detected3), вписывая нужную нам кодировку
WINDOWS-1251
Пример строки
['UTF-8', 'WINDOWS-1251', 'CURRENT', 'ISO-8859-15', 'UTF-16']
Вариант 2.
Выполните в терминале команду:
gconf-editor /apps/gedit-2/preferences/encodings
Откроется Редактор Конфигурации GNOME. В нем откройте для редактирования ключ auto_detected4).
В появившемся окне редактирования переместите нужную вам кодировку вверх, так, чтобы она находилась сразу после UTF-8. Нажмите OK и закройте редактор.

Вариант 3.
Выполните в терминале команду:
gsettings set org.gnome.gedit.preferences.encodings auto-detected "['UTF-8', 'WINDOWS-1251', 'CURRENT', 'ISO-8859-15', 'UTF-16']"
Для Ubuntu 16.04:
gsettings set org.gnome.gedit.preferences.encodings candidate-encodings "['UTF-8', 'WINDOWS-1251', 'KOI8-R', 'CURRENT', 'ISO-8859-15', 'UTF-16']"
Для Ubuntu Mate 16.04:
gsettings set org.mate.pluma auto-detected-encodings "['UTF-8', 'WINDOWS-1251', 'KOI8-R', 'CURRENT', 'ISO-8859-15', 'UTF-16']"
Данный способ является самым быстрым.
Теперь, если вы откроете файл с кодировкой WINDOWS-1251 — он будет правильно отображаться в Gedit.
Смена кодировки открытого файла
С помощью системы плагинов можно добавить возможность выбора кодировки уже открытого файла.
-
Если для распаковки используется стандартный менеджер архивов переименуйте архив в из encoding.tar.gz в encoding.tar (проверялось в Ubuntu 8.10 и 10.4)
-
Распаковываем его в ~/.local/share/gedit/plugins (если такой папки нет, то её нужно создать)
-
Запускаем Gedit и включаем в нём модуль «Кодировка» (Правка→Параметры→Модули)
После этого в главном меню Файл появляется пункт «Encoding», который позволяет менять кодировку в уже открытом документе.
Ссылки
I can not display file coded with GBK.
In gconf-editor of gnome 3.2 , I can not find encoding item of gedit .
How to set it ?
thanks
asked Jan 24, 2012 at 8:39
waterloo2005waterloo2005
2,0078 gold badges31 silver badges41 bronze badges
1
I don’t have a file encoded in GBK to test the solutions, but do try them.
Option 1: Run gedit and then open the file:
-
run gedit
-
click open
-
select in the encoding combo «add» and add GB18030 (or GBK)
-
select that encoding in the combo
-
select the file
Option 2:
-
install and run
gconf-editor -
Find /apps/gedit-2/preferences/encoding key «auto_detected» and set it to:
[CURRENT,GB18030,GBK,GB2312,UTF-8,UTF-16]
Remember to backup the previous value of auto_detected!!
Option 3:
Using dconf (the «newer» gconf, used in ubuntu)
dconf read /org/gnome/gedit/preferences/encodings/auto-detected
Save the result (backup)!
dconf write /org/gnome/gedit/preferences/encodings/auto-detected "['CURRENT', 'GBK', 'GB18030', 'GB2312', 'UTF-8', 'UTF-16']"
Sources:
- https://bugs.launchpad.net/ubuntu/+source/gedit/+bug/819714
- https://bugzilla.redhat.com/show_bug.cgi?id=576047#c2
- http://ubuntuforums.org/showthread.php?t=1456308
- http://forum.ubuntu-gr.org/viewtopic.php?p=221205&http#p221205
To reset it to default:
a) use the option you backed up from dconf read command
or b) try:
dconf reset /org/gnome/gedit/preferences/encodings/auto-detected
answered Jan 24, 2012 at 10:43
Savvas RadevicSavvas Radevic
7,5932 gold badges36 silver badges47 bronze badges
1
If you want do it quick then install medit. All works from the box.
If you still want use gedit then you need do some work:
-
Set auto-detect
gsettings set org.gnome.gedit.preferences.encodings auto-detected "['UTF-8', 'GBK', 'CURRENT', 'ISO-8859-15', 'UTF-16']" -
Install plugin for manual choose encoding. Really useful, especially when auto-detect don’t detect encoding properly
«Change encoding» plugin for gedit v3
# Download plugin
mkdir -p /tmp/encoding
cd /tmp/encoding
wget https://aur.archlinux.org/packages/ge/gedit-encoding-plugin/gedit-encoding-plugin.tar.gz
tar -xzvf gedit-encoding-plugin.tar.gz
# Copy to plugins directory
mkdir -p ~/.local/share/gedit/plugins
cp /tmp/encoding/gedit-encoding-plugin/encoding.plugin /tmp/encoding/gedit-encoding-plugin/encodingpy.py ~/.local/share/gedit/plugins
# Remove /tmp/encoding
rm -Rf /tmp/encoding
Then run gedit. Choose Edit->Preferences->Plugins(tab)->Check «Encoding» checkbox. After you do that you can find «Encoding» in menu «File«
Plugin description:
https://aur.archlinux.org/packages/gedit-encoding-plugin/
Plugin for gedit v2. Same author as in plugin above:
http://bugzilla.gnome.org/attachment.cgi?id=108326 (this is .tgz ext, but be careful it is a tar only archive)
or plugin for gedit v2 by another author:
http://petrstepanov.wordpress.com/2010/09/29/gedit-encoding-plugin/
!!! plugin for gedit v2 has got tar.gz ext, but it is only a tar archive that is not gzipped…
answered Nov 23, 2014 at 20:45
Ubuntu 18.10 gconf-editor is removed. Use ‘dconf-editor’ as an instead.Or use command line tool ‘dconf’.
And ‘auto-detected’ is replaced by ‘candidate-encodings’ :
dconf write /org/gnome/gedit/preferences/encodings/candidate-encodings "['CURRENT', 'GBK', 'GB18030', 'GB2312', 'UTF-8', 'UTF-16']"
answered Dec 17, 2018 at 5:28
Открывая тестовый файл, который ранее был создан в Windows через программу Блокнот, вы скорее всего наткнетесь на проблему некорректного отображения русских символов в текстовом редакторе, используемом в Ubuntu по умолчанию (по умолчанию в Ubuntu используется редактор GEdit). К счастью, данную «проблему» легко решить. Ведь тут вся проблема, как вы, наверное, уже догадались, кроется всего-навсего в кодировке самого файла.
Стандарты кодировки и Microsoft
Давным-давно известно, что компания Microsoft «любит» использовать собственные стандарты, отказываясь при этом от общемировых, а если кто-то не хочет с этим фактом считаться, то Microsoft попросту это игнорирует. Но Microsoft может это себе позволить, будучи хоть и платной, но самой распространенной операционной системой в мире.
Яркий пример по установлению компанией Microsoft собственных стандартов — это пакет Microsoft Office, который включает в себя такие известные программы, как MS Word и MS Excel. Если пользователь не сможет открыть файл, созданный в одном из этих редакторов на используемой им операционной системе (например, Android, Linux или Mac OS X), то ему скорее всего это доставит огромные неудобства и в конечном счете заставит отказаться от использования операционной системы, но не от самого распространенного в мире формата текстовых и табличных документов.
При этом тут как бы отходит на второй план то факт, что формат файлов ODT линуксового Open Office в отличие от DOC и тем более DOCX является общепринятым. Мир не заставишь в одночасье отказаться от Windows, а значит, и от ее фирменного пакета Microsoft Office.
В случае с текстовым файлом Microsoft как всегда проигнорировала общепринятый стандарт кодировки символов UTF-8, используемый в операционной системе Ubuntu. Операционная система Windows по умолчанию сохраняет русский текст при использовании блокнота в кодировке Windows 1251, которая уже очень устарела. Вместо кодировки Windows 1251 сейчас принято использовать другую кодировку под названием Koi8-r.
Но поскольку кодировки Windows 1251 и Koi8-r похожи как близнецы, то редактор GEdit попросту не может распознать используемую в текстовом файле, сохраненном в Блокноте из под Windows, кодировку. Правда, эту проблему очень легко побороть — для этого нужно всего-навсего установить приоритеты кодировок в программе GEdit. Иначе говоря, нужно просто попросить GEdit вначале пробовать открыть файл в кодировке Windows 1251, а затем уже пробовать открытие в кодировке Koi8-r.
Для задания приоритета кодировок выполните запустите программу Терминал.
А затем наберите в Терминале команду, которая указана ниже:
gsettings set org.gnome.gedit.preferences.encodings auto-detected «[‘UTF-8’, ‘WINDOWS-1251’, ‘CURRENT’, ‘ISO-8859-15’, ‘UTF-16’]»
После успешного выполнения указанной выше команды ваш текстовый файл из Windows откроется без иероглифов в читабельном виде.
На этом все. Вопросы как всегда в комментариях.
Upd 24.01.2019
В Ubuntu 18.04 для изменения приоритета кодировок в текстовом редакторе GEdit необходимо выполнять в Терминале команду
Gedit gsettings set org.gnome.gedit.preferences.encodings candidate-encodings «[‘UTF-8’, ‘WINDOWS-1251’, ‘CURRENT’, ‘ISO-8859-15’, ‘UTF-16’]»
Еще материалы о Linux
Я не могу отобразить файл, закодированный с помощью GBK. В gconf-редакторе gnome 3.2 я не могу найти элемент кодировки gedit. Как это установить? спасибо
задан
24 January 2012 в 12:39
поделиться
3 ответа
Мне не закодировали файл в GBK для тестирования решений, но действительно пробую их.
Опция 1: Выполненные gedit и затем открывают файл:
-
выполненный gedit
-
нажмите открытый
-
выберите в комбинации кодирования, «добавляют» и добавляют GB18030 (или GBK)
-
выберите то кодирование в комбинации
-
выберите файл
Опция 2:
-
установите и выполненный
gconf-editor -
Найдите/apps/gedit-2/preferences/encoding ключ «auto_detected» и установите его на:
[CURRENT,GB18030,GBK,GB2312,UTF-8,UTF-16]
Не забудьте копировать предыдущее значение auto_detected!!
Опция 3: Используя dconf («более новый» gconf, используемый в человечности)
dconf read /org/gnome/gedit/preferences/encodings/auto-detected
Сохраните результат (резервное копирование)!
dconf write /org/gnome/gedit/preferences/encodings/auto-detected "['CURRENT', 'GBK', 'GB18030', 'GB2312', 'UTF-8', 'UTF-16']"
Источники:
- https://bugs.launchpad.net/ubuntu / + source/gedit / + ошибка/819714
- https://bugzilla.redhat.com/show_bug.cgi? id=576047#c2
- http://ubuntuforums.org/showthread.php?t=1456308
- http://forum.ubuntu-gr.org/viewtopic.php?p=221205&http#p221205
Сбрасывать его для установки по умолчанию: a) используют опцию, которой Вы создали резервную копию от команды чтения dconf
или попытка b):
dconf reset /org/gnome/gedit/preferences/encodings/auto-detected
ответ дан Savvas Radevic
24 January 2012 в 12:39
поделиться
Убран Ubuntu 18.10 gconf-editor. Вместо этого используйте dconf-editor. Или используйте инструмент командной строки dconf. И «автоопределение» заменяется «кодированием-кандидатом»:
dconf write /org/gnome/gedit/preferences/encodings/candidate-encodings "['CURRENT', 'GBK', 'GB18030', 'GB2312', 'UTF-8', 'UTF-16']"
ответ дан zhuhai
24 January 2012 в 12:39
поделиться
Если вы хотите сделать это быстро, установите medit . Все работы из коробки.
Если вы все еще хотите использовать gedit , вам нужно проделать определенную работу:
-
Установить автоопределение
gsettings set org.gnome.gedit.preferences.encodings auto-detected "['UTF-8', 'GBK', 'CURRENT', 'ISO-8859-15', 'UTF-16']" -
Установите плагин для ручного выбора кодировки. Действительно полезно, особенно когда автоопределение не может правильно определить кодировку
Плагин «Изменить кодировку» для gedit v3
# Download plugin
mkdir -p /tmp/encoding
cd /tmp/encoding
wget https://aur.archlinux.org/packages/ge/gedit-encoding-plugin/gedit-encoding-plugin.tar.gz
tar -xzvf gedit-encoding-plugin.tar.gz
# Copy to plugins directory
mkdir -p ~/.local/share/gedit/plugins
cp /tmp/encoding/gedit-encoding-plugin/encoding.plugin /tmp/encoding/gedit-encoding-plugin/encodingpy.py ~/.local/share/gedit/plugins
# Remove /tmp/encoding
rm -Rf /tmp/encoding
Тогда запустить гедит. Выберите Редактировать -> Предпочтения -> Плагины (вкладка) -> Проверить « Кодировка ». После этого вы можете найти « Кодировка » в меню « Файл »
Описание плагина: https://aur.archlinux.org/packages / gedit-encoding-plugin /
Плагин для gedit v2. Тот же автор, что и в плагине выше: http://bugzilla.gnome.org/attachment.cgi?id=108326 (это .tgz ext, но будьте осторожны, это архив только для tar) или плагин для gedit v2 другого автора: http://petrstepanov.wordpress.com/2010/09/29/gedit-encoding-plugin/
!!! Плагин для gedit v2 получил tar.gz ext, но это только tar-архив, который не распаковывается …
ответ дан sancelot
24 January 2012 в 12:39
поделиться






