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