Contents
What is Markdown?
Markdown is an easy-to-use markup language that is used with plain text to add formatting elements (headings, bulleted lists, URLs) to plain text without the use of a formal text editor or the use of HTML tags.
Why Markdown?
- Can be used for everything (websites, documents, notes, books, presentations, email messaged, and technical documentation). - Portability: Files containing Markdown-formatted text can be opened using virtually any application. - Platform independent: You can create Markdown-formatted text on any device running any operating system. - Future proof: You’ll always be able to read Markdown-formatted text using a text editing application. - It is everywhere: Websites like Reddit and GitHub support Markdown, and lots of desktop and web-based applications support it.
How does Markdown work?
1. Create a Markdown file using a text editor or a dedicated Markdown application. The file should have an .md or .markdown extension. 2. Open the Markdown file in a Markdown application. 3. Use the Markdown application to convert the Markdown file to an HTML document. 4. View the HTML file in a web brower or use the markdown application to convert it to another file format, like PDF.
Pros & Cons
- simplicity, being fast and easy to learn made it very popular - all features of HTML can be used in Markdown and it is more readable rather than HTML - Markdown is not able to map different element types to each other, so it is less useful as a semantic tool - Creation of table of contents, reusing content, mixing parts together and managing larger documents are not possible Basics - more on [docs.github](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax)
Formating examples
Headings
##### *Create Heading*: `# The largest heading` `## The second largest heading` `##### The smallest heading` # Like This Heading
Text styles
##### *Styling text*: `**This is bold text**` `*This text is italicized* or _This text is italicized_` `**This text ist bold and _partly italicized_**` `***The entire text is bold and italicized***` **Like this bold text**
Quoting
##### *Quoting*: `> Text is a quote` >Like this quote `Use backticks (``) to code quote ` ``` \``` without backslash (\) This is a code quote block \```` ``` A code block like this ```
Links
##### *Links*: `This normal text includes the website [website text](https://docs.github.com)` ##### *Relative Links*: `We can link a relative to the current file by [text](path/file.md)` ##### *Images*: `We can display an image using ![image text](image_link)`
Lists
##### *List*: ``` [A link Like this to run Markdown ](https://stackedit.io/app#) ![test imge](https://picsum.photos/200/300) ```markdown - George Washington - John Adams - Thomas Jefferson ``` - We can also created - unordered lists 1. or create 2. ordered lists ```
- *Nested Lists*:
``` 1. First list item
- either (-) or (*) needs to be under the first character of the previous item * this would be the third nested list item
```
- *Mentioning people and Teams*:
`@name Do you understand how it works?`
``` @https://github.com/teslamotors
- *Footnotes*:
``` Simple footnote[^1] Footnote with several lines[^2] It is also possible to use words[^note]
[^1]: First reference [^2]: Second reference
with multiple lines
[^note]: words are still converted to numbers but makes it more readable for you as you edit. ```
- *Ignore Markdown formatting*:
`Just use a backwards dash in order to ignore the \*formatting\*` \*Ignore my format Like This*
- Emojis:
@Henrik :wink: This PR looks great :dizzy_face:
- LaTex
You can render LaTeX mathematical expressions using [KaTeX](https://khan.github.io/KaTeX/):
The *Gamma function* satisfying $\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N$ is via the Euler integral
$$ \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. $$
- Flowchart
- UML diagrams
You can render UML diagrams using [Mermaid](https://mermaidjs.github.io/). For example, this will produce a sequence diagram:
The author of this entry is