Кодировки в текстовых файлах.
Коротенькая заметка по конвертированию текстовых файлов в utf8 в качестве памятки.
Доставшееся виндовое наследие в виде каких-то заметок, записок, рецептов, стихов и прочих текстовых документиков долго не давало мне покоя, из-за того, что хранилось оно в кодировке CP1251.
Чтобы спать спокойно, нужно все это перевести в utf8. Желательно легко, быстро и все сразу. Такой способ есть. Для этого нам понадобится программа enconv, входящая в пакет enca. Работать с ней до безобразия просто. Команда
enconv zametki.txt
автоматически определяет кодировку файла и конвертирует в родную кодировку локали с перезаписью файла.
Соответственно, чтобы сконвертировать все разом, нужно скомандовать примерно следующее:
find /home/user/ -name "*.txt" |enconv
и все станет великолепно. Файлы которые уже в utf8, enconv не трогает, они остаются без изменений.
Но все равно остается шанс столкнуться с файлом в ненавистной cp1251. С этим можно бороться двумя способами.
1. Поставить leafpad. Никаких особых достоинств типа подсветки синтаксиса или автодополнения кода у него нет, но зато он замечательно автоматически определяет кодировку файла и отображает его в читаемом виде. К тому же он достаточно легкий и быстрый.
2. Можно допилить стандартный гномовский gedit по инструкции, посоветованной мне товарищем Cucumber. Я попробовал, у меня все заработало.
Огромное спасибо коментаторам, с их подачи пост был практически полностью переписан.
Оригинал
http://triklozoid.blogspot.com/2008/11/blog-post.html