Решено: vim - кракозябры (получить читабельный текст)

и другие vi-подобные редакторы

Модератор: /dev/random

Аватара пользователя
changer0
Сообщения: 82
ОС: Debian lenny

Решено: vim - кракозябры

Сообщение changer0 »

Имеем текстовый файл с кракозябрами, созданный путем их копирования в блокнот в оффтопике и сохранения в юникод.
Надо получить читаемый текст в услвиях отсутствия интернета и iconv (есть только portable gvim и windows).
Открываем в gvim файл (:e ++enc=cp1251 file) и получаем проблему: текст можно прочитать, но после каждой буквы идет символ ^@ (это один символ - просто так отображается). Так что Hello, world превращается в H^@e^@l^@l^@o^@,^@ w^@o^@r^@l^@d^@.
Вопрос: как от него избавиться?
Пробовал :%s/[^[:print:]]//g, но русские буквы это тоже удаляет.
Автор благодарит алфавит за любезно предоставленные буквы ©
Спасибо сказали:

Аватара пользователя
/dev/random
Администратор
Сообщения: 5105
ОС: Gentoo

Re: Решено: vim - кракозябры

Сообщение /dev/random »

:s/^@//g
(где ^@ вводится как Ctrl+V, Ctrl+Space)
Спасибо сказали:

Аватара пользователя
Luinnar
Сообщения: 246
ОС: Solaris, Debian, Ubuntu

Re: Решено: vim - кракозябры

Сообщение Luinnar »

changer0 писал(а):
09.04.2010 08:28
путем их копирования в блокнот в оффтопике и сохранения в юникод.
Открываем в gvim файл (:e ++enc=cp1251 file)

Что-то не стыкуется, сохраняете в UTF, а открываете как CP-1251. Почему бы не открывать так же в UTF? (utf8, полагаю)
Спасибо сказали:

Аватара пользователя
/dev/random
Администратор
Сообщения: 5105
ОС: Gentoo

Re: Решено: vim - кракозябры

Сообщение /dev/random »

Luinnar писал(а):
09.04.2010 12:19
Что-то не стыкуется, сохраняете в UTF, а открываете как CP-1251. Почему бы не открывать так же в UTF? (utf8, полагаю)

Потому, что в оригинале это были кракозябры.

PS: А ещё можно, вместо удаления ^@, открыть в unicode (ucs-2be, если ^@ идут перед буквами, и ucs-2le, если после; впрочем, vim должен сам её распознать), сохранить в latin1, получится исправленный файл в cp1251
Спасибо сказали:

Аватара пользователя
changer0
Сообщения: 82
ОС: Debian lenny

Re: Решено: vim - кракозябры

Сообщение changer0 »

/dev/random писал(а):
09.04.2010 12:18
:s/^@//g
(где ^@ вводится как Ctrl+V, Ctrl+Space)

Спасибо. Помогло.
Автор благодарит алфавит за любезно предоставленные буквы ©
Спасибо сказали: