On 13 Nov 14:08, Russell Bryant wrote:
> On Thu, Nov 12, 2015 at 9:18 PM, Stephen Finucane <stephen.finuc...@intel.com>
> wrote:
> 
>     This provides a quick, easy way to use the 'mdl' executable provided
>     in markdowlinter to validate documentation.
> 
>     This change does not resolve any of the issues this linter raises -
>     these will need to be done in a follow up patch.
> 
>     Signed-off-by: Stephen Finucane <stephen.finuc...@intel.com>
>     ---
>      INSTALL.md  | 5 +++++
>      Makefile.am | 4 ++++
>      2 files changed, 9 insertions(+)
> 
>     diff --git a/INSTALL.md b/INSTALL.md
>     index 906825a..7311915 100644
>     --- a/INSTALL.md
>     +++ b/INSTALL.md
>     @@ -111,6 +111,11 @@ To run the unit tests, you also need:
>        - Perl.  Version 5.10.1 is known to work.  Earlier versions should
>          also work.
> 
>     +If you are going to modify Open vSwitch documentation, please consider
>     +installing the following to validate your changes:
>     +
>     +  - "markdownlint" (https://github.com/mivok/markdownlint)
>     +
>      The ovs-vswitchd.conf.db(5) manpage will include an E-R diagram, in
>      formats other than plain text, only if you have the following:
> 
>     diff --git a/Makefile.am b/Makefile.am
>     index 966ba27..d58cb59 100644
>     --- a/Makefile.am
>     +++ b/Makefile.am
>     @@ -377,6 +377,10 @@ dist-docs:
>             VERSION=$(VERSION) $(srcdir)/build-aux/dist-docs $(srcdir) $(docs)
>      .PHONY: dist-docs
> 
>     +lint-docs:
>     +       mdl $(docs)
>     +.PHONY: dist-docs
> 
> 
> You have a typo here: s/dist-docs/lint-docs/

This is what happens when I write code at night :)

> What results does this come up with for the current docs?  That'd probably 
> help
> demonstrate the value.  I got errors trying to install mdl and decided to just
> ask for now instead.  :-)
> 
> In general though, I think this seems like a fine idea.

Are you ready for this (starts humming the Space Jam tune)? I've dropped 
roughly 60%
of the "issues" so I may be missing some error types, but you should get the 
gist.
This is all configurable, so we can switch off what we don't agree with. AFAIK 
the
tool supports custom rules also so we could add our own (locally or upstream) 
for
commonly seen issues.

Stephen

-- 

