How to post like a pro - Complete guide to Markdown formatting
Hive supports a mixture of Markdown & HTML when creating posts. This is fairly standard regardless of the front-end you choose to post from. Only partial support of Markdown & HTML are supported. This guide will cover 98% of the functionality you will need to make your posts look awesome.
This is an updated version of my previous Markdown 101 guide.
I have personally grown to love using Markdown as it allows me to write as I normally will but easily add formatting and style to my posts. I also use Markdown for notes while developing.
I will cover some HTML elements in this guide as well as they relate to posting on Hive.
Headers
Almost every post will benefit from headers, this allows you to visually break down posts into sections and avoids the initial information overload most long-form posts create.
Headers correspond directly to HTML H tags, typically H1, H2, H3, H6 tags to create similar sections in HTML content. Header tags have always had some influence on Search Engine Optimization (SEO) but more importantly on readability.
You want to use header tags to highlight keys sections of your posts and engage your audience. The most common header tag is the H1 which is simply a #
in markdown. If you want to highlight a section of your post you would use the #
pound sign at the start of a line.
This is the most common header (##)
There are six headers available, each one is smaller than the last. To create a smaller header, just add # to your header.
- Header 1 #
- Header 2 ##
- Header 3 ###
- Header 4 #####
- Header 5 #####
- Header 6 ######
Headers do wonders for making your posts more readable and reduces reading fatigue. In fact, I would go so far to say headers will increase how many people read your content by a rather significant margin.
Generally it is good practice to only use one main H1 (#) once in your document and use H2 (##) or H3 (###) for your other headers.
You also want to make sure you have a space between the pound signs and your text. It is also generally accepted under Markdown that your first line of text will follow immediately on the next line of a header although most Markdown parsers will accept a blank line.
Emphasis
Emphasis are the "air quotes" of markdown and HTML.
They are important for highlighting or "emphasizing" keywords. Think of when your mother and father would annunciate words when speaking to you.
Although there are two ways to do emphasis *
and _
I suggest only using the *
syntax as that is the most popular and clearest. There are two emphasis options, bold and italics.
Use **bold**
syntax to turns something bold.
Italics is the same format but instead of two *
you use one. *this is italics*
.
Finally you have strikethrough that allows you to cross out text. This can be used for removing old text but leaving it there for posterity sake. It can also be used creatively.
You can do strikethrough by using ~~
before and after your text you want to ~~strikethrough~~
.
As a final note, you can embed italics inside of bold or vice versa. This isn't used much but good to know. Just combine them like this:
***italics* inside of bold** or *vice **versa***
Horizontal lines
Horizontal lines can be created using ***
, ___
, or ---
but I suggest using ---
syntax for consistency.
Horizontal lines are good for breaking up sections inside of a header tag. It doesn't always work and I find it works best for small sections using a horizontal line before and after like this section.
One thing you might notice when using horizontal lines, if you do not leave a new line you will get some weird formatting, typically unexpected H1 type header. If you see headers where you don't expect them, check to see if you forgot to leave a new line on top/bottom of your horizontal rule.
I personally like to use horizontal lines between header sections as you can see I have done in this post. You can also choose to use graphical headers by using images.
Lists
There are two types of lists; ordered list and unordered list. The most popular is the unordered list, which is typically referred to as bullet points.
Unordered List
To do an unordered list, you simply use *
in front of your items.
Shopping List
- Eggs
- Thick Toast
- Cinnamon
- Powered Sugar
- Maple Syrup
This was created using the following syntax:
###### Shopping List
* Eggs
* Thick Toast
* Cinnamon
* Powered Sugar
* Maple Syrup
Ordered List
An ordered list is the same idea, just using numbers.
Creating French Toast
- beat eggs
- add cinnamon
- dip toast
- fry toast
- cover with powered cinnamon & drown in maple syrup
###### Creating French Toast
1. beat eggs
2. add cinnamon
3. dip toast
4. fry toast
5. cover with powered cinnamon & drown in maple syrup
Like emphasis you can combine these with any combination
- Succeed on Hive
- add value
- post regularly
- engage audience
* Succeed on Hive
1. add value
2. post regularly
3. engage audience
You can create sub items to your lists by using indents.
Making Toast
- Collect two slices of bread
- Open Bag
- Pull out two slices
- Close bag
- Put bread in toaster
- Toast
###### Making Toast
* Collect two slices of bread
* Open Bag
* Pull out two slices
* Close bag
* Put bread in toaster
* Toast
Formatting
Markdown has some formatting but it lacks certain features that can be supplemented with HTML. The most common are:
- Centering
<center> </center>
- Line Break
</br>
- Sub script
<sub></sub>
- Paragraphs
<p></p>
You can also center a header.
This is a centered H1 header
# <center> This is a centered H1 header </center>
You can also use <table>
although for simple tables there is a special markdown syntax you should use instead.
Linking
Linking is really easy and in most cases completely automatic. There is also a special link for usernames where you can just type in the username and Hive will automatically hyperlink to their profile page. For example @themarkymark.
One thing I think confuses people with this feature is punctuation. You can use commas, periods, and any other punctuation immediately after the username, and it will still be hyperlinked.
For example @themarkymark.
If you want to hyperlink something, but have a customized anchor text then you would use syntax similar to images but without the leading !.
[My profile Page](https://peakd.com/@themarkymark)
One thing people get confused with is hyperlinking with images.
This image is hyperlinked to my witness voting page.
[![](https://i.imgur.com/50dD8mn.gif)](https://hivesigner.com/sign/account-witness-vote?witness=themarkymark&approve=1)
It's kind of confusing syntax, but basically you put an image using syntax in the space where you would usually use the anchor text.
Images
If you found this post, you most likely already know how to do images on Hive, but for the sake of completeness, I will cover them. There are also a few tricks you can do I will show you.
![ALT TEXT](IMAGE URL)
Alt text is primarily an SEO feature but also is used for text-only browsers. You can also center images by enclosing it with <center>![ALT TEXT](IMAGE URL)</center>
tags.
Have you ever wanted to pull images to the left or right of your text?
This is with the image on the left.This is with the image on the right.
<div class="pull-left">https://images.hive.blog/0x0/https://images.hive.blog/DQmNVx4k9XGFQYA7VPt8b9oitLQMaqp1JmAF8SMGhfK2ZXD/image.png</div> This is with the image on the left.
---
<div class="pull-right">https://images.hive.blog/0x0/https://images.hive.blog/DQmNVx4k9XGFQYA7VPt8b9oitLQMaqp1JmAF8SMGhfK2ZXD/image.png</div> This is with the image on the right.
Code Formatting
If you are a programmer and want to highlight some awesome code you want to share, you can use the standard github syntax for code. There are two ways to do this, lead a line with four spaces, or surround it with . Hive doesn't support syntax highlighting like Github does.
function test() {
console.log("look ma’, no spaces");
}
```
function test() {
console.log("look ma’, no spaces");
}
```
Whenever I specify commands to run in tutorials or code, I will use backticks to turn them into code blocks to make it easier to read and understand.
You can also use backticks to highlight preformatted text you don't want to be parsed and formatted.
Quotes Aka blockquotes
This is really simple and most people probably already know this.
Life is 10% what happens to you and 90% how you react to it.
Charles R. Swindoll
To create a blockquote, just need to add >
to the start of the line. If you have multiple paragraphs you will need to use a >
for each line or you get a new line without the blockquote and may run into formatting issues. You may notice the name is a bit smaller, this is a subscript using <sub></sub>
tags that work really nice for citation. You will notice I do it for source for my images. You can see them both in action here:
> Life is 10% what happens to you and 90% how you react to it.
<sub>Charles R. Swindoll</sub>
You can nest blockquotes like this.
Hello
Hi
> Hello
> > Hi
I personally am not a big fan of blockquotes as they are rendered different depending on the front-end style and I usually use my own syntax to do quoting.
“You must be the change you wish to see in the world.”
Gandhi
*“You must be the change you wish to see in the world.”*
<sub>Gandhi</sub>
I basically use quotes in italics and do a sub text command on the next line.
I feel this looks better and is consistent. YMMV.
Finally, if you have blank lines in your quotes, just use a > on the blank line as such.
Michael says "Hello".
Bob responds, "Hi!".
> Michael says "Hello".
>
> Bob responds, "Hi!".
Tables
Creating simple tables is really easy with markdown and not a commonly seen feature. A simple table looks like this:
First Header | Second Header |
---|---|
Content cell 1 | Content cell 2 |
Content column 1 | Content column 2 |
To create this table is as simple as:
First Header | Second Header
------------ | -------------
Content cell 1 | Content cell 2
Content column 1 | Content column 2
Tables can do wonders for making data more readable in posts and one of my favorite Markdown features.
Inline Code Characters
A feature that came real handy in this article is the ability to show formatting syntax inline by using the ` (backtick) character to avoid triggering the formatting.
This is not the standard apostrophe but the one under the ESC key that is shared with the tilde key ~
. This will allow you to show special formatting syntax without triggering formatting. I also use it to highly commands typically entered in terminal windows like on Linux. For example:
sudo apt update
`sudo apt update`
Aah I didn't know about the
strikethroughthingies, good to know! Learn something new every day :-)Ftfy
Hah, fair!
My posts aren't getting enough attention, will surely look into it, Thank you for the guidance. Followed you 😊❤️
Excellent publication. Thanks for refreshing these things in my head.
Although we are aware that not always a good markdown is necessary to receive good votes. Sure, the title of your post was:
It wasn't:
Lol
Best regards.
Amazing work, 🙌 This is a really great and simplified guide to markdown. I also learned a few things that I didn't know already. Upvoted and Rehived.
Best wishes, keep up the good work!
Dude!!! Thank you!!!
Thank you for your help!
It might be worth adding something that took me a while to figure out. None of the searches I processed listed this information, I figured it out through trial and error.
When using the centre option, everything following will center, even when /Center is used.
To realign left, < BR > (I can’t get the back tick to work) must be added (I’m sure < p > would work as well).
A couple other side notes:
dash ‘-‘ also produces bullet points and is easier to add than the alternative, *
if one wants space between headers, br needs to be used on the next line
to get text beside a photo, the image needs to be small enough to allow space; markdown doesn’t accept HTML code sizing. Either download or design a small enough variation, or edit.
emphasis and bold star * codes don’t work after punctuation, so the * must be placed before the period, question mark, or whatever.
more than one < sub > can be used to create even smaller text than the small text. one sub two subs three subs four subs
two lines ____ with italic font in between cad serve perfectly as block quote or links
larger headers can also be used for block quotes, or links.
headers and spacing can be applied differently than standard use, for creative and visual appealing formatting (especially for poets)
Mark, thank you for your list. There were a few things that I didn’t already know, and one partially behaviours I’ve been trying to get to work for me. Very handy.
This isn't really true, but there are some oddities that do cause a center to be unclosed. But most cases
<center></center>
works fine.Sure they do. You just can't have a space between it.
You can resize images via code:
By combining the resize and making it an image link you can have nice sized images for a line of icon links.
<center><sub>Tiny Picture links back to my blog:</sub></center><center><a href="https://peakd.com/@bashadow"><img src=https://images.hive.blog/100x50/https://files.peakd.com/file/peakd-hive/bashadow/CSiw0Xl5-avatar3.png></a></center>
This is the segment that allows the resize
https://images.hive.blog/100x50/
To add blank spaces between the images use the HTML Code
I find stringing 5 blank spaces works pretty good.Thank you very much for this useful guide @themarkymark!
You must have seen me bitching about Markdown yesterday. LOL
Someone brought it up in POB discord, and I linked my original article back on Steem (2017). I figured it was due for an update. I think knowing Markdown is very important and something everyone should learn.
I've bookmarked it to refer to. I'm still not a fan of it, though. I prefer HTML.
Agreed. I didn't know this stuff. I've seen something before tbat tiuched on italics and bold but i had forgotten that. I need to play around with it to make it more reflexively accessible.
Thanks for this! I've bookmarked it so I can refer to it now and again. Line-breaks were one thing I was struggling with (I don't know why I didn't just try the HTML tag!).
This is a great guide and very useful, I have cross posted it to the Hive Affiliates Community to be included in our knowledgebase for newbies and for growing as a content creator.
There is one question I have about the
<center></center>
element, when posting 3speak videos they wrap the video embed in that, but there is a problem with it since it makes the whole post centered, is there some way to make it work correctly and not just remove that element which I currently do?Really wish hive supported LaTeX equations with the $$ syntax!
Thanks for this. Wasn't aware you could mix MD with HTML. May start giving that a shot.
What an educative article... wow... nice one
Yeah, I can hyperlink with a image now thank you, this is awsome and I did not know that before hahha cool 🍀
!BEER 🍻
!giphy markdown madness
Posted using Dapplr
Via Tenor
View or trade
BEER
.Hey @themarkymark, here is a little bit of
BEER
from @sandymeyer for you. Enjoy it!Learn how to earn FREE BEER each day by staking your
BEER
.Great resource for a bunch of collections I think.
Posting "like a pro" is one thing, but the success of posts is influenced by many factors on the Hive blockchain. There are a lot of people, who post "like a pro", and their posts are still ignored or overlooked.
We're working on this flaw. There are some community updates coming soon along with proposal requests to help improve on curating/moderating. I can't promise it will fix everything 100%. I can promise, though, we're trying to improve things.
@scholaris Great news indeed!
I feel like it is great news. I'm looking forward to seeing it myself.
Awesome! I've been looking for something like this for a while now!
Hello, very good your publication, I have learned some details of the use of Markdown, I did not know and I want to use to improve my publications. Thank you very much for sharing your knowledge. Regards
Thanks for sharing this guild it will really work a long way for me
Thanks for sharing this, already know some of them but your detailing gift me with some new tricks
!PIZZA
@themarkymark! I sent you a slice of $PIZZA on behalf of @cre47iv3.
Learn more about $PIZZA Token at hive.pizza (2/10)
It quite easy on desktop, but on mobile is kind of a nightmare.
Great guide to find it always at hand. Markdown has some plugins but they are paid. Very useful the final instruction for Linux. I use Xubuntu. Greetings and thanks for sharing this guide @themarkymark.
Typing like a pro is very essential,but the message what is been typing is going to pass is very much vital too
Genial por fin puedo centrar mis imágenes! Util información gracias.
Thank you for updating this tool!
Hello @themarkymark such a great post. There is so much I can now do, which my app never allowed me to do before. Thank you!! Matt
Thanks a lot for the useful guide! Bookmarked for later :)
Re-hived and bookmarked. This is awesome. Thank you.
Superb! Bookmarked! It will be my guide on formatting my blogs here.
Thank you! 🙂
Muy completa tu explicación. Lo felicito. Aprendí nuevas cosas con solo leer
Thanks for the tutorial. Some items I already knew and use daily. I did have one item that baffles me.
When I click on the ordered list feature, type my 1st list item; then new paragraph under that, when I begin the 2nd list item, it displays #2 in the markdown draft, but reverts to number 1 in the preview.
What am I doing wrong?
Wow thanks for sharing, this is amazing, I feel like a newbies.
This publication is certainly very complete. But I have a question, why when I create double column
what should go to the left stays on the right side and there is no way to make it go to the left side? If it is assumed that I am using the correct codes, that should not happen.
Thank you and I was meaning to get back to this, but the powercuts are sowing havoc over here.
Reblogged for future refs and to let others see it.
Very interesting and detailed guide on post formatting. Thanks for taking out time to come up with this. Really educating. Bookmarked!
What are the best ways to embed symbols not found on standard keyboards? I know on Windows, I can use the alt key and the number pad to fill a lot of these needs. Linux so far does not seem to offer that kind of functionality, although I admit I have not delved very deep. At any rate, it might be a useful follow-up if you want to write it before I get around to it myself.
Each platform usually has a tool for entering in symbols.
Like on Windows there is the Character Map Tool
Mac OS has a character palette
On Linux, there are multiple character map tools depending on the desktop you are using.
For example, GNOME.
Awepost post @themarkymark, thanks a lot for this input.
It will be very useful to have all of it explained so clearly!
Sweet resource Markymark, thanks for putting it together
Nice writeup. I just hope I'll be able to master all so that I'll be a pro in my postings on hive...
Wow! It's been very helpful, just what's I'm looking for! Thanks a lot!
Hi, your post is amazing and I really liked it.
I have a question, is it possible to put an "anchor link" here in ecency? I would love to know, thank you!
Very helpful indeed, wowww
Estaba buscando algo como esto no sabía como poner líneas horizontales, excelente publicación para alguien nuevo como yo, gracias. Me lo guardaré.