Филтрирање текста

Када поредите неколико датотека, можда имате делове текста где разлике нису заиста важне. На пример, можда желите да се фокусирате на измењене делове кода и занемарите све измене у редовима са коментарима. Помоћу филтера текста можете рећи Мелду да занемари текст који одговара шаблону (тј. регуларном изразу) када приказује разлике између датотека.

Филтери текста не утичу само на поређење датотека, већ и на поређење фасцикли. Погледајте белешке о филтрирању датотека за више детаља.

Додавање и коришћење филтера текста

Можете укључити или искључити филтере текста на картици Филтери текста у прозорчету Поставке. Мелд долази са неколико једноставних филтера који вам могу бити корисни, али можете додати и своје.

У Мелду, филтери текста су регуларни изрази који се упоређују са текстом датотека које поредите. Сваки текст који се поклопи се занемарује током поређења; и даље ћете видети овај текст у прегледу поређења, али он неће бити узет у обзир приликом проналажења разлика. Филтери текста се примењују по реду, тако да је могуће да први филтер уклони текст који сада чини да се други филтер поклопи, и тако даље.

Ако нисте упознати са регуларним изразима, можда ћете желети да погледате Пајтонов приручник за регуларне изразе.

Правилно постављање филтера текста

Лако је погрешити у филтрирању текста, а Мелдова подршка за филтрирање није потпуна. Нарочито, филтер текста не може да промени број редова у датотеци. На пример, ако бисмо имали укључен уграђени филтер Коментар скрипте, и поредили следеће датотеке:

comment1.txt

a
b#comment
c
d

comment2.txt

a
b
c
#comment

тада би редови који почињу са b били приказани као истоветни (коментар је извучен), али би ред d био приказан као различит у односу на ред са коментаром на десној страни. Ово се дешава зато што је #comment уклоњен са десне стране, али сам ред не може бити уклоњен; Мелд ће приказати ред d као различит у односу на оно што види као празан ред на другој страни.

Празни редови и филтери

Поставка Занемари измене које умећу или бришу празне редове у картици Филтери текста захтева посебно објашњење. Ако је овај посебни филтер омогућен, тада се свака измена која се састоји само од празних редова потпуно занемарује. Ово се може догодити јер је дошло до стварне промене празног простора у тексту, али се може појавити и ако су ваши активни филтери текста уклонили сав остали садржај из измене, остављајући само празне редове.

Можете користити ову опцију да заобиђете неке од проблема и ограничења који произилазе из тога што филтери не могу да уклоне целе редове, али она такође може бити корисна сама по себи.