Создать новый файл в WinSCP с UTF-8 без кодировки BOM

1420
Emmanuel Figuerola

Я использую WinSCP для работы через SFTP с удаленным сервером под управлением дистрибутива Linux. Я также использую Notepad ++ (последняя версия) в качестве текстового редактора (при редактировании удаленного файла).

Когда я использую WinSCP для создания нового файла на удаленном сервере, используя:

Right click > New > File... 

Notepad ++ открывает пустой файл, но кодировка отображается как ANSI вместо UTF-8 без спецификации, что является моей настройкой по умолчанию. У меня даже в Notepad ++ включена опция «Применить к открытым файлам ANSI»

Settings / Preferences / New Document / Encoding / UTF-8 without BOM / Apply to opened ANSI files 

Из-за этого мне приходится Encoding / Convert to UTF-8 without BOMкаждый раз выбирать вручную, и если по какой-то причине я забываю, что должен сделать этот шаг, то файл сохраняется как ANSI, и это может вызвать проблемы.

Есть ли способ, чтобы новый файл был закодирован как UTF-8 без спецификации с самого начала?

2
какое-либо решение для этого до сих пор? У меня точно такая же проблема. Раздражает необходимость каждый раз менять кодировку вручную. DiegoDD 8 лет назад 0

2 ответа на вопрос

1
Martin Prikryl

Проверяя исходный код Notepad ++, я вижу, что опция «Применить к открытым файлам ANSI» помечена неправильно. Должно быть написано «Применить к открытым ASCII- файлам», поскольку оно относится только к 7-битным (ASCII) файлам.

Пустой файл «определяется» как 8-битный (ANSI), поэтому опция никогда не применяется к пустым файлам.

UniMode um = UnicodeConvertor.getEncoding(); if (um == uni7Bit) { if (ndds._openAnsiAsUtf8) { um = uniCookie; } else { um = uni8Bit; } } 

UnicodeConvertor.getEncoding()Всегда возвращается, uni8Bitесли файл пуст.

Я предлагаю вам сообщить об этом как об ошибке.


Также не существует какой-либо опции командной строки для принудительного использования другой кодировки:
http://docs.notepad-plus-plus.org/index.php/Command_Line_Switches

0
DidThis

This seems to be fixed in Notepad++ 6.4.5 https://notepad-plus-plus.org/download/v6.4.5.html

Fix UTF-8 (w/o BOM) detection bug.

Still, when a new file is created in WinSCP and it is opened with Notepad++, encoding in editors lower right corner is showing ANSI. But when the file is saved, closed, and opened once again, the encoding is UTF8.

Похожие вопросы