{"action":"created","comment":{"url":"https://api.github.com/repos/DealerDirect/guides/pulls/comments/87774057","pull_request_review_id":8369412,"id":87774057,"diff_hunk":"@@ -0,0 +1,1155 @@\n+# Dealerdirect Style Guide: Markdown\n+\n+> _“Life moves so fast. You gotta document the good times, man.”_ ~ Big Boi\n+\n+This guide defines the Markdown coding standards we use at Dealerdirect. The intent of this guide is to reduce cognitive\n+friction when scanning the Markdown source from different author, gain documentation of higher quality and gain more\n+compatibility across different Markdown renders.\n+\n+For almost every language a style guide exists, somehow Markdown is an exception. There are several attempts,\n+but none of the guides seems to be complete or they just simply cover (almost) every single option Markdown\n+has to offer. As a result, the Dealerdirect Markdown style guide was born.\n+\n+The key words \"MUST\", \"MUST NOT\", \"REQUIRED\", \"SHALL\", \"SHALL NOT\", \"SHOULD\",\n+\"SHOULD NOT\", \"RECOMMENDED\", \"MAY\", and \"OPTIONAL\" in this document are to be\n+interpreted as described in [RFC 2119][rfc2119].\n+\n+## Table of contents\n+\n+- [1. Basics](#1-basics)\n+\n+  - [1.1. Filenames](#11-filenames)\n+  - [1.2. Files](#12-files)\n+  - [1.3. Language](#13-language)\n+\n+- [2. Headings](#2-headings)\n+\n+- [3. Emphasis](#3-emphasis)\n+\n+- [4. Blockquotes](#4-blockquotes)\n+\n+- [5. Lists](#5-lists)\n+\n+  - [5.1. Unordered lists](#51-unordered-lists)\n+  - [5.2. Ordered lists](#52-ordered-lists)\n+  - [5.3. Task lists](#53-task-lists)\n+\n+- [6. Horizontal rules](#6-horizontal-rules)\n+\n+- [7. Code](#7-code)\n+\n+  - [7.1. Inline code](#71-inline-code)\n+  - [7.2. Code blocks](#72-code-blocks)\n+\n+- [8. Links](#8-links)\n+\n+  - [8.1. Inline links](#81-inline-links)\n+  - [8.2. Reference links](#82-reference-links)\n+  - [8.3. Automatic links](#83-automatic-links)\n+  - [8.4. Linking to books, blog and other external documents](#84-linking-to-books-blogs-and-other-external-documents)\n+\n+- [9. Images](#9-images)\n+\n+- [10. Tables](#10-tables)\n+\n+- [11. Emoji](#11-emoji)\n+\n+- [12. HTML](#12-html)\n+\n+## 1. Basics\n+\n+## 1.1. Filenames\n+\n+- All Markdown files MUST have the `.md` file extension.\n+\n+- It is RECOMMENDED to base filenames on the top-header level title.\n+\n+- Filenames MUST be lowercase, unless it is one of the following:\n+  - `README.md`\n+  - `LICENSE.md`\n+  - `CONTRIBUTING.md`\n+  - `CHANGELOG.md`\n+\n+- Filenames MUST NOT start with articles (e.g. `the`, `a`, `an`).\n+\n+- Filenames MUST NOT contain special characters, it is RECOMMENDED to replace them with hyphens.\n+\n+- Filenames MUST NOT contain spaces and/or punctuation characters, it is RECOMMENDED to replace them with hyphens.\n+\n+- Filenames MUST NOT start or end with a hyphen.\n+\n+- Filenames MUST NOT have consecutive hyphens.\n+\n+Good filenames:\n+\n+```\n+markdown-style-guide.md\n+introduction-into-coding.md\n+hello-world.md\n+```\n+\n+Bad filenames:\n+\n+```\n+.markdown-style.guide.md\n+-introduction-into-coding.md\n+the-hello-world-example.md\n+double--hypens.md\n+```\n+\n+### 1.2 Files\n+\n+- Files MUST use the Unix LF (line feed) line ending.\n+\n+- Files MUST only use UTF-8 encoding without BOM.\n+\n+- Files MUST end with a single blank line.\n+\n+- Lines SHOULD NOT be longer than 120 characters; lines longer SHOULD be split into multiple subsequent lines.\n+\n+- It is RECOMMENDED to break large paragraphs logically when trying to keep lines under 120 characters:\n+  <!--alex ignore period-->\n+  - _sentences_: after a period (`.`), question (`?`) or exclamation mark (`!`)\n+  - _clauses_: after words like `and`, `which`, `if` ... `then`, commas (`,`)\n+\n+- Lines SHOULD NOT be split into multiple line using word-breaks.\n+\n+- Consecutive blank lines MUST NOT exists, with the exception of code blocks where the code style guide for the coding \n+  language applies.\n+\n+- There MUST NOT be trailing whitespace at the end of non-blank lines unless\n+  it has a function such as indicating a line break.\n+\n+- In the rare case a line break is absolutely needed, one SHALL end the line with exactly two spaces.\n+\n+- There MUST NOT be trailing whitespace at the end of blank lines.\n+\n+- Lines MUST use an indent of 2 spaces and MUST NOT use tabs for indenting.\n+\n+- A single space MUST be used after sentences, when followed by another sentence.\n+\n+- A file MUST start with a header on the first line.\n+\n+### 1.3 Language\n+\n+<!--alex ignore american-->\n+- The language MUST be English, and in particular American English.\n+\n+- Spelling and grammar MUST be correct.\n+\n+- Files SHOULD NOT contain gender favoring, polarizing, race related, religion inconsiderate, or\n+  other unequal phrasing in its text.\n+\n+## 2. Headings\n+\n+- Headers MUST be in `atx` style, and MUST NOT contain a closing hash (`#`) character.\n+\n+- There MUST be a single space between the hash (`#`) character and the header text.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  # This is a correct header\n+  ```\n+  \n+  _Incorrect examples_:\n+  \n+  ```Markdown\n+  #This one is not correct\n+  \n+  # This one if also not correct #\n+  \n+  Neither is this header\n+  ----------------------\n+  ```\n+\n+- Headers MUST NOT be longer then 60 characters. Longer headers MUST be re-evaluated.\n+\n+- Headers MUST be preceded and followed by a newline. There is on exception,\n+  the header at the start of the document MUST NOT be preceded by a newline.\n+\n+- Headers MUST NOT increase by more than one \"level\" from one header to the next.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  # First level header\n+  \n+  ## Next level header\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  # First level header\n+  \n+  ### Next level header\n+  ```\n+\n+- The first letter of a header MUST be upper case, unless it is a word that always starts with lowercase letters.\n+\n+- The other letters SHOULD have the same case they would have in the middle of a sentence.\n+\n+  _Correct examples_:\n+  \n+  ```Markdown\n+  # This is a correct example of a header text\n+  ```\n+  \n+  ```Markdown\n+  # int main\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  # This is an Incorrect Example\n+  ```\n+\n+- Headers MUST NOT end with a punctuation character (`.`, `,`, `!`, `?`, `:`, `;`)\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  # How to install this software\n+  ```\n+\n+  _Incorrect examples_:\n+  \n+  ```Markdown\n+  # How to install this software:\n+  ```\n+\n+  ```Markdown\n+  # Hello world!\n+  ```\n+\n+- Numbered headers MUST be followed by a point (`.`) character after the number.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  ### 3.2.1. This header is numbered correctly\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  ### 3.2.1 This header is missing a point\n+  ```\n+\n+- Headers define sections. A sections MUST NOT be empty.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  ### 3.2.1. This it the first section\n+  \n+  Lorem ipsum is great for this purpose!\n+  \n+  ### 3.2.2. The start of the second section\n+  ```\n+\n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  ### 3.2.1. This it the first section\n+\n+  ### 3.2.2. The start of the second section\n+  ```\n+  \n+## 3. Emphasis\n+\n+- Bold text MUST use the double asterisk (`**`) format.\n+  \n+  _Correct example_:\n+\n+  ```Markdown\n+  **This text is printed in bold!**\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  __This text is also printed in bold...__\n+  ```\n+\n+- Italic text MUST use the underscore (`_`) format.\n+  \n+  _Correct example_:\n+\n+  ```Markdown\n+  _This text is printed in italic!_\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  *This text is also printed in italic...*\n+  ```\n+\n+- Striketrough MUST NOT be used.\n+\n+- Uppercase text for emphasis SHOULD NOT be used, use emphasis constructs like **bold** or _italic_ instead.\n+  The following keywords are excepted from this rule (as defined in [RFC 2119][rfc2119]):\n+  > \"MUST\", \"MUST NOT\", \"REQUIRED\", \"SHALL\", \"SHALL NOT\", \"SHOULD\",\n+  > \"SHOULD NOT\", \"RECOMMENDED\", \"MAY\", and \"OPTIONAL\"\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  *Note*: One SHALL NOT emphasis in uppercase.\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  NOTE: IT IS NOT RECOMMENDED TO DO THIS!\n+  ```\n+\n+- Emphasis constructs SHOULD NOT be used to introduce a multi line named section: use headers instead.\n+\n+## 4. Blockquotes\n+\n+- Blockquotes MUST use the greater-than (`>`) character.\n+\n+- The greater-than character MUST be followed by a single space.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  > This is a pretty nice blockquote :)\n+  ```\n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  >This blockquote is lacking some space.\n+  ```\n+\n+- Consecutive lines within a blockquote MUST also start with the greather-than (`>`) character.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  > I told my wife she was drawing her eyebrows too high.\n+  > She looked surprised.\n+  ```\n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  > I tried to catch fog yesterday.\n+  Mist.\n+  ```\n+\n+- Empty lines within a blockquote MUST use the greater-than (`>`) characater.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  > Parallel lines have so much in common.\n+  >\n+  > It's a shame they'll never meet.\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  > You're not completely useless...\n+  \n+  > You can always serve as a bad example.\n+  ```\n+\n+## 5. Lists\n+\n+- Lists MUST be preceded and followed by a newline.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  Shopping list:\n+  \n+  - Milk\n+  - Bread\n+  - Cheese\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  Shopping list:\n+  - Milk\n+  - Bread\n+  - Cheese\n+  ```\n+\n+- The first level of items in a list MUST NOT be indented.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  Shopping list:\n+  \n+  - Milk\n+  - Bread\n+  - Cheese\n+  ```\n+\n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  Shopping list:\n+  \n+    - Milk\n+    - Bread\n+    - Cheese\n+  ```\n+\n+- Subitems of a list MUST be indented by 2 spaces and MUST be preceded and followed by a newline.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  - First level\n+  \n+    - First subitem\n+    - Second subitem\n+    \n+  - Second item\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  - First level\n+    - First subitem\n+    - Second subitem\n+  - Second level\n+  ```\n+\n+- When one or more items in a list spans more than one line, the list is REQUIRED to have newlines between each item. \n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  - First item\n+  \n+  - This second item spans two lines\n+    Not because this is needed, but hey, we need an example.\n+    \n+  - Third item\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  - First item\n+  - This second item spans two lines\n+    Not because this is needed, but hey, we need an example.\n+  - Third item\n+  ```\n+\n+- The indentation what comes inside list MUST be same as the item it is in.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  - This item spans two lines\n+    This is the second line\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  - This item spans two lines\n+   This is the second line\n+  ```\n+\n+- Each list item MUST have the same case as it would have if\n+  it were concatenated with the sentence that comes before the list.\n+\n+  _Correct examples_:\n+  \n+  ```Markdown\n+  I want to eat:\n+\n+  - apples\n+  - bananas\n+  - grapes\n+  \n+  This is because one would say: \"I want to eat apples.\".\n+  ```\n+  \n+  ```Markdown\n+  # How to ride a bike\n+\n+  - Get on top of the bike.\n+  - Put your feet on the pedal.\n+  - Make the pedal turn.\n+  \n+  This is because one would say: \"How to ride a bike. Get on top of the bike.\"\n+  ```\n+\n+- A list item MUST be punctuated if either it contains multiple sentences, paragraphs or\n+  <!--alex ignore period-->\n+  starts with an upper case letter. The punctuation MUST BE omitted if it would be a period (`.`).\n+\n+  _Correct examples_:\n+  \n+  ```Markdown\n+  - apples\n+  - bananas\n+  - grapes\n+  ```\n+  \n+  ```Markdown\n+  - type in some code\n+  - Type in some more.\n+  - does it compile?\n+  - ship it!\n+  - goto first item. Start all over again.\n+  ```\n+\n+### 5.1. Unordered lists\n+\n+- Items in an ordered list MUST be created using a hyphen (`-`) character.\n+\n+- The hyphen (`-`) character MUST be followed by a space.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  - First item\n+  - Second item\n+  - Third item\n+  ```\n+  \n+  _Incorrect examples_:\n+  \n+  ```Markdown\n+  -First item\n+  -Second item\n+  -  Third item\n+  ```\n+  \n+  ```Markdown\n+  * First item\n+  * Second item\n+  * Third item\n+  ```\n+  \n+  ```Markdown\n+  + First item\n+  + Second item\n+  + Third item\n+  ```\n+\n+### 5.2. Ordered lists\n+\n+- It is RECOMMENDED to use unordered lists unless you intent to refer to items by their number.\n+\n+- Ordered list MUST increment by one, relative to the starting point.\n+\n+- Ordered list markers MUST be followed by a point (`.`) character and a space character.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  1. First item\n+  2. Second item\n+  3. Third item\n+  ```\n+  \n+  _Incorrect examples_:\n+  \n+  ```Markdown\n+  1 First item\n+  2 Second item\n+  3 Third item\n+  ```\n+\n+  ```Markdown\n+  1. First item\n+  1. Second item\n+  1. Third item\n+  ```\n+\n+  ```Markdown\n+  1.First item\n+  3.Second item\n+  4.Third item\n+  ```\n+\n+### 5.3. Task lists\n+\n+- It is RECOMMENDED to use unordered lists for tasks list unless you intent to refer to items by their number.\n+\n+- Task checkbox MUST use the opening bracket (`[`) and closing bracket (`]`) characters.\n+\n+- Uncompleted tasks MUST use the space character.\n+\n+- Completed tasks MUST use the lower case x character.\n+\n+- The task checkbox MUST be followed by a space character.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  Todo:\n+  \n+  - [x] Create plan.\n+  - [ ] Rule the world!\n+  ```\n+  \n+  _Incorrect example_:\n+  ```Markdown\n+  Todo:\n+  \n+  - [X]Create plan.\n+  - []Rule the world!\n+  ```\n+\n+## 6. Horizontal rules\n+\n+- Hyphens (`-`) MUST be used for creating horizontal rules.\n+- A horizontal rule MUST be 80 characters wide and MUST NOT contain spaces.\n+- Horizontal rules MUST NOT be used to indicate the end of a header.\n+- Horizontal rules MUST be preceded and followed by a newline\n+\n+```Markdown\n+This is an example of a horizontal rule.\n+\n+-------------------------------------------------------------------------------\n+\n+80 Hyphens, preceded and followed by a newline.\n+```\n+\n+## 7. Code\n+\n+### 7.1. Inline code\n+\n+- Inline code MUST use a backtick (`` ` ``) character.\n+\n+- Inline code SHOULD use a single backtick (`` ` ``) character.\n+\n+- There MUST NOT be any spaces between the backticks (`` ` ``) and the code.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  Please use `apt-get` to install packages on your Debian system.\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  Please use ` apt-get ` to install packages on your Debian system.\n+  ```\n+\n+- Inline code containing backticks MAY use double backticks (``` `` ```) and in really rare cases the inline code\n+  contains double backticks, triple backticks (```` ``` ````) MAY be used.\n+\n+  _Example_:\n+  \n+  ```Markdown\n+  Displaying a single backtick (`` ` ``) is actually a very special and rare case.\n+  ```\n+\n+- Shell code MUST NOT be prefixed with a dollar character (`$`).\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  Please use `apt-get` to install packages on your Debian system.\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  Please use `$ apt-get` to install packages on your Debian system.\n+  ```\n+\n+- It is RECOMMENDED to use inline code for:\n+\n+  - executables\n+  - file paths\n+  - version numbers\n+  - capitalized explanation of abbreviations\n+  - specific computer and programming terms not found in the dictionary\n+\n+### 7.2. Code blocks\n+\n+- Code blocks MUST NOT be indent, unless the code block is placed inside a list.\n+\n+- Code blocks MUST be preceded and followed by a newline.\n+\n+- Code blocks MUST be fenced using three backtick characters (```` ``` ````).\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+      To generate a PHP info page use this code:\n+  \n+      ```PHP\n+      <?php\n+        phpinfo();\n+      ```\n+  ```\n+\n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  To generate a PHP info page use this code:\n+  \n+    <?php\n+      phpinfo();\n+  ```\n+\n+- Every code block MUST have a language flag specified.\n+\n+- There MUST NOT be spacing between the backticks and the language flag.\n+\n+- When the code block is used to display monospaced text, `txt` MUST be used as the language flag.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+      ```txt\n+      This is monospaced text.\n+      ```\n+  ```\n+\n+- Shell code MUST NOT be prefixed with a dollar character (`$`), unless you will be showing the command output on\n+  the same code block.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+      ```txt\n+      $ rubocop .\n+      \n+      Inspecting 16 files\n+      ................\n+    \n+      16 files inspected, no offenses detected\n+      ```\n+  ```\n+\n+  _Incorrect example_:\n+  \n+  ```Markdown\n+      ```txt\n+      $ gem install rubocop\n+      $ rubocop .\n+      ```\n+  ```\n+\n+- Code inside a code block MUST NOT be indented.\n+\n+_Note_: Code blocks shown inside the above code block examples are indented. Even tough this is against the rules in\n+this guide, it is the only way of displaying a Markdown fenced code block inside a Markdown fenced code block.\n+\n+## 8. Links\n+\n+- The text that needs to be a link MUST be delimited by square brackets (`[`, `]`).\n+\n+- Links to internal pages MUST use relative paths.\n+\n+- Links MUST NOT have an extra trailing slash (`/`)\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  <http://www.example.com>\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  <http://www.example.com/>\n+  ```\n+\n+- All links, internal and external, MUST work.\n+\n+### 8.1. Inline links\n+\n+- Inline links SHOULD only be used for internal links and SHOULD NOT be used for external links, unless you are trying\n+  to represent a list of links (e.g. A book list).\n+\n+- The link itself MUST be wrapped into parentheses (`(`, `)`).\n+\n+  _Example_:\n+  \n+  ```Markdown\n+  [See the contributing guide for more info](/CONTRIBUTING.md)\n+  ```\n+\n+- There MUST NOT be spacing between brackets of the link text and the parentheses containing the link.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  [See the contributing guide for more info](/CONTRIBUTING.md)\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  [See the contributing guide for more info] (/CONTRIBUTING.md)\n+  ```\n+\n+- Link titles MUST be surrounded double quotes (`\"`), with a space between the link and the link title.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  [See the contributing guide for more info](/CONTRIBUTING.md \"Contributing guide\")\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  [See the contributing guide for more info](/CONTRIBUTING.md 'Contributing guide')\n+  ```\n+\n+### 8.2. Reference links\n+\n+- Reference links SHOULD only be used for external links and SHOULD NOT be used for internal links.\n+\n+- The reference label MUST be delimited by square brackets and MUST NOT be omitted.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  [Visit Google][google]\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  [google]\n+  ```\n+\n+- There MUST NOT be spacing between the link and reference label brackets.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  [Visit Google][google]\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  [Visit Google] [google]\n+  ```\n+\n+- In case the link text equals the reference label, the contents of the reference label SHOULD be omitted.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  [google][]\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  [google][google]\n+  ```\n+\n+- Reference labels MUST be specified in lower case.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  [Visit Google][google]\n+  ```\n+  \n+  _Incorrect examples_:\n+  \n+  ```Markdown\n+  [Visit Google][]\n+  [Visit Google][Google]\n+  ```\n+\n+- A reference link label MUST match a reference link definition. Undefined references are not allowed.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  [Google][google]\n+  \n+  [google]: http://www.google.com\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  [Google][google]\n+  ```\n+\n+- The reference link definition MUST be delimited by square brackets, followed by semicolon (`:`) and a space.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  [google]: http://www.google.com\n+  ```\n+  \n+  _Incorrect examples_:\n+  \n+  ```Markdown\n+  [google]:http://www.google.com\n+  [google] :http://www.google.com\n+  [google] : http://www.google.com\n+  ```\n+\n+- Link titles MUST be surrounded double quotes (`\"`), with a space between the link and the link title.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  [google]: http://www.google.com \"Google Search\"\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  [google]: http://www.google.com 'Google Search'\n+  ```\n+\n+- Reference link definitions MUST be placed at the end of the file.\n+\n+- There MUST NOT be any unused link definitions in the file.\n+\n+- Each link definition MUST be unique, duplicates are not allowed.\n+\n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  [google]: http://www.google.com \"Google Search\"\n+  [google]: http://www.google.nl \"Google Search (Dutch)\"\n+  ```\n+\n+### 8.3. Automatic links\n+\n+- Automatic links MUST be enclosed inside less-than (`<`) and greater-than (`>`) characters.\n+\n+  _Example_:\n+  \n+  ```Markdown\n+  <http://www.google.com>\n+  ```\n+\n+- Automatic links MUST start with a protocol.\n+\n+  _Correct examples_:\n+  \n+  ```Markdown\n+  <http://www.google.com>\n+  <mailto:opensource@dealerdirect.nl>\n+  ```\n+  \n+  _Incorrect examples_:\n+  ```Markdown\n+  <www.google.com>\n+  <opensource@dealerdirect.nl>\n+  ```\n+\n+- Email addresses MUST use automatic links.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  Please mail us for questions at <mailto:opensource@dealerdirect.nl>\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  Please mail us for questions at opensource@dealerdirect.nl\n+  ```\n+\n+- Links to websites SHOULD NOT use automatic links, unless the full link is displayed.\n+\n+### 8.4. Linking to books, blogs and other external documents\n+\n+- The actual book/blog/document title MUST be linked.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  [A Small Book of Random Numbers: Volume 1](https://www.amazon.co.uk/dp/1452818363/)\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  Read [this](https://www.amazon.co.uk/dp/1452818363/) book.\n+  ```\n+\n+- The author MUST not be part of the link, is optional and MUST be separated using a dash (`-`) surrounded by spaces.\n+\n+  _Correct example_:\n+  \n+  ```Markdown\n+  [A Small Book of Random Numbers: Volume 1](https://www.amazon.co.uk/dp/1452818363/) - James McNalley\n+  ```\n+\n+  _Incorrect examples_:\n+  \n+  ```Markdown\n+  [A Small Book of Random Numbers: Volume 1 by James McNally](https://www.amazon.co.uk/dp/1452818363/)\n+  [A Small Book of Random Numbers: Volume 1 - James McNally](https://www.amazon.co.uk/dp/1452818363/)\n+  [A Small Book of Random Numbers: Volume 1](https://www.amazon.co.uk/dp/1452818363/)-James McNalley\n+  [A Small Book of Random Numbers: Volume 1](https://www.amazon.co.uk/dp/1452818363/) James McNalley\n+  ```\n+\n+- In case the link points to a binary version of the book or document, the format MUST be specified between \n+  parentheses (`(`, `)`).\n+  \n+  _Correct examples_:\n+  \n+  ```Markdown\n+  [Barcode Overview](http://www.tec-it.com/download/PDF/Barcode_Reference_EN.pdf) (PDF)\n+  [Code Connected Volume 1](http://hintjens.wdfiles.com/local--files/main:files/cc1pe.pdf) - Pieter Hintjens (PDF)\n+  ```\n+\n+  _Incorrect examples_:\n+  \n+  ```Markdown\n+  [Barcode Overview](http://www.tec-it.com/download/PDF/Barcode_Reference_EN.pdf)\n+  [Code Connected Volume 1](http://hintjens.wdfiles.com/local--files/main:files/cc1pe.pdf) - Pieter Hintjens(PDF)\n+  ```\n+\n+- If the book or document is available in multiple formats, it is RECOMMENDED to add linked additional formats in the\n+  format specification.\n+  \n+  _Correct example_:\n+  \n+  ```Markdown\n+  [A Unix Person's Guide to PowerShell][powershellpdf] - Matt Penny (PDF, [ePub][powershellepub])\n+  ```\n+  \n+  _Incorrect example_:\n+  \n+  ```Markdown\n+  [A Unix Person's Guide to PowerShell][powershellpdf] - Matt Penny (PDF)\n+  [A Unix Person's Guide to PowerShell][powershellepub] - Matt Penny (ePub)\n+  ```\n+  \n+## 9. Images\n+\n+- Images MUST follow the same syntax as links, but preceded with an exclamation (`!`) character.\n+- Images MUST follow all same rules as links.\n+- Links to internal images MUST use the inline link style and use relative paths.\n+- Links to external images MUST use the reference link style.\n+\n+_Examples_:\n+\n+```Markdown\n+![alt text](image.png \"Image title\")\n+\n+[![Google][first google logo]][google]\n+\n+[google]: http://www.google.com \"Google Search\"\n+[first google logo]: https://en.wikipedia.org/wiki/Google_logo#/media/File:First-google-logo.gif \"Google Logo\"\n+```\n+\n+## 10. Tables\n+\n+- Tables MUST NOT be indent, unless the table is placed inside a list.\n+- Tables MUST be preceded and followed by a newline.\n+- Tables MUST be fenced with pipes (`|`).\n+- The table opening pipe (`|`) MUST be followed by a space character.\n+- The table closing pipe (`|`) MUST be preceded by a space character.\n+- Table header and body MUST be separated using at least trhee hyphens (`---`), wider column MUST match column width.\n+- Pipe characters, delimiting columns, must be preceded and followed by a space characte\n+- All pipe characters in a table MUST be align vertically.\n+- Column width SHALL be determined by the longest cell in the column.\n+\n+_Correct example_:\n+\n+```Markdown\n+| Tables  | Are     | Cool  |\n+| ------- | ------- | ----- |\n+| apples  | a lot   | $1600 |\n+| bananas | a dozen | $12   |\n+| grapes  | one     | $1    |\n+```\n+\n+_Incorrect example_:\n+\n+```Markdown\n+Tables | Are | Cool\n+--- | --- | ---\n+apples | a lot | $1600\n+bananas | a dozen | $12\n+grapes | one | $1\n+```\n+\n+- Tables column contents MAY be aligned using the semicolon (`:`) in the body and header separator.\n+\n+  _Example_:\n+  \n+  ```Markdown\n+  | Left    | Centered | Right |\n+  | :------ | :------: | ----: |\n+  | apples  | a lot    | $1600 |\n+  | bananas | a dozen  | $12   |\n+  | grapes  | one      | $1    |\n+  ```\n+\n+## 11. Emoji\n+\n+- It is RECOMMENDED to use emoji, they help convey tone and intent, both of which are frequently lost in translation\n+  when communicating online.\n+\n+- In order to maintain maximum compatibility with different platform, used emoji MUST be listed on the emoji cheat ","path":"code-styling/markdown/README.md","position":1108,"original_position":1108,"commit_id":"88eb2e3f173a326a9ec357b676d97afa40fb21d8","original_commit_id":"88eb2e3f173a326a9ec357b676d97afa40fb21d8","user":{"login":"hipio","id":3717518,"avatar_url":"https://avatars.githubusercontent.com/u/3717518?v=3","gravatar_id":"","url":"https://api.github.com/users/hipio","html_url":"https://github.com/hipio","followers_url":"https://api.github.com/users/hipio/followers","following_url":"https://api.github.com/users/hipio/following{/other_user}","gists_url":"https://api.github.com/users/hipio/gists{/gist_id}","starred_url":"https://api.github.com/users/hipio/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hipio/subscriptions","organizations_url":"https://api.github.com/users/hipio/orgs","repos_url":"https://api.github.com/users/hipio/repos","events_url":"https://api.github.com/users/hipio/events{/privacy}","received_events_url":"https://api.github.com/users/hipio/received_events","type":"User","site_admin":false},"body":"Why put the link on a newline?","created_at":"2016-11-14T10:34:35Z","updated_at":"2016-11-14T10:35:07Z","html_url":"https://github.com/DealerDirect/guides/pull/1#discussion_r87774057","pull_request_url":"https://api.github.com/repos/DealerDirect/guides/pulls/1","_links":{"self":{"href":"https://api.github.com/repos/DealerDirect/guides/pulls/comments/87774057"},"html":{"href":"https://github.com/DealerDirect/guides/pull/1#discussion_r87774057"},"pull_request":{"href":"https://api.github.com/repos/DealerDirect/guides/pulls/1"}}},"pull_request":{"url":"https://api.github.com/repos/DealerDirect/guides/pulls/1","id":93539026,"html_url":"https://github.com/DealerDirect/guides/pull/1","diff_url":"https://github.com/DealerDirect/guides/pull/1.diff","patch_url":"https://github.com/DealerDirect/guides/pull/1.patch","issue_url":"https://api.github.com/repos/DealerDirect/guides/issues/1","number":1,"state":"open","locked":false,"title":"Initial version / proposal of the Markdown style guide","user":{"login":"frenck","id":195327,"avatar_url":"https://avatars.githubusercontent.com/u/195327?v=3","gravatar_id":"","url":"https://api.github.com/users/frenck","html_url":"https://github.com/frenck","followers_url":"https://api.github.com/users/frenck/followers","following_url":"https://api.github.com/users/frenck/following{/other_user}","gists_url":"https://api.github.com/users/frenck/gists{/gist_id}","starred_url":"https://api.github.com/users/frenck/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/frenck/subscriptions","organizations_url":"https://api.github.com/users/frenck/orgs","repos_url":"https://api.github.com/users/frenck/repos","events_url":"https://api.github.com/users/frenck/events{/privacy}","received_events_url":"https://api.github.com/users/frenck/received_events","type":"User","site_admin":false},"body":"My proposal for the Markdown style guide. Looking forward to your review :)","created_at":"2016-11-14T10:12:46Z","updated_at":"2016-11-14T10:35:07Z","closed_at":null,"merged_at":null,"merge_commit_sha":"c568cf8e44741f128572e858374d135ce681b226","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/DealerDirect/guides/pulls/1/commits","review_comments_url":"https://api.github.com/repos/DealerDirect/guides/pulls/1/comments","review_comment_url":"https://api.github.com/repos/DealerDirect/guides/pulls/comments{/number}","comments_url":"https://api.github.com/repos/DealerDirect/guides/issues/1/comments","statuses_url":"https://api.github.com/repos/DealerDirect/guides/statuses/88eb2e3f173a326a9ec357b676d97afa40fb21d8","head":{"label":"DealerDirect:code-styling/markdown","ref":"code-styling/markdown","sha":"88eb2e3f173a326a9ec357b676d97afa40fb21d8","user":{"login":"DealerDirect","id":19687669,"avatar_url":"https://avatars.githubusercontent.com/u/19687669?v=3","gravatar_id":"","url":"https://api.github.com/users/DealerDirect","html_url":"https://github.com/DealerDirect","followers_url":"https://api.github.com/users/DealerDirect/followers","following_url":"https://api.github.com/users/DealerDirect/following{/other_user}","gists_url":"https://api.github.com/users/DealerDirect/gists{/gist_id}","starred_url":"https://api.github.com/users/DealerDirect/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DealerDirect/subscriptions","organizations_url":"https://api.github.com/users/DealerDirect/orgs","repos_url":"https://api.github.com/users/DealerDirect/repos","events_url":"https://api.github.com/users/DealerDirect/events{/privacy}","received_events_url":"https://api.github.com/users/DealerDirect/received_events","type":"Organization","site_admin":false},"repo":{"id":71465647,"name":"guides","full_name":"DealerDirect/guides","owner":{"login":"DealerDirect","id":19687669,"avatar_url":"https://avatars.githubusercontent.com/u/19687669?v=3","gravatar_id":"","url":"https://api.github.com/users/DealerDirect","html_url":"https://github.com/DealerDirect","followers_url":"https://api.github.com/users/DealerDirect/followers","following_url":"https://api.github.com/users/DealerDirect/following{/other_user}","gists_url":"https://api.github.com/users/DealerDirect/gists{/gist_id}","starred_url":"https://api.github.com/users/DealerDirect/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DealerDirect/subscriptions","organizations_url":"https://api.github.com/users/DealerDirect/orgs","repos_url":"https://api.github.com/users/DealerDirect/repos","events_url":"https://api.github.com/users/DealerDirect/events{/privacy}","received_events_url":"https://api.github.com/users/DealerDirect/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/DealerDirect/guides","description":"Dealerdirect guides","fork":false,"url":"https://api.github.com/repos/DealerDirect/guides","forks_url":"https://api.github.com/repos/DealerDirect/guides/forks","keys_url":"https://api.github.com/repos/DealerDirect/guides/keys{/key_id}","collaborators_url":"https://api.github.com/repos/DealerDirect/guides/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/DealerDirect/guides/teams","hooks_url":"https://api.github.com/repos/DealerDirect/guides/hooks","issue_events_url":"https://api.github.com/repos/DealerDirect/guides/issues/events{/number}","events_url":"https://api.github.com/repos/DealerDirect/guides/events","assignees_url":"https://api.github.com/repos/DealerDirect/guides/assignees{/user}","branches_url":"https://api.github.com/repos/DealerDirect/guides/branches{/branch}","tags_url":"https://api.github.com/repos/DealerDirect/guides/tags","blobs_url":"https://api.github.com/repos/DealerDirect/guides/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/DealerDirect/guides/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/DealerDirect/guides/git/refs{/sha}","trees_url":"https://api.github.com/repos/DealerDirect/guides/git/trees{/sha}","statuses_url":"https://api.github.com/repos/DealerDirect/guides/statuses/{sha}","languages_url":"https://api.github.com/repos/DealerDirect/guides/languages","stargazers_url":"https://api.github.com/repos/DealerDirect/guides/stargazers","contributors_url":"https://api.github.com/repos/DealerDirect/guides/contributors","subscribers_url":"https://api.github.com/repos/DealerDirect/guides/subscribers","subscription_url":"https://api.github.com/repos/DealerDirect/guides/subscription","commits_url":"https://api.github.com/repos/DealerDirect/guides/commits{/sha}","git_commits_url":"https://api.github.com/repos/DealerDirect/guides/git/commits{/sha}","comments_url":"https://api.github.com/repos/DealerDirect/guides/comments{/number}","issue_comment_url":"https://api.github.com/repos/DealerDirect/guides/issues/comments{/number}","contents_url":"https://api.github.com/repos/DealerDirect/guides/contents/{+path}","compare_url":"https://api.github.com/repos/DealerDirect/guides/compare/{base}...{head}","merges_url":"https://api.github.com/repos/DealerDirect/guides/merges","archive_url":"https://api.github.com/repos/DealerDirect/guides/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/DealerDirect/guides/downloads","issues_url":"https://api.github.com/repos/DealerDirect/guides/issues{/number}","pulls_url":"https://api.github.com/repos/DealerDirect/guides/pulls{/number}","milestones_url":"https://api.github.com/repos/DealerDirect/guides/milestones{/number}","notifications_url":"https://api.github.com/repos/DealerDirect/guides/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/DealerDirect/guides/labels{/name}","releases_url":"https://api.github.com/repos/DealerDirect/guides/releases{/id}","deployments_url":"https://api.github.com/repos/DealerDirect/guides/deployments","created_at":"2016-10-20T13:25:16Z","updated_at":"2016-11-06T11:03:09Z","pushed_at":"2016-11-14T10:12:47Z","git_url":"git://github.com/DealerDirect/guides.git","ssh_url":"git@github.com:DealerDirect/guides.git","clone_url":"https://github.com/DealerDirect/guides.git","svn_url":"https://github.com/DealerDirect/guides","homepage":null,"size":16,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":0,"default_branch":"master"}},"base":{"label":"DealerDirect:master","ref":"master","sha":"a30e56cced1ae5463f7a9262b8825be85912d859","user":{"login":"DealerDirect","id":19687669,"avatar_url":"https://avatars.githubusercontent.com/u/19687669?v=3","gravatar_id":"","url":"https://api.github.com/users/DealerDirect","html_url":"https://github.com/DealerDirect","followers_url":"https://api.github.com/users/DealerDirect/followers","following_url":"https://api.github.com/users/DealerDirect/following{/other_user}","gists_url":"https://api.github.com/users/DealerDirect/gists{/gist_id}","starred_url":"https://api.github.com/users/DealerDirect/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DealerDirect/subscriptions","organizations_url":"https://api.github.com/users/DealerDirect/orgs","repos_url":"https://api.github.com/users/DealerDirect/repos","events_url":"https://api.github.com/users/DealerDirect/events{/privacy}","received_events_url":"https://api.github.com/users/DealerDirect/received_events","type":"Organization","site_admin":false},"repo":{"id":71465647,"name":"guides","full_name":"DealerDirect/guides","owner":{"login":"DealerDirect","id":19687669,"avatar_url":"https://avatars.githubusercontent.com/u/19687669?v=3","gravatar_id":"","url":"https://api.github.com/users/DealerDirect","html_url":"https://github.com/DealerDirect","followers_url":"https://api.github.com/users/DealerDirect/followers","following_url":"https://api.github.com/users/DealerDirect/following{/other_user}","gists_url":"https://api.github.com/users/DealerDirect/gists{/gist_id}","starred_url":"https://api.github.com/users/DealerDirect/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DealerDirect/subscriptions","organizations_url":"https://api.github.com/users/DealerDirect/orgs","repos_url":"https://api.github.com/users/DealerDirect/repos","events_url":"https://api.github.com/users/DealerDirect/events{/privacy}","received_events_url":"https://api.github.com/users/DealerDirect/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/DealerDirect/guides","description":"Dealerdirect guides","fork":false,"url":"https://api.github.com/repos/DealerDirect/guides","forks_url":"https://api.github.com/repos/DealerDirect/guides/forks","keys_url":"https://api.github.com/repos/DealerDirect/guides/keys{/key_id}","collaborators_url":"https://api.github.com/repos/DealerDirect/guides/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/DealerDirect/guides/teams","hooks_url":"https://api.github.com/repos/DealerDirect/guides/hooks","issue_events_url":"https://api.github.com/repos/DealerDirect/guides/issues/events{/number}","events_url":"https://api.github.com/repos/DealerDirect/guides/events","assignees_url":"https://api.github.com/repos/DealerDirect/guides/assignees{/user}","branches_url":"https://api.github.com/repos/DealerDirect/guides/branches{/branch}","tags_url":"https://api.github.com/repos/DealerDirect/guides/tags","blobs_url":"https://api.github.com/repos/DealerDirect/guides/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/DealerDirect/guides/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/DealerDirect/guides/git/refs{/sha}","trees_url":"https://api.github.com/repos/DealerDirect/guides/git/trees{/sha}","statuses_url":"https://api.github.com/repos/DealerDirect/guides/statuses/{sha}","languages_url":"https://api.github.com/repos/DealerDirect/guides/languages","stargazers_url":"https://api.github.com/repos/DealerDirect/guides/stargazers","contributors_url":"https://api.github.com/repos/DealerDirect/guides/contributors","subscribers_url":"https://api.github.com/repos/DealerDirect/guides/subscribers","subscription_url":"https://api.github.com/repos/DealerDirect/guides/subscription","commits_url":"https://api.github.com/repos/DealerDirect/guides/commits{/sha}","git_commits_url":"https://api.github.com/repos/DealerDirect/guides/git/commits{/sha}","comments_url":"https://api.github.com/repos/DealerDirect/guides/comments{/number}","issue_comment_url":"https://api.github.com/repos/DealerDirect/guides/issues/comments{/number}","contents_url":"https://api.github.com/repos/DealerDirect/guides/contents/{+path}","compare_url":"https://api.github.com/repos/DealerDirect/guides/compare/{base}...{head}","merges_url":"https://api.github.com/repos/DealerDirect/guides/merges","archive_url":"https://api.github.com/repos/DealerDirect/guides/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/DealerDirect/guides/downloads","issues_url":"https://api.github.com/repos/DealerDirect/guides/issues{/number}","pulls_url":"https://api.github.com/repos/DealerDirect/guides/pulls{/number}","milestones_url":"https://api.github.com/repos/DealerDirect/guides/milestones{/number}","notifications_url":"https://api.github.com/repos/DealerDirect/guides/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/DealerDirect/guides/labels{/name}","releases_url":"https://api.github.com/repos/DealerDirect/guides/releases{/id}","deployments_url":"https://api.github.com/repos/DealerDirect/guides/deployments","created_at":"2016-10-20T13:25:16Z","updated_at":"2016-11-06T11:03:09Z","pushed_at":"2016-11-14T10:12:47Z","git_url":"git://github.com/DealerDirect/guides.git","ssh_url":"git@github.com:DealerDirect/guides.git","clone_url":"https://github.com/DealerDirect/guides.git","svn_url":"https://github.com/DealerDirect/guides","homepage":null,"size":16,"stargazers_count":0,"watchers_count":0,"language":null,"has_issues":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":1,"forks":0,"open_issues":1,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/DealerDirect/guides/pulls/1"},"html":{"href":"https://github.com/DealerDirect/guides/pull/1"},"issue":{"href":"https://api.github.com/repos/DealerDirect/guides/issues/1"},"comments":{"href":"https://api.github.com/repos/DealerDirect/guides/issues/1/comments"},"review_comments":{"href":"https://api.github.com/repos/DealerDirect/guides/pulls/1/comments"},"review_comment":{"href":"https://api.github.com/repos/DealerDirect/guides/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/DealerDirect/guides/pulls/1/commits"},"statuses":{"href":"https://api.github.com/repos/DealerDirect/guides/statuses/88eb2e3f173a326a9ec357b676d97afa40fb21d8"}}}}
{"actor":{"display_login":"hipio"}}