я вижу
альтернативный текст http://files.getdropbox.com/u/175564/fileformat-problem.png
где у меня есть ^M
и ^[
в разных местах. Первый кажется вводом, а второй - концом / началом строки.
Я хотел бы убрать фиолетовые символы, чтобы я мог лучше читать файл журнала.
:set fileformats=unix,dos,mac
:e
но я получаю тот же результат.
Как правильно определить кодировку / формат файла?
^[
это еще одно представление для Escape
(нажатие Ctrl- [то же самое, что нажатие клавиши ESC - карат представляет собой управляющую клавишу). Это начало цветовых последовательностей ANSI. Я не думаю, что vim будет отображать эти цвета (если нет фильтра, который их обрабатывает).
Есть плагин для vim
называется AnsiEsc который отобразит результаты цветовых последовательностей ANSI в файле. Чтобы установить этот плагин, вам необходимо установить Вимбол плагин в первую очередь. Чтобы взять полный преимущество AnsiEsc, вам нужно перекомпилировать vim
с патчем, описанным на странице AnsiEsc.
Вы должны установить форматы файлов до загрузки файла (или в вашем файле .vimrc). Он не применит его к уже загруженному файлу.
В качестве альтернативы вы можете запустить s / \ ^ M // g и s / \ ^ [// g в vi, чтобы удалить недопустимые символы, но это не решит проблему с обработкой файлов. Вы знаете, какую кодировку использует файл? Вы можете угадать, используя file
и он предоставит вам такую информацию, как: "ASCII text, with CRLF line terminators
"
НОТА: Чтобы ввести "^ M" как "CTRL-V CTRL-M"
если это вариант, вы можете попробовать dos2unix (и его партнер по преступлению unix2dos)