FAR „самостоятельно“ поменял кодировку и испортил содержимое файлов

Столкнулись с проблемой в использовании Far? Здесь можно получить помощь.
Locked
Farpost
Posts: 23
Joined: Sat 02 Oct, 2010 15:33
Been thanked: 1 time

FAR „самостоятельно“ поменял кодировку и испортил содержимое файлов

Post by Farpost »

FAR, судя по всему, 3.0 build 3367 x86.

Работал с текстовыми файлами несколькими. Добавлял в них различную информацию. При этом часть текстов содержало специфические буквы (хоть это предложения в т.ч. из английской Wikipedia, но там к примеру и названия некоторых городов на английском языке почему-то с умляутами и всякими такими буквами пишется, а не буквами только из английского алфавита).

В общем, работал я как обычно. Когда сохранял файлы, то FAR указывал, что в тексте есть специфические символы (буквы с умляутами) и после сохранения файла они не сохранятся в таком виде, все равно сохранять? Я нажимал ОК, так как меня этот вариант устраивал.
Как я понимаю (правильно же понимаю?), когда он встречает букву A с умляутами над ней, то он сохраняет ее как обычную букву A, без умляутов. Все было нормально.

И вот ни с того ни с сего я открываю один из файлов и вижу, что часть текста превратилось во что-то нечитаемое (как я понимаю, русские буквы стали показываться в виде знаков вопросов ????????????????????), а если буквы латинские с умляутами, то тоже как-то не как обычные буквы отображаются. То есть если там была A с умляутами, то теперь она не выглядит как обычная A, как раньше.

Но дело не только в этом. FAR самопроизвольно поменял кодировку не в том одном файле, с которым я работал, а в нескольких. Вместо 1251 там стало 1252, то есть не с одним файлом теперь проблема, а с несколькими. Где-то получилось вернуть из 1252 в 1251 (не знаю как, может путем просмотра через F3, а не F4 или еще как-то), но там как были ?????????????????????????? и эта проблема с буквами с умляутами, так и осталась (они показываются не как обычные латинские буквы теперь).

Что теперь делать? Можно ли все вернуть как было? Или эти тексты уже не спасти???!

Я такого вообще не ожидал. FAR я пользуюсь давно и до недавнего времени полагал, что в нем и есть только 1251 и 866, и все. А тут откуда не возьмись это 1252.

В настройках посмотрел, что указано:
Default code page 1251 | ANSI
x - Autodetect code page

Но я после установки в них ничего и не менял особо. Это настройки по умолчанию. Но дело в принципе не в том, а в том, то работая в FAR получается, что тексты находятся под угрозой. Стремно пользоваться таким редактором, так как большая проделанная работа просто-напросто может накрыться и все.
Last edited by HaRT on Fri 19 Dec, 2014 12:55, edited 1 time in total.
Reason: Подправлен Заголовок Темы
User avatar
John Doe
Бюрократ
Posts: 13851
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

FAR самостоятельно поменял кодировку и испортил содержимое файлов

Post by John Doe »

Farpost wrote: FAR самопроизвольно поменял кодировку
Из вашего рассказа можно предположить, что неверная кодировка только в редакторе, а сами файлы скорее всего целы.

Возможно достаточно нажать F8, чтобы вернуть в 1251.
Рекомендую перечитать FAQ, вопрос кодировок там рассматривается.
2useven10
Posts: 5226
Joined: Mon 07 Sep, 2009 10:40
Has thanked: 18 times
Been thanked: 314 times

FAR самостоятельно поменял кодировку и испортил содержимое файлов

Post by 2useven10 »

Farpost
FAR, судя по всему, 3.0 build 3367 x86.
Лучше взять последнюю ночную сборку.
Я нажимал ОК, так как меня этот вариант устраивал.
Как я понимаю (правильно же понимаю?), когда он встречает букву A с умляутами над ней, то он сохраняет ее как обычную букву A, без умляутов.
Неправильно понимаете.
Текст с умляутами и русскими буквами нельзя сохранить в однобайтовой кодировке.
Либо умляуты (при сохранении в 1251) либо русские буквы (при сохранении в 1252) будут потеряны. Никакого интеллекта с убиранием умляутов нет, неперекодированные символы скорее всего просто заменятся на '?' (не 100%, используется виндовый перекодировщик, надо проверять, может быть разное поведение на разных системах). Нажимая OK, Вы сами соглашаетесь на потерю информации.

Правильный способ - сохранять такие тексты в юникоде, например UTF-8.

Если Вы открыли файл в однобайтовой кодировке, то описанная Вами ситуация вряд ли возможна.
Скорее всего юникодный текст был вставлен через буфер обмена.
Но я после установки в них ничего и не менял особо. Это настройки по умолчанию. Но дело в принципе не в том, а в том, то работая в FAR получается, что тексты находятся под угрозой. Стремно пользоваться таким редактором, так как большая проделанная работа просто-напросто может накрыться и все.
Тексты (и не только) под угрозой, когда юзер не понимает, что делают его руки.
User avatar
zg
zero-gravity
Posts: 6035
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

FAR самостоятельно поменял кодировку и испортил содержимое файлов

Post by zg »

2useven10 wrote:Либо умляуты (при сохранении в 1251) либо русские буквы (при сохранении в 1252) будут потеряны. Никакого интеллекта с убиранием умляутов нет, неперекодированные символы скорее всего просто заменятся на '?' (не 100%, используется виндовый перекодировщик, надо проверять, может быть разное поведение на разных системах).
вообще-то «интеллект» есть. достаточно заглянуть в C_1251.NLS. и так всегда было.
Farpost
Posts: 23
Joined: Sat 02 Oct, 2010 15:33
Been thanked: 1 time

FAR самостоятельно поменял кодировку и испортил содержимое файлов

Post by Farpost »

John Doe wrote:
Farpost wrote: FAR самопроизвольно поменял кодировку
Из вашего рассказа можно предположить, что неверная кодировка только в редакторе, а сами файлы скорее всего целы.

Возможно достаточно нажать F8, чтобы вернуть в 1251.
Рекомендую перечитать FAQ, вопрос кодировок там рассматривается.
Кодировку для некоторых файлов я вернул (скорее всего путем F3->F8, если ранее, когда редактировал, использовал F4), но файлы испорчены (см выше). Проблема в том, что FAR таким образом, наверное, может испортить не только файлы, с которыми я работал, но и вообще любые файлы.
User avatar
zg
zero-gravity
Posts: 6035
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

FAR самостоятельно поменял кодировку и испортил содержимое файлов

Post by zg »

Farpost wrote:Проблема в том, что FAR таким образом, наверное, может испортить не только файлы, с которыми я работал, но и вообще любые файлы.
не работайте со своими файлами в фаре.
Farpost
Posts: 23
Joined: Sat 02 Oct, 2010 15:33
Been thanked: 1 time

FAR самостоятельно поменял кодировку и испортил содержимое файлов

Post by Farpost »

2useven10 wrote:Farpost
FAR, судя по всему, 3.0 build 3367 x86.
Лучше взять последнюю ночную сборку.
А чем последняя сборка надежнее в этом плане? Теперь я наоборот думаю найти старый FAR без наворотов, но чтобы он был надежным.

Еще надо сказать, что у меня на новом ноуте 64-разрядная Windows Pro 8.1, поэтому и FAR я, скорее всего, ставил такой же. А до этого на прошлом ноуте я пользовался программами под 32-разрядную OS и старый FAR тоже такой был.
User avatar
zg
zero-gravity
Posts: 6035
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 185 times
Contact:

FAR самостоятельно поменял кодировку и испортил содержимое файлов

Post by zg »

Farpost wrote:А чем последняя сборка надежнее в этом плане?
проблема не в надёжности фара, проблема в отсутствии у вас необходимой квалификации, чтобы им пользоваться. да и просто с логикой у вас проблемы.
User avatar
John Doe
Бюрократ
Posts: 13851
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 73 times
Been thanked: 428 times
Contact:

FAR самостоятельно поменял кодировку и испортил содержимое файлов

Post by John Doe »

Farpost wrote: Когда сохранял файлы, то FAR указывал, что в тексте есть специфические символы (буквы с умляутами) и после сохранения файла они не сохранятся в таком виде, все равно сохранять? Я нажимал ОК, так как меня этот вариант устраивал.
Если кто не понял: так делать нельзя. И фар об этом честно предупреждает.
Если игнорировать предупреждения, то ничего хорошего из этого не выйдет.

И не надо после этого содавать тему в "Глюках и багах", и утверждать, будто "FAR самостоятельно поменял кодировку".
Locked

Return to “Нужна помощь”