Skip to main content

Basic Markdown Syntax Guide

Headers​

Start a line with a hash character # to set a heading. Organize your remarks with subheadings by starting a line with more hash characters, for example ####. Up to six levels of headings are supported.

Example:

# This is a H1 header

## This is a H2 header

### This is a H3 header

#### This is a H4 header

##### This is a H5 header

###### This is a H6 header

BlockQuotes​

Quote previous comments or text to set the context for your comment or text.

Quote single lines of text with > before the text. Use many > characters to nest quoted text. Quote blocks of lines of text by using the same level of > across many lines.

Example:

> Single line quote

> > Nested quote

> > multiple line

> > quote

Result:

Single line quote

Nested quote multiple line quote

Horizontal rules​

To add a horizontal rule, add a line that's a series of dashes ---. The line above the line containing the --- must be blank.

Example:

above

---

below

Result:

above


below

Emphasis (bold, italics, strikethrough)​

You can emphasize text by applying bold, italics, or strikethrough to characters:

To apply italics: surround the text with an asterisk * or underscore _ To apply bold: surround the text with double asterisks **. To apply strikethrough: surround the text with double tilde characters ~~. Combine these elements to apply emphasis to text.

Example:

Use emphasis in comments to express **strong** opinions and point out ~~corrections~~ **Bold, italicized text**
**~~Bold, strike-through text~~**

Result:

Use emphasis in comments to express strong opinions and point out corrections
Bold, italicized text
Bold, strike-through text

Code highlighting​

Highlight suggested code segments using code highlight blocks. To indicate a span of code, wrap it with three backtick quotes (``) on a new line at both the start and end of the block. To indicate code inline, wrap it with one backtick quote ().

Example:

``` CodeLanguage Code goes here ```

Result:

<html>
<head>
</title>
</head>
<body>
Code goes here
</body>
</html>

Tables​

Organize structured data with tables. Tables are especially useful for describing function parameters, object methods, and other data that have a clear name to description mapping. You can format tables in pull requests, wiki, and Markdown files such as README files and Markdown widgets.

• Place each table row on its own line • Separate table cells using the pipe character | • The first two lines of a table set the column headers and the alignment of elements in the table • Use colons (:) when dividing the header and body of tables to specify column alignment (left, center, right) • To start a new line, use the HTML break tag (< br/>) (Works within a Wiki but not elsewhere) • Make sure to end each row with a CR or LF. • A blank space is required before and after work item or pull request (PR) mentions inside a table cell.

Example:

| Heading 1 | Heading 2 | Heading 3 |
| --------- | :-------: | --------: |
| Cell A1 | Cell A2 | Cell A3 |
| Cell B1 | Cell B2 | Cell B3 |

Result:

Heading 1Heading 2Heading 3
Cell A1Cell A2Cell A3
Cell B1Cell B2Cell B3

Lists​

Organize related items with lists. You can add ordered lists with numbers, or unordered lists with just bullets.

Ordered lists start with a number followed by a period for each list item. Unordered lists start with a -. Begin each list item on a new line. In a Markdown file or widget, enter two spaces before the line break to begin a new paragraph, or enter two line breaks consecutively to begin a new paragraph.

Ordered or numbered lists​

Example:

1. First item.
2. Second item.
3. Third item.

Result:

  1. First item.
  2. Second item.
  3. Third item.

Bullet lists​

Example:

- Item 1
- Item 2
- Item 3

Result:

  • Item 1
  • Item 2
  • Item 3

Nested lists​

Example:

1. First item.
- Item 1
- Item 2
- Item 3
2. Second item.
- Nested item 1
- Nested item 2
- Nested item 3

Result:

  1. First item.
    • Item 1
    • Item 2
    • Item 3
  2. Second item.
    • Nested item 1
    • Nested item 2
    • Nested item 3

In pull request comments and wikis, HTTP and HTTPS URLs are automatically formatted as links. You can link to work items by entering the # key and a work item ID, and then choosing the work item from the list.

Avoid auto suggestions for work items by prefixing # with a backslash (). This action can be useful if you want to use # for color hex codes.

In Markdown files and widgets, you can set text hyperlinks for your URL using the standard Markdown link syntax:

Example:

[Samarth Docs](https://docs.samarth.ac.in)

Result:

Samarth Docs

Within Markdown files, anchor IDs are assigned to all headings when rendered as HTML. The ID is the heading text, with the spaces replaced by dashes (-) and all lower case. In general, the following conventions apply:

Punctuation marks and leading white spaces within a file name are ignored Upper case letters are converted to lower Spaces between letters are converted to dashes (-).

Example:

### Link to a heading in the page

[Link to a heading](#link-to-a-heading-in-the-page)

Result:

Link to Anchor Links

The ID is all lower case, and the link is case-sensitive, so be sure to use lower case, even though the heading itself uses upper case. You can also reference headings within another Markdown file:

[text to display](./target.md#heading-id)

In wiki, you can also reference heading in another page:

[text to display](/page-name#section-name)

Images​

To highlight issues or make things more interesting, you can add images and animated GIFs to the following aspects in your pull requests:

Comments Markdown files Wiki pages Use the following syntax to add an image:

Example:

![Text](URL)

Example: ![Illustration to use for new users](https://samarth.edu.in/wp-content/uploads/2020/01/Analysing-Data-Opportunities.png)

The text in the brackets describes the image being linked and the URL points to the image location.

Result:

Illustration to use for new users

The path to the image file can be a relative path or the absolute path in Git or TFVC, just like the path to another Markdown file in a link.

• Relative path: ![Image alt text](./image.png)

• Absolute path in Git: ![Image alt text](/media/markdown-guidance/image.png)

• Absolute path in TFVC: ![Image alt text]($/project/folder/media/markdown-guidance/image.png)

• Resize image: IMAGE_URL = WIDTH x HEIGHT

Note: Be sure to include a space before the equal sign.

Example: ![Image alt text]($/project/folder/media/markdown-guidance/image.png =500x250)

It's also possible to specify only the WIDTH by leaving out the HEIGHT value: IMAGE_URL =WIDTHx

Checklist or task list​

Lightweight task lists are great ways to track progress on your to-dos as a pull request creator or reviewer in the PR description or in a wiki page. Select the Markdown toolbar to get started or apply the format to selected text.

You can Use [ ] or [x] to support checklists. Precede the checklist with either -\<space> or 1.\<space> (any numeral).

Example - Apply the task list Markdown to a highlighted list

Example:

Example - Format a list as a task list

- [ ] A
- [ ] B
- [ ] C
- [x] A
- [x] B
- [x] C

Note: A checklist within a table isn't supported.

Result:

  • A
  • B
  • C
  • A
  • B
  • C

Emoji​

In pull request comments and wiki pages, you can use emojis to add character and react to comments in the request. Enter what you're feeling surrounded by : characters to get a matching emoji in your text. The full set of emojis are supported.

Example:

:smile:
:angry:

Result:

😄 😠

To escape emojis, enclose them using the ` character.

Example:

`:smile:` `:)` `:angry:`

Result:

:smile: :) :angry:

Ignore or escape Markdown syntax to enter specific or literal characters​

Example:

Some examples on inserting special characters:

Enter \\ to get \

Enter \_ to get \_

Enter \# to get #

Enter \( to get (

Enter \. to get .

Enter \! to get !

Enter \* to get \*