CONTRIBUTING.md:16: MD006 Consider starting bulleted lists at the beginning of 
the line
CONTRIBUTING.md:32: MD006 Consider starting bulleted lists at the beginning of 
the line
CONTRIBUTING.md:61: MD006 Consider starting bulleted lists at the beginning of 
the line
CONTRIBUTING.md:88: MD006 Consider starting bulleted lists at the beginning of 
the line
CONTRIBUTING.md:360: MD009 Trailing spaces
CONTRIBUTING.md:362: MD009 Trailing spaces
CONTRIBUTING.md:350: MD010 Hard tabs
CONTRIBUTING.md:351: MD010 Hard tabs
CONTRIBUTING.md:352: MD010 Hard tabs
CONTRIBUTING.md:353: MD010 Hard tabs
CONTRIBUTING.md:354: MD010 Hard tabs
CONTRIBUTING.md:355: MD010 Hard tabs
CONTRIBUTING.md:356: MD010 Hard tabs
CONTRIBUTING.md:357: MD010 Hard tabs
CONTRIBUTING.md:358: MD010 Hard tabs
CONTRIBUTING.md:359: MD010 Hard tabs
CONTRIBUTING.md:317: MD034 Bare URL used
CONTRIBUTING.md:323: MD034 Bare URL used
CodingStyle.md:17: MD003 Header style
CodingStyle.md:29: MD003 Header style
CodingStyle.md:57: MD003 Header style
CodingStyle.md:106: MD003 Header style
CodingStyle.md:182: MD003 Header style
CodingStyle.md:196: MD003 Header style
CodingStyle.md:268: MD003 Header style
CodingStyle.md:280: MD003 Header style
CodingStyle.md:317: MD003 Header style
CodingStyle.md:332: MD003 Header style
CodingStyle.md:361: MD003 Header style
CodingStyle.md:389: MD003 Header style
CodingStyle.md:273: MD004 Unordered list style
CodingStyle.md:276: MD004 Unordered list style
CodingStyle.md:273: MD005 Inconsistent indentation for list items at the same 
level
CodingStyle.md:276: MD005 Inconsistent indentation for list items at the same 
level
CodingStyle.md:346: MD005 Inconsistent indentation for list items at the same 
level
CodingStyle.md:348: MD005 Inconsistent indentation for list items at the same 
level
CodingStyle.md:352: MD005 Inconsistent indentation for list items at the same 
level
CodingStyle.md:357: MD005 Inconsistent indentation for list items at the same 
level
CodingStyle.md:31: MD006 Consider starting bulleted lists at the beginning of 
the line
CodingStyle.md:33: MD009 Trailing spaces
CodingStyle.md:151: MD009 Trailing spaces
CodingStyle.md:28: MD012 Multiple consecutive blank lines
CodingStyle.md:56: MD012 Multiple consecutive blank lines
CodingStyle.md:181: MD012 Multiple consecutive blank lines
CodingStyle.md:267: MD012 Multiple consecutive blank lines
CodingStyle.md:279: MD012 Multiple consecutive blank lines
CodingStyle.md:316: MD012 Multiple consecutive blank lines
CodingStyle.md:331: MD012 Multiple consecutive blank lines
CodingStyle.md:360: MD012 Multiple consecutive blank lines
CodingStyle.md:388: MD012 Multiple consecutive blank lines
CodingStyle.md:446: MD012 Multiple consecutive blank lines
CodingStyle.md:484: MD012 Multiple consecutive blank lines
CodingStyle.md:523: MD012 Multiple consecutive blank lines
CodingStyle.md:529: MD012 Multiple consecutive blank lines
CodingStyle.md:148: MD029 Ordered list item prefix
CodingStyle.md:149: MD029 Ordered list item prefix
CodingStyle.md:150: MD029 Ordered list item prefix
CodingStyle.md:151: MD029 Ordered list item prefix
CodingStyle.md:348: MD029 Ordered list item prefix
CodingStyle.md:352: MD029 Ordered list item prefix
CodingStyle.md:357: MD029 Ordered list item prefix
CodingStyle.md:349: MD033 Inline HTML
CodingStyle.md:384: MD033 Inline HTML
CodingStyle.md:407: MD033 Inline HTML
CodingStyle.md:409: MD033 Inline HTML
CodingStyle.md:409: MD033 Inline HTML
CodingStyle.md:409: MD033 Inline HTML
CodingStyle.md:410: MD033 Inline HTML
CodingStyle.md:410: MD033 Inline HTML
CodingStyle.md:410: MD033 Inline HTML
CodingStyle.md:411: MD033 Inline HTML
CodingStyle.md:541: MD033 Inline HTML
CodingStyle.md:541: MD033 Inline HTML
CodingStyle.md:543: MD033 Inline HTML
CodingStyle.md:576: MD034 Bare URL used
CodingStyle.md:444: MD037 Spaces inside emphasis markers
DESIGN.md:726: MD004 Unordered list style
DESIGN.md:727: MD004 Unordered list style
DESIGN.md:728: MD004 Unordered list style
DESIGN.md:729: MD004 Unordered list style
DESIGN.md:730: MD004 Unordered list style
DESIGN.md:1072: MD004 Unordered list style
DESIGN.md:1076: MD004 Unordered list style
DESIGN.md:1079: MD004 Unordered list style
DESIGN.md:821: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:841: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:853: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:881: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:990: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:993: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:997: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:1005: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:1010: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:1014: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:1028: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:1040: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:1045: MD005 Inconsistent indentation for list items at the same level
DESIGN.md:23: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:37: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:111: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:198: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:244: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:285: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:300: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:432: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:517: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:535: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:547: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:563: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:570: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:675: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:726: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:776: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:790: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:821: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:990: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:1028: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:1066: MD006 Consider starting bulleted lists at the beginning of the 
line
DESIGN.md:1066: MD007 Unordered list indentation
DESIGN.md:92: MD012 Multiple consecutive blank lines
DESIGN.md:103: MD012 Multiple consecutive blank lines
DESIGN.md:294: MD012 Multiple consecutive blank lines
DESIGN.md:310: MD012 Multiple consecutive blank lines
DESIGN.md:358: MD012 Multiple consecutive blank lines
DESIGN.md:407: MD012 Multiple consecutive blank lines
DESIGN.md:524: MD012 Multiple consecutive blank lines
DESIGN.md:632: MD012 Multiple consecutive blank lines
DESIGN.md:699: MD012 Multiple consecutive blank lines
DESIGN.md:760: MD012 Multiple consecutive blank lines
DESIGN.md:1052: MD012 Multiple consecutive blank lines
DESIGN.md:1085: MD012 Multiple consecutive blank lines
DESIGN.md:688: MD023 Headers must start at the beginning of the line
DESIGN.md:12: MD025 Multiple top level headers in the same document
DESIGN.md:93: MD025 Multiple top level headers in the same document
DESIGN.md:104: MD025 Multiple top level headers in the same document
DESIGN.md:311: MD025 Multiple top level headers in the same document
DESIGN.md:359: MD025 Multiple top level headers in the same document
DESIGN.md:408: MD025 Multiple top level headers in the same document
DESIGN.md:525: MD025 Multiple top level headers in the same document
DESIGN.md:611: MD025 Multiple top level headers in the same document
DESIGN.md:633: MD025 Multiple top level headers in the same document
DESIGN.md:700: MD025 Multiple top level headers in the same document
DESIGN.md:761: MD025 Multiple top level headers in the same document
DESIGN.md:1053: MD025 Multiple top level headers in the same document
DESIGN.md:1086: MD025 Multiple top level headers in the same document
DESIGN.md:444: MD033 Inline HTML
DESIGN.md:452: MD033 Inline HTML
DESIGN.md:400: MD034 Bare URL used
...
tutorial/OVN-Tutorial.md:448: MD005 Inconsistent indentation for list items at 
the same level
tutorial/OVN-Tutorial.md:449: MD005 Inconsistent indentation for list items at 
the same level
tutorial/OVN-Tutorial.md:450: MD005 Inconsistent indentation for list items at 
the same level
tutorial/OVN-Tutorial.md:451: MD005 Inconsistent indentation for list items at 
the same level
tutorial/OVN-Tutorial.md:646: MD005 Inconsistent indentation for list items at 
the same level
tutorial/OVN-Tutorial.md:647: MD005 Inconsistent indentation for list items at 
the same level
tutorial/OVN-Tutorial.md:648: MD005 Inconsistent indentation for list items at 
the same level
tutorial/OVN-Tutorial.md:649: MD005 Inconsistent indentation for list items at 
the same level
tutorial/OVN-Tutorial.md:630: MD012 Multiple consecutive blank lines
tutorial/OVN-Tutorial.md:83: MD013 Line length
tutorial/OVN-Tutorial.md:84: MD013 Line length
tutorial/OVN-Tutorial.md:86: MD013 Line length
tutorial/OVN-Tutorial.md:87: MD013 Line length
tutorial/OVN-Tutorial.md:88: MD013 Line length
tutorial/OVN-Tutorial.md:92: MD013 Line length
tutorial/OVN-Tutorial.md:93: MD013 Line length
tutorial/OVN-Tutorial.md:106: MD013 Line length
tutorial/OVN-Tutorial.md:128: MD013 Line length
tutorial/OVN-Tutorial.md:133: MD013 Line length
tutorial/OVN-Tutorial.md:144: MD013 Line length
tutorial/OVN-Tutorial.md:222: MD013 Line length
tutorial/OVN-Tutorial.md:223: MD013 Line length
tutorial/OVN-Tutorial.md:225: MD013 Line length
tutorial/OVN-Tutorial.md:226: MD013 Line length
tutorial/OVN-Tutorial.md:227: MD013 Line length
tutorial/OVN-Tutorial.md:231: MD013 Line length
tutorial/OVN-Tutorial.md:232: MD013 Line length
tutorial/OVN-Tutorial.md:236: MD013 Line length
tutorial/OVN-Tutorial.md:237: MD013 Line length
tutorial/OVN-Tutorial.md:239: MD013 Line length
tutorial/OVN-Tutorial.md:240: MD013 Line length
tutorial/OVN-Tutorial.md:241: MD013 Line length
tutorial/OVN-Tutorial.md:245: MD013 Line length
tutorial/OVN-Tutorial.md:246: MD013 Line length
tutorial/OVN-Tutorial.md:684: MD013 Line length
tutorial/OVN-Tutorial.md:685: MD013 Line length
tutorial/OVN-Tutorial.md:692: MD013 Line length
tutorial/OVN-Tutorial.md:693: MD013 Line length
tutorial/OVN-Tutorial.md:694: MD013 Line length
tutorial/OVN-Tutorial.md:20: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:50: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:157: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:164: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:171: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:176: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:189: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:255: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:263: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:275: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:325: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:336: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:357: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:390: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:492: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:500: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:509: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:516: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:526: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:539: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:621: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:628: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:642: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:655: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:669: MD014 Dollar signs used before commands without 
showing output
tutorial/OVN-Tutorial.md:28: MD029 Ordered list item prefix
tutorial/OVN-Tutorial.md:30: MD029 Ordered list item prefix
tutorial/OVN-Tutorial.md:33: MD029 Ordered list item prefix
tutorial/OVN-Tutorial.md:666: MD038 Spaces inside code span elements
vtep/README.ovs-vtep.md:126: MD009 Trailing spaces
vtep/README.ovs-vtep.md:27: MD012 Multiple consecutive blank lines
vtep/README.ovs-vtep.md:22: MD025 Multiple top level headers in the same 
document
vtep/README.ovs-vtep.md:18: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:56: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:59: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:66: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:74: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:78: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:96: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:105: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:112: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:120: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:127: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:140: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:162: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:169: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:175: MD029 Ordered list item prefix
vtep/README.ovs-vtep.md:125: MD031 Fenced code blocks should be surrounded by 
blank lines
vtep/README.ovs-vtep.md:176: MD031 Fenced code blocks should be surrounded by 
blank lines
vtep/README.ovs-vtep.md:15: MD032 Lists should be surrounded by blank lines
vtep/README.ovs-vtep.md:18: MD032 Lists should be surrounded by blank lines
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to