Как заставить Beyond Compare игнорировать определенные различия при сравнении версий файлов форм Delphi
Я использую Beyond Compare (версия 3.1.10) для сравнения разных версий Delphi Form Files, но я не хочу видеть различия, касающиеся ExplicitTop, ExplicitLeft, ExplicitHeight и ExplicitWidth.
Детали: Эти строки всегда начинаются с количества пробельных символов, затем "ExplicitXXX = " и цифры. В более старых версиях Delphi не было этих строк, поэтому я хочу игнорировать различия, когда эти строки добавляются в новейшую версию, и я также хочу игнорировать различия, когда число изменилось.
Кто-нибудь знает как это сделать?
Изменить: Дублировать (более или менее) из:
Как настроить BeyondCompare на игнорирование замененного текста SCM в комментариях?
4 ответа
- Загрузите пару файлов DFM, показывающих разницу.
- Нажмите кнопку " Настройки сеанса" (также называемый " Правила с символом судьи") или используйте пункт меню " Сеанс->Настройки сеанса".
- Перейдите на вкладку " Важность ", затем нажмите кнопку " Изменить грамматику...", чтобы открыть второй диалог.
- Нажмите кнопку " Создать" под верхним списком, чтобы открыть третий диалог.
- Измените параметр Имя элемента на что-то вроде
Explicit*
измените соответствие текста наExplicit(Left|Top|Width|Height) = \d+
и установите флажки Соответствовать регистру символов и Регулярное выражение, затем нажмите Ok, затем снова нажмите Ok во втором диалоговом окне. Explicit*
должен появиться в списке элементов грамматики исходного диалога. Снимите этот флажок, затем измените поле со списком в нижней части диалогового окна с Использовать только для этого представления на Обновлять параметры сеанса по умолчанию.
Я не использую Beyond Compare, но если вы хотите, чтобы более новые версии Delphi прекратили добавлять (IMO бесполезно) Explicit*
свойства, вы можете использовать Андреас Хаусладен DDevExtensions
Крейг Петерсон ответ правильный. NB Однако! Вкладка "Важность" не всегда видна в настройках Session/Session-settings. Всегда внутри представления списка папок его там не будет. Кажется, есть определенные типы файлов, у которых его тоже нет, хотя я не совсем уверен в этом. У BC есть так много опций и плагинов, что держу пари, что есть обходной путь, но пока я был в порядке. http://www.scootersoftware.com/vbulletin/showthread.php?t=8457
В моем случае (C#) я хотел игнорировать всю строку, которая содержала пространства имен (и, следовательно, используя), которые я изменил. ( Ссылочное прохождение - игнорировать всю строку, если текст существует в строке
то есть.
namespace INSERT.NAMESPACE.HERE
changed to
namespace INSERT.NAMESPACE.HERE.NEW
Для этого
На шаге 5. решения Крейга измените Text Matching на
" .\*INSERT.NAMESPACE.HERE.\* "
(включите цитаты)
Вот и все.