Подтвердить что ты не робот

В Vim, как скрыть символы eol doc ^ M

в gvim для окон, если у меня есть текст с CRLF eol, тогда текст отобразит ^ M в конце каждой строки.

Как я могу "скрыть" этот специальный char с дисплея?

the: set nolist command "" не отклоняет его. Я в тупике.

ОБНОВЛЕНИЕ

Я сделал: set fileformats = unix, dos как список, но сначала он не работал. Я закрыл файл и снова открыл его, и он сработал. По умолчанию я установил файловые форматы только для значения unix. Спасибо за ответы.

4b9b3361

Ответ 1

Возможно, вы захотите установить fileformat на dos.

:ed ++ff=dos %

Ответ 2

Чтобы скрыть их:

:set fileformats=dos

Чтобы удалить их (чтобы впоследствии вы могли сохранить файл в виде файла unix):

:%s/\r//g

Ответ 3

Созыв в формате DOS или Unix раз и навсегда, конечно, предпочтительный подход, иногда некоторые сотрудники просто не заботятся о правильном управлении исходными кодами, чтобы заставить их редакторов вести себя.

В этих отчаянных случаях вместо того, чтобы полностью конвертировать файл (в результате файл полностью переписан сам по SCM, рендеринг функции "вины" бесполезен), я счел предпочтительным просто притвориться, что проблема не существовать. Если компилятор размещается, и PHP, во что бы то ни стало, вы можете иметь смешанный EOL файл, выглядящий отлично, с помощью следующей команды:

:match Invisible /\r$/

Или в новых версиях VIM 7.4 +

:match Ignore /\r$/

Чтобы ухудшить ситуацию, большинство графических редакторов не заканчивают текстовый файл с помощью новой строки, и когда файл заканчивается новой строкой, они показывают пустую строку внизу. Поскольку это немного раздражает, большинство людей удалит эту пустую строку, что приведет к созданию смешанного файла EOL (и ужасных ^ Ms, показанных в Vim), если формат файла был DOS.

Если кто-то знает, как заставить Eclipse или NetBeans почитать окончание новой строки, не показывая пустую последнюю строку (как это делает Уим), пожалуйста, поделитесь своими знаниями, и вы сделаете кодер счастливым здесь.; -)

Ответ 4

Формат файла обычно автоматически определяется. В вашем файле должны быть смешанные строки Unix и DOS/Windows.

попробуйте очистить его (где "clean" = unix format):

% tr -d '\015' < old.file > new.file

Ответ 5

:0,$ s/<ctrl-v><ctrl-m>//g
:set ff=dos

Ответ 6

используйте команду:

:1,$ s/^v^M/ /g

Ответ 7

Я хотел бы указать, что если вы используете полномасштабный VIM (по крайней мере, на моем блоке ubuntu 9.10), он "делает то, что вы хотите" и автоматически скрывает его, но запас vi (и vim-tiny) НЕ спрячьте ^ М. Если вы выполняете минимальную установку (или установку сервера), вы получаете только vi и vim-tiny. Исправление, которое я обнаружил, это установить правильный vim (apt-get install vim) в ящике ubuntu. Надеюсь, что это поможет кому-то, кто приходит по этой теме по той же причине, что и я: -D