Visual Studio иногда говорит мне:
Окончания строк в следующих файлах не согласованы. Вы хотите нормализовать окончания строк?
Затем он дает мне раскрывающийся список с другими стандартами или чем-то вроде Windows, Mac, Unix и нескольких Unicode.
Что это значит и что произойдет, если я нажму Yes
?
visual-studio
line-endings
MetaGuru
источник
источник
git
. См. Также: stackoverflow.com/questions/170961/…Ответы:
Обычно это означает, что у вас есть строки, заканчивающиеся чем-то отличным от пары возврата каретки / перевода строки. Это часто происходит, когда вы копируете и вставляете веб-страницу в редактор кода.
Нормализация окончаний строки - это просто проверка соответствия всех символов окончания строки. Он не позволяет одной строке оканчиваться на
\r\n
другой, а другой оканчивается на\r
или\n
; первая - это пара концов Windows, в то время как остальные обычно используются для файлов Mac или Linux.Поскольку вы разрабатываете в Visual Studio, вам, очевидно, захочется выбрать «Windows» из выпадающего списка. :-)
источник
Некоторые строки заканчиваются на
\n
.Некоторые другие строки заканчиваются на
\r\n
.Visual Studio предлагает сделать все строки одинаковыми.
источник
Если вы используете Visual Studio 2012:
Перейдите в меню « Файл» → « Дополнительные параметры сохранения» → выберите тип окончания строки как Windows (CR LF) .
источник
Чтобы включить или отключить параметр, выполните следующие действия в строке меню :
Инструменты → Параметры → Среда → Документы → Проверить согласованность концов строк под нагрузкой.
источник
Файл, который вы редактируете, был отредактирован с помощью другого редактора, который не использует те же окончания строк, что привело к созданию файла со смешанными окончаниями строк.
Символы ASCII, используемые для окончаний строк:
CR, возврат каретки
LF, перевод строки
Windows = CRLF
Mac OS 9 или более ранняя версия = CR
Unix = LF
источник
Новая статья в Википедии может вам помочь. Вот выдержка:
источник
Это означает, что, например, некоторые из ваших строк текста с
<Carriage Return><Linefeed>
(стандарт Windows), а некоторые заканчиваются просто<Linefeed>
(стандарт Unix).Если вы нажмете «да», эти строки в вашем исходном файле будут преобразованы в один и тот же формат.
Это не будет иметь никакого значения для компилятора (потому что конец строки считается простым пробелом), но это может иметь некоторое значение для других инструментов (например, 'diff' в вашей системе контроля версий).
источник
Это не просто Visual Studio ... Это были бы любые инструменты, которые читают файлы, компиляторы, компоновщики и т. Д., Которые могли бы справиться с этим.
В целом (для разработки программного обеспечения) мы принимаем проблему с окончанием многоплатформенной линии, но разрешаем программному обеспечению контроля версий справиться с этим.
источник
Когда вы копируете, вставляете что-то из Интернета, вы можете получить несовместимые окончания строк.
Чтобы это исправить, вы можете использовать расширение Visual Studio «Унификатор конца строки», которое может автоматически согласовать окончание строки при сохранении файла.
источник
Там есть надстройка для Visual Studio 2008, которая преобразует формат конца строки при сохранении файла. Вы можете скачать его здесь: http://grebulon.com/software/stripem.php
источник