Как принудительно завершить строки unix (LF) в Visual Studio (Express) 2008?

Есть ли способ, чтобы всегда имел окончание строки LF в Visual Studio? Кажется, я никогда не найду его!

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
66
0
57 395
7
Перейти к ответу Данный вопрос помечен как решенный

Ответы 7

Ответ принят как подходящий

Надеюсь, эта статья поможет вам:

Как сохранить файл из Visual C++ в формате UNIX

К сожалению, по умолчанию это единственный способ сохранить файлы в формате Unix.

Лично я использую опцию «Предварительное сохранение» в диалоговом окне «Сохранить файл». Но, честно говоря, мне никогда не приходилось работать с большим количеством файлов в формате Unix из MSVS.

Неужели нет более простого пути? Вам нужно написать свой собственный консольный инструмент, добавить его в меню пользовательских инструментов и VBScript для перехвата после сохранения, который захватывает жестко запрограммированный индекс из меню инструментов, который, надеюсь, соответствует вашему инструменту, чтобы вызвать его? Это безумие.

Albert 15.03.2014 15:57

Ах, смотрите ниже плагин надстройки Strip'em. Все еще несколько глупо обходить это ограничение MSVC, но, по крайней мере, несколько проще и чище.

Albert 15.03.2014 16:00

Visual Studio 2008 не сохраняет расширенные параметры сохранения после закрытия решения. Я был бы готов вручную отредактировать много файлов, если бы это обеспечило стабильную работу, но я не хочу менять все настройки каждый раз, когда открываю VS.

Это очень плохо. Поскольку VS поддерживает принуждение окончаний строк к тому, что требуется в бэкэнде, он просто не подключается должным образом в пользовательском интерфейсе. Может быть, Microsoft исправит это не пакетом обновлений.

Существует надстройка для Visual Studio 2008, которая преобразует формат конца строки при сохранении файла. Вы можете скачать его здесь: http://grebulon.com/software/stripem.php

ИМХО, это должен быть выбранный ответ на этот пост.

sivabudh 20.07.2010 02:50

@ ShaChris23 - согласился; это именно то, что нам нужно сейчас. Но выбранный ответ был выбран 11 ДО того, как Strip'em даже был выпущен.

nevelis 05.10.2011 02:29

Также существует его версия для VS2010, так что это хороший ответ.

CubanX 26.04.2012 18:20

Система голосования должна гарантировать, что это будет видно.

Adam Houldsworth 03.10.2012 11:44

Этот аддон избавляет меня от головной боли в vs2012.

Stabledog 18.10.2013 21:08

Да, есть способ всегда иметь окончания строк LF, по крайней мере, в Visual Studio 2010 Pro.

Перейти к Tools | Options... | Environment | Documents

Затем включите опцию Проверка согласованности окончаний строк при загрузке.

Меня устраивает.

У меня не работает. Я уже проверил это, и он настаивает на сохранении файлов с помощью CRLF (например, файла .sln).

Robin Green 04.04.2014 12:59

Согласованные окончания строк - это не то же самое, что окончания строк LF. Они могут быть последовательно CRLF.

still_dreaming_1 01.10.2015 02:27

«Согласованные окончания строк при загрузке» могут помочь с существующими файлами, но VS по-прежнему, похоже, хочет сохранять новые файлы с (согласованными) окончаниями CR-LF.

cjs 06.02.2018 04:54

Вам не нужно устанавливать какие-либо плагины. Как уже упоминалось, здесь, вы можете настроить окончания строк в File -> Advanced Save options....

Что?! Вы имеете в виду, что я должен делать это для каждого файла ?! Вы же не считаете это ответом?

mbx 07.07.2014 13:37

В VS 2008 этот параметр теряется при закрытии и повторном открытии VS, даже если вы снова откроете то же решение.

still_dreaming_1 01.10.2015 02:31

Основываясь на вопросе OP, я не думаю, что это решение, которое они ищут.

lordhog 18.10.2016 22:22

Для VS есть плагин под названием Strip'Em, в котором вы можете выбрать, в какой тип новой линии вы хотите автоматически преобразовать все окончания строк при сохранении.

(Вы можете выбирать между LF, CRLF, CR.)

Это точный ответ, который @grebulon дал 6+ лет назад.

joce 12.10.2016 20:30

Кажется, я случайно нашел метод и нашел в этой статье попытку его исправить (мне нужен Windows CRLF EOL)! Выполнение следующих результатов в окончании строк UNIX (только LF) для меня.

SaveFileDialog^ dialog = gcnew SaveFileDialog();
System::Windows::Forms::DialogResult DR;
dialog->Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*";
dialog->FilterIndex = 2;
dialog->RestoreDirectory = true;
dialog->DefaultExt = "txt";
DR = dialog->ShowDialog(this);
if ( DR == System::Windows::Forms::DialogResult::OK )
{
    // Get the page (tab) we are currently on
    System::Windows::Forms::TabPage ^selPage = this->tabControl1->SelectedTab;

    // Note: technically the correct way to look for our control is to use Find and search by name
    // System::Windows::Forms::RichTextBox ^selText = selPage->Controls->Find("rtb", false);
    // I only add one control (rich text) so first control ([0]) must be it
    System::Windows::Forms::RichTextBox ^selText = safe_cast<System::Windows::Forms::RichTextBox^>(selPage->Controls[0]);

    // Just let a Windows forms method do all the work
    File::WriteAllText(dialog->FileName, selText->Text);
}

Куда должен идти этот код? Предлагает то, что могло бы быть решением, но как его применить, опущено.

lordhog 18.10.2016 22:25

Ну, он будет куда-нибудь, где вы вызовете SaveFileDialog. В Visual Studio вы обычно используете генератор форм, например, для создания кнопки. Это приведет к добавлению скелета обработчика, и функция будет называться примерно так: private: System :: Void saveAsToolStripMenuItem_Click (System :: Object ^ sender, System :: EventArgs ^ e)

trindflo 17.11.2016 18:54

Спасибо, @trindflo, это мне очень помогает!

lordhog 22.11.2016 04:06

Другие вопросы по теме