def _run_markdownlint(matched_filenames, show_lint_files):
    """Run markdownlint on matched_filenames."""
    from prospector.message import Message, Location

    for filename in matched_filenames:
        _debug_linter_status("mdl", filename, show_lint_files)

    try:
        proc = subprocess.Popen(["mdl"] + matched_filenames,
                                stdout=subprocess.PIPE,
                                stderr=subprocess.PIPE)
        lines = proc.communicate()[0].decode().splitlines()
    except OSError as error:
        if error.errno == errno.ENOENT:
            return []

    lines = [
        re.match(r"([\w\-.\/\\ ]+)\:([0-9]+)\: (\w+) (.+)", l).groups(1)
        for l in lines
    ]
    return_dict = dict()
    for filename, lineno, code, msg in lines:
        key = _Key(filename, int(lineno), code)
        loc = Location(filename, None, None, int(lineno), 0)
        return_dict[key] = Message("markdownlint", code, loc, msg)

    return return_dict
def _run_markdownlint ( matched_filenames , show_lint_files ) : from prospector . message import Message , Location for filename in matched_filenames : _debug_linter_status ( "mdl" , filename , show_lint_files ) try : proc = subprocess . Popen ( [ "mdl" ] + matched_filenames , stdout = subprocess . PIPE , stderr = subprocess . PIPE ) lines = proc . communicate ( ) [ 0 ] . decode ( ) . splitlines ( ) except OSError as error : if error . errno == errno . ENOENT : return [ ] lines = [ re . match ( r"([\w\-.\/\\ ]+)\:([0-9]+)\: (\w+) (.+)" , l ) . groups ( 1 ) for l in lines ] return_dict = dict ( ) for filename , lineno , code , msg in lines : key = _Key ( filename , int ( lineno ) , code ) loc = Location ( filename , None , None , int ( lineno ) , 0 ) return_dict [ key ] = Message ( "markdownlint" , code , loc , msg ) return return_dict
Run markdownlint on matched_filenames.