Exemple #1
0
    def find(self, details, filter=None):
        self.stop()

        matcher = make_matcher(details.find,
            case_sensitive=details.case, is_regexp=details.regexp)

        self.start_time = time.time()
        self.details = details
        self.finder = Search(details.path, matcher, output=self, filter=filter)
        async_call(self.finder.search)
        self.Clear()
        self.output.start()
Exemple #2
0
    def find(self, details):
        self.stop()

        matcher = make_matcher(details.find,
            case_sensitive=details.case, is_regexp=details.regexp)

        if details.hidden:
            def dir_filter(info):
                return True
        else:
            def dir_filter(info):
                return bool(not info.hidden
                    and not re_hidden_dirs.match(info.filename))

        if details.file_patterns.strip():
            file_pattern_re = compile_file_patterns(details.file_patterns)
            if details.hidden:
                def file_filter(info):
                    return bool(file_pattern_re.match(info.filename))
            else:
                def file_filter(info):
                    return bool(not info.hidden
                        and not re_hidden_files.match(info.filename)
                        and file_pattern_re.match(info.filename))
        else:
            if details.hidden:
                def file_filter(info):
                    return True
            else:
                def file_filter(info):
                    return bool(not info.hidden
                        and not re_hidden_files.match(info.filename))

        self.start_time = time.time()
        self.details = details
        self.finder = Search(details.path, matcher, output=self, file_filter=file_filter, dir_filter=dir_filter)
        async_call(self.finder.search)
        self.Clear()
        self.output.start()