Русское сообщество Sublime Text
Основной раздел => Вопросы и ответы => Тема начата: ssrdop от Апреля 24, 2014, 19:04:03
-
Здравствуйте!Столкнулся с такой проблемой. Открыл html файл в кодировке 1251 в ST2. Сначала открылось с каркозябрами, после я переоткрыл файл с соответствующей файлу кодировкой. Вздохнул спокойно. Начал писать php код, используя иногда для значений переменных русский язык. Сохранился и после недолгого времени снова открываю последний файл и вижу каркозябры, что в самой программе, что в браузере. Пытался перекодировать во все кодировки, которые возможны, меня дефаултные настройки программы, все в пустую. Не знаю что делать. Самое интересно, что файлы html, где я не прописывал php код, открываются прекрасно и читаемо. Но где побывал php там ужас вместо русских слов.
-
Странно, но похоже, что ST сохранил файл в UTF-8.
Если файл был открыт из FTP клиента, то скорее всего он был открыт как windows-1251, но так как редактор сохранил его в UTF-8, при передаче его на сервер, часть данных потерялась.
Для того, чтобы этого не происходило, лучше сохранять такие файлы через команду Save with Encoding или указать параметр для кодировки по-умолчанию "fallback_encoding": "Cyrillic (Windows 1251)"
-
Теперь так и буду делать, но проблема все равно осталась не решенной. Тот же "попорченный" файл открывал и notepad++ - все тоже самое и невозможно вернуть нормальный вид иероглифам :-\
-
Хотя я не до конца уверен насчет FTP.
Возможно, ST открыл твой windows-1251 как UTF-8 или скорее всего как windows-1252 (так как эта кодировка стоит по-умолчанию для файлов, у которых не удалось определить кодировку) и ты его сохранил, сразу не обратив внимание на кракозябры. Соответственно твой 1251 превратился в 1252.
Плясать лучше вокруг этих трех кодировок: 1252, UTF-8 и 1251. Еще можешь попробовать подсунуть свой текст декодировщику (http://www.artlebedev.ru/tools/decoder/advanced/) Тёмочки.
PS: Сломать кодировку у меня получается если 1251 открыть как 1252 и сохранить в UTF-8. Каракули остаются вроде бы теже, но загрузить их как 1251 уже не выходит.
Теперь так и буду делать
Лучше используй UTF-8 :)
-
Начал писать php код, используя иногда для значений переменных русский язык
Файл открывается и сохранен в UTF-8 если бы было наоборот (windows-1251) то весь буржуйский был бы корявый а родной норм .