В Vim в iTerm я часто сталкиваюсь с проблемами, связанными с переносами строк. Например, если у меня есть файл, содержащий страшные ^ M, большинство онлайн-уроков скажут, что для выполнения замены я использую обычный поиск и замену файла, например:
%s/^M/^J/g
Моя проблема в том, что я не могу ввести ^ M - когда я набираю ^ V ^ M (control+V control+M), то фактически вставляется ^ J. Результатом этой замены является "не обнаружено случаев". Я делаю что-то не так или VIM или iTerm могут быть неправильно настроены?
Некоторая дополнительная информация:
- Это также происходит в
/usr/bin/vi
в приложении Terminal, еслиset compatible
- Вот пример строки через hexdump, которая показывает разрывы строк после закрывающих квадратных скобок в виде шестнадцатеричного символа 0d, который, я считаю, равен ^ M
00000120 3c 2f 6c 6f 63 3e 0d 20 20 3c 2f 75 72 6c 3e 0d |</loc>. </url>.|