Я не знаю, как заставить его сохранить все в UTF-8, но вы можете сделать это в каждом конкретном случае. Когда вы впервые сохраняете документ и появляется диалоговое окно «Сохранить как ...», кнопка «Сохранить» фактически будет выпадающей кнопкой с двумя вариантами. Вы хотите «Сохранить с кодировкой ...», которая затем предоставит вам полный список установленных кодировок Windows.
Кодировка, которую вы действительно хотите, находится далеко внизу:
Unicode (UTF-8 без подписи) - кодовая страница 65001
хотя, если вы хотите сэкономить много боли, вы, вероятно, захотите выбрать опцию в верхней части:
Unicode (UTF-8 с подписью) - кодовая страница 65001
Разница заключается в том, что последний вариант придерживается подписи UTF-8 (которая является просто меткой порядка байтов UTF-16, закодированной в UTF-8). Это одна из моих любимых мозолей, поскольку UTF-8 не имеет множественных порядков байтов , поэтому спецификация в лучшем случае избыточна, а в худшем случае ломает все виды инструментов обработки текста. MS использует его для «автоматического определения» UTF-8 автоматически, поскольку для однобайтового символа UTF-8, ISO-8859-1 и CP-1252 идентичны, за исключением последовательности из 32 символов (0x80 - 0x9f), которую MS в основном составил.
Если вы когда-либо редактируете или обрабатываете свои файлы только с помощью Visual Studio или инструментов .NET, то сохранение с подписью, вероятно, будет работать нормально. Если вам нужно сохранить файлы для использования другими инструментами (пакетные файлы, SQL-запросы, PHP-скрипты и т. Д.), Подпись вызовет проблемы, и вы должны сохранить их без нее. Если вы сделаете это, вы можете включить опцию («Инструменты» -> «Параметры» -> «Текстовый редактор») «Автоматически определять кодировку UTF-8 без подписи», либо щелкнуть правой кнопкой мыши файл и выбрать «Открыть с помощью». ... "и выберите опцию редактора с надписью" редактор с кодировкой ".