Проблема с функционалом "сравнения файлов по содержимому"

Обсуждение Total Commander. Установка, использование, настройка, решение проблем, скрытые функции. Обсуждение новых версий.

Модераторы: d-view, Моторокер, Avada, CaptainFlint, Nik

silione
Сообщения: 4
Зарегистрирован: Пт фев 17, 2012 04:09

Проблема с функционалом "сравнения файлов по содержимому"

Сообщение silione »

Ситуация следующая:
Решил немного для себя подправить перевод одного мода для игры civilization4. Весь текст в игре находится в xml файлах (по сути текстовые файлы). Взял старый перевод для его адаптации к последней версии мода, для этого сравнивал файлы по содержимому и редактировал необходимые строки. Наткнулся на такую проблему - попадаются файлы у которых, при сравнении по содержимому, не активна кнопка "редактирование" (на F6 тоже никакой реакции). При этом файлы таки сравниваются.

Дал бы скриншот, чтоб не быть голословным, но новичкам ссылки запрещено постить :( На словах это выглядит так: окошко сравнения файлов по содержимому выглядит как и должно, в правом и левом окне содержимое соответствующих файлов с выделенными изменениями, а кнопка "редактирование" такая же неактивно "серая" как кнопки копирования и отката.

С чем это может быть связано?
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Файлы больше 2 Мб. Читаем справку.
silione
Сообщения: 4
Зарегистрирован: Пт фев 17, 2012 04:09

Сообщение silione »

Flasher писал(а):Файлы больше 2 Мб. Читаем справку.
Размер сравниваемых файлов - 1 179 648 байт и 995 328 байт.
Причем среди редактируемых файлов есть и один файл размером 2,5 Мб и он нормально редактируется во время сравнения.

Еще идеи есть?

P.S.
Пробовал на двух разных компах с разными версиями total commandera - результат один. Вероятно дело именно в файле. Но что с ним с этим файлом может такого быть? Это ведь текст. И как это исправить?
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Кодировка файла какая?

Галку "Двоичный" тотал при сравнении не ставит? Если ставит, снять и пересравнить.
Аватара пользователя
CaptainFlint
Сообщения: 6239
Зарегистрирован: Вт дек 14, 2004 22:34
Контактная информация:

Сообщение CaptainFlint »

silione
Ещё редактирование может оказаться запрещено, если в файле есть очень длинные строки.
Почему же, ё-моё, ты нигде не пишешь "ё"?
silione
Сообщения: 4
Зарегистрирован: Пт фев 17, 2012 04:09

Сообщение silione »

MVV писал(а):Кодировка файла какая?

Галку "Двоичный" тотал при сравнении не ставит? Если ставит, снять и пересравнить.
Кодировка ISO-8859-1, но она такая у всех файлов, а не редактируется только один.
Двоичный вид не включал, мне ведь текст редактировать.
Ещё редактирование может оказаться запрещено, если в файле есть очень длинные строки.
Вот, кажется оно, спасибо! Удалил часть текста в котором встречаются длинные строки и редактирование включилось. Теперь только разбираться вручную аккуратно надо будет искать и вырезать эти строки перед сравнением, а потом назад вставлять. А какая максимальная длинна строки в символах допустима?
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

silione, необязательно вырезать их. Можно просто добавить разрывов строки между любыми тегами или атрибутами, XML не чувствителен к наличию разрывов строк вне данных. Рекомендую разбивать так, чтобы было удобно сравнивать.

Иногда я, видя жуткие XML или HTML с длиннющими строками, регулярным выражением в текстовом редакторе добавляю разрыв строки, скажем, перед каждым открывающим тегом, так проще сравнивать файлы. Например, заменить <[^\/>]*> на \n\0, или ^(.{100,})(<[^\/>]*>) на \1\n\2 - так можно даже задать минимальное число символов строки, после которого тег будет переноситься на новую строку. При этом внутри тегов разрывы добавляться не будут.
silione
Сообщения: 4
Зарегистрирован: Пт фев 17, 2012 04:09

Сообщение silione »

Спасибо за советы :) буду дальше маятся.
Аватара пользователя
Моторокер
Сообщения: 1517
Зарегистрирован: Пт май 06, 2005 08:22
Откуда: г. Пермь (читается Перьмь)
Контактная информация:

Сообщение Моторокер »

Предлагаю предложить Гислеру показывать сообщение о причине невозможности редактирования (объём файла N Мб больше разрашённых 2 Мб/есть строка X длиннее N символов), чем тихо блокировать клавишу.
плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Моторокер
Предложить можно, но сейчас он этого делать практически наверняка не будет хотя бы потому, что подобные сообщения потребуют дополнительной локализации, на которую согласия Гислер не даст.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
Моторокер
Сообщения: 1517
Зарегистрирован: Пт май 06, 2005 08:22
Откуда: г. Пермь (читается Перьмь)
Контактная информация:

Сообщение Моторокер »

1914="Файл слишком большой"
1452="Мб"
---
1914 + " >2 " + 1452
плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми
Аватара пользователя
MVV
Сообщения: 4815
Зарегистрирован: Чт окт 15, 2009 10:58
Откуда: Ростов-Дон

Сообщение MVV »

Гислер до выпуска финалки вряд ли будет добавлять новые фичи.
Аватара пользователя
Avada
Сообщения: 10541
Зарегистрирован: Пт авг 01, 2008 16:17
Откуда: Россия, Саратов

Сообщение Avada »

Моторокер
Во-первых ничего нет про строки. Во-вторых, как правильно было сказано, добавление новых фич до финала крайне маловероятно.
Даже самая богатая фантазия
Не представит себе наши безобразия.
Аватара пользователя
Моторокер
Сообщения: 1517
Зарегистрирован: Пт май 06, 2005 08:22
Откуда: г. Пермь (читается Перьмь)
Контактная информация:

Сообщение Моторокер »

Avada
Это уже во вторых, как выяснилось.
Это не фича.

Ладно, если на забуду, попробую сам запостить.
плагины для Total Commander, статьи Graphics Converter; NSCopy; SEO HTML; KillOK; Плагин на Delphi
ПармаСруб - строительство домов и бань в Перми
Аватара пользователя
keiran_green
Сообщения: 130
Зарегистрирован: Пт ноя 18, 2011 03:20
Откуда: Хабаровск

Сообщение keiran_green »

silione
Попробуй для сравнения использовать WinMerge.

Добавлено спустя 3 минуты:

Я его к TC прикрутил - очень удобно.
Ответить