Search code examples
regexwinmergefilefilter

WinMerge filter to compare files and exclude specific folder


I'm trying to create a filter to compare only .cpp and .h files but it shouldn't compare folders which name .vshistory.

This is what i got:

## This is a directory/file filter template for WinMerge
name: C++ Files
desc: Filter for C++ source and header files

## This is an exclusive filter
## (it lets through only matching files)
def: exclude

f: \.(cpp|h)$  ## To compare only .cpp and .h files
d: \\(?<!\.vshistory)

Its comparing only .cpp and .h files but its not ignoring the .vshistory folder, what's wrong?

https://i.imgur.com/QmENUAx.png


Solution

  • Please try this one:

    ## This is a directory/file filter template for WinMerge
    name: C++ Files
    desc: Filter for C++ source and header files
    
    ## This is an exclusive filter
    ## (it lets through only matching files)
    def: exclude
    
    f: \.(cpp|h)$  ## To compare only .cpp and .h files
    d: ^(?:(?!\.vshistory).)*$  ## Ignore the .vshistory directory