Краткий ответ - открыть файл в Vim, затем набрать « :set fileformat=unix
» и записать файл. С этого момента Vim должен обрабатывать файл как формат файла Unix и использовать только символы новой строки вместо возврата каретки + перевода строки.
Длинный ответ заключается в том, что это иногда не работает, потому что когда вы открываете файл в Vim, вы видите фактические символы ^ M в конце большинства строк. В этом случае это может быть по двум причинам:
- Скорее всего, он был изначально сохранен в формате файла DOS, а затем "поврежден" другим редактором, который предположил, что может обрабатывать его как формат Unix без преобразования, и оставил несколько строк без окончания строки DOS. В этом случае вы должны просто сделать что-то вроде
:%s/\%x0d$//g
затем написать.
- Файл имеет правильный формат файла DOS, но Vim не распознает этот факт. Это, вероятно, означает, что ваша опция 'fileformats' установлена неправильно. Чтобы узнать больше об этом, смотрите "
:help 'fileformats'
" (одинарные кавычки являются частью команды help).
Наконец, если вы используете Vim на компьютере с Windows, вам может потребоваться изменить упомянутую опцию 'fileformats' на "unix, dos" в вашем ~/_vimrc
вместо значения по умолчанию "dos, unix", которое установлено в DOS/ Среды Windows. Это заставит Vim создавать новые буферы в формате Unix вместо формата DOS. (Опять же, обратитесь к справке за подробностями.)