Как я могу удалить ^ M из моего файла в возвышенном тексте 3?


22

Когда я делаю git diff в своей ветке, я вижу, что в конце строки есть символы ^ M:

^ M Концы строк

Я хочу заменить их окончаниями строк Unix перед тем, как вносить изменения.

Я использую Ubuntu 14.04, git и возвышенный текст 3.

Спасибо за вашу помощь.

РЕДАКТИРОВАТЬ:

Я ищу способ изменить окончание строки в возвышенном тексте 3, не используя другие утилиты или команды.

Ответы:


15

Это может быть сделано без плагина через меню вверху или через строку состояния (но вам нужно включить функцию).

Чтобы изменить его через меню вверху, нажмите Вид -> Окончание строки -> Выберите нужный тип окончания строки.

Чтобы включить это через строку состояния: Нажмите «Настройки» -> «Настройки», затем добавьте "show_line_endings": true,где-нибудь между {}скобками с правой стороны. Наконец, сохраните ваши изменения.

Это включает небольшой раздел справа от строки состояния, который отображается внизу. Он сообщает вам текущую кодировку EOL и, щелкнув по полю и выбрав другой тип, он меняет символ EOL для вас.

Еще одна полезная опция - это кодирование файлов, которое также можно включить в строке состояния, следуя тем же настройкам, что и выше, но также добавляя "show_encoding": true,между {}метками.


Это работает особенно когда вы переносите файлы из windows на сервер, потому что на сервере сложнее редактировать файл. Спасибо
Луис Кабрера Бенито

Теперь это должен быть принятый ответ
Лукас

14

Вы можете использовать dos2unixкоманду в linux (пакет dos2unix) или изменить окончания строк в Sublime Text в пункте меню View / Line Endings .


8

^Mесть \r(Control-M или возврат каретки).

Вероятно, это связано с тем, что пользователь, который зафиксировал файл, использовал окна, которые используют \r\nдля его окончания строки. Linux использует только \n, поэтому вы видите ^Mв конце строки.

Вы, вероятно, хотите сделать одно из следующего:

  • «Исправить» файл, чтобы он заканчивался \nстрокой (используя такой инструмент, как dos2unix) и фиксировал. В этом случае вы будете сражаться с другим пользователем, если вы не можете заставить его сделать следующее.
  • Сконфигурируйте обе ваши установки git для правильной обработки концов строк для каждой среды - например: /programming/10418975/how-to-change-line-ending-settings
  • Сконфигурируйте Sublime, чтобы открыть файл с « Концами строк Windows »

3

Я нашел плагин для возвышенного текста, который преобразует окончания строк во всех открытых файлах в Unix / Windows / Mac OS 9.

Установка

  1. Откройте Sublime и перейдите в «Настройки»> «Обзор пакетов». Это откроет окно.
  2. Загрузите или клонируйте содержимое этого репозитория в папку с именем, точно совпадающим с именем пакета, в папку Packages /, которую вы открыли на предыдущем шаге:

/home/YOUR_USERNAME/.config/sublime-text-3/Packages

Применение

  1. Вернитесь к возвышенному и откройте все файлы, которые вы хотите конвертировать.
  2. Когда все файлы открыты, нажмите CTRL + SHIFT + P, найдите и выберите «Конец строки для всех видов: Unix».
  3. Нажмите CTRL + ALT + S, чтобы сохранить все открытые файлы.

Репозиторий был удален?
AnnanFay

3

Кому может не захотеть устанавливать дополнительный плагин для удаления ^ M новых строк,

  1. В настройке возвышенного текста добавьте "trim_trailing_white_space_on_save": true,автоматическое удаление пробела при сохранении. (Этот шаг может быть необязательным)

  2. В открывшемся файле нажмите правый нижний угол возвышенного текста. Изменение Windowsк Unixи сохранению.

  1. ^ М ушел. Наслаждаться.
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.