Rich text formatting guide for Jira Cloud
This page explains how to format text in Jira Cloud using Power Scripts synax. It covers basic formatting, content structure elements, tables, media embeds, detailing field compatibility and known limitations.
Atlassian Document Format (ADF) is the underlying system that powers rich text in Jira Cloud.
Formatting behavior varies between Jira DC and Jira Cloud. Jira DC typically uses Wiki Markup format. Line breaks (\n
) are consistently preserved across both Jira DC and Jira Cloud.
While ADF itself is complex and requires detailed technical knowledge, Power Scripts offers a simplified syntax to help you format text in various Jira fields efficiently.
This simplified syntax:
Reduces the learning curve
Minimizes formatting errors
Maintains consistency across documentation
Converts automatically to valid ADF format
Fields compatibility
Some fields do not support rich text formatting due to their specific design purposes and technical limitations. Understanding field compatibility is crucial for effective content management.
Compatible fields:
Can store ADF content in the database
Include the necessary frontend components to display rich text
Can process and validate ADF content
The following table provides detailed information about Jira field compatibility:
Field type | Compatibility | Description |
---|---|---|
Description | Core Jira fields that are built to process and display formatted content | |
Environment | Built-in Jira field designed to store detailed environment information with rich text support | |
Comments | Native Jira elements that support rich text for better communication | |
Worklog entries | Built with ADF support to allow formatted documentation of work | |
Built-in text fields (multi-line) * | Native Jira field designed to handle rich text content and store it as ADF | |
Custom fields: text field (multi-line) ** | Custom fields of this type are configured to support ADF content | |
Text field (single line) | Designed for brief, plain text input only (like titles or short references) | |
Text field (read-only) | Created solely for displaying plain text without editing capabilities |
A standard multi-line text field that comes with Jira
** A custom field that you create and configure in Jira
Basic text formatting
Jira supports a range of text formatting options to help you create clear, well-structured content. The tables below show the available formatting syntax, how it appears when rendered, and common use cases for each style. All formatting can be combined to create rich text content that effectively communicates your information.
Basic text styles
Style | Syntax | Result | Suggested use |
---|---|---|---|
Bold |
| text | Use for emphasis |
Italic |
| text | Use for subtle emphasis |
Strikethrough |
| text | Use for outdated content |
Underline |
| <u>text</u> | Alternative emphasis; use sparingly |
Text position
Format | Syntax | Result | Suggested use |
---|---|---|---|
Superscript |
| x^2^ | Mathematical expressions |
Subscript |
| H₂O | Chemical formulas |
Text enhancement
Format | Syntax | Result | Notes |
---|---|---|---|
Color text |
| red text |
|
Links |
| Double pipe separates URL and text |
Other elements
Formatting | Syntax | Notes | Example |
---|---|---|---|
Break in paragraph | {{break}} | No ending tag. Breaks in paragraphs. | [line break] |
Unicode emoji |
| Includes three parts separated by double pipe
|
|
Mention |
| Must contain | @John Smith |
Inline code |
|
| Commands example: Run ``npm install`` to install dependencies
Use the ``--force`` flag if needed Technical reference example: The ``userId`` parameter must be an integer
Access the API at ``api/v1/users`` |
Example
This code demonstrates how to build a multi-line description string that showcases various text formatting options in Jira.
description += "Examples: **bold** , //italics// or ~~strike through~~ and __underline__.\n";
description += "Links are given like this: [[https://google.com||Google text that appear]].\n";
description += "This is some {{color:#2266AA}} colored text{{/color}} followed by normal text.\n";
description += "Emojis: {{emoji}}🙂||:slight_smile:||1f642{{/emoji}} {{emoji}}😄||:smile:||1f604{{/emoji}} or a custom one {{emoji}}🎺||:trumpet:||1f3ba{{/emoji}}\n";
description += "A mention: {{mention}}@John Smith||6093b81a539c14006ad3c137{{/mention}}\n";
description += "A--Subscript-- and A^^Superscript^^\n";
Let’s analyze each line:
Line #1 |
|
---|---|
Line #2 |
|
Line #3 |
|
Line #4 |
|
Line #5 |
|
Line #6 |
|
Escaping special characters in Jira text
When you need to display formatting characters as plain text (like showing --
or **
literally) rather than using them for formatting, you'll need to use escape characters. The method differs depending on whether you're typing directly in Jira or writing code:
Direct text input (in Jira UI)
Single backslash (
\
) is used to escape special charactersWhen typed directly in Jira,
\-\-
will display as-
Instead of creating subscript text, it will show literal hyphens
Result:
--
appears as plain text instead of creating subscript formatting
Example
Programming context (in code)
Double backslash (
\\
) is required in code strings. This is because:The first
\
escapes the second\
.The resulting single
\
then escapes the special character.
Same end result as above, but requires double backslashes in code.
Example
Examples comparison
Context | Syntax | Result |
---|---|---|
Direct in Jira |
|
|
In code |
|
|
Content structure elements
These core formatting elements are used to organize and structure your Jira content hierarchically.
Element | Syntax | Notes and examples |
---|---|---|
Headers | Headers help organize content into hierarchical sections. Jira supports six levels of headers. Each header must be placed on a separate line. End headers and separators with This example creates a level 2 heading and adds a dividing line under it: | |
Lists |
| Jira supports two types of lists to help organize and structure your content: bullet lists for unordered collections and ordered lists for sequential items. This example creates a paragraph text followed by numbered steps 1 and 2: |
Panels | Panels are HTML-style containers that highlight content with distinct visual styles. You can include rich text in panels by marking the text with This example creates an info panel and uses bold text formatting: | |
Tables | HTML-style tables are useful for organizing data in rows and columns. |
Examples
This example creates a level 1 heading, adds a dividing line, and adds text under the dividing line.
Content emphasis elements
These formatting elements are used to highlight, quote, or distinguish specific content.
Element | Syntax | Notes |
---|---|---|
Quotes | Quotes in Jira are used to visually distinguish referenced or cited content from regular text. The example creates a paragraph followed by a two-lines quote: | |
Code | Code is typically used in technical content and code snippets. Jira supports two types of code formatting:
This example creates level 4 heading and adds a Java code block under it: |
Media and attachments
These are elements for including and managing non-text content in your Jira items. This includes attached documents, images, videos, and other media content.
Element | Syntax | Notes |
---|---|---|
Single media | You can embed media files in two ways: single media element or multiple media elements. Each media element requires these parameters, separated by #:
| |
Multiple media |
Building tables
Jira offers three types of tables to help you organize and present information effectively: basic tables for simple data presentation, styled tables for customized formatting, and dynamic tables for automated content generation.
Every table has these main elements:
<table></table>
: Container for the entire table<tr></tr>
: Table row container<th></th>
: Table header cell<td></td>
: Table data cell
Basic Tables
Basic tables use the following syntax:
Example
This example demonstrates code for a simple table with a header row, 3 data rows and 3 columns. The last row demonstrates column spanning.
This example code renders the following table:
Decorated (styled) tables
You can use table layout and table cell properties to add styling to a table.
Style element | Property | Description | Examples |
---|---|---|---|
Table layout |
| Suited for most cases; fits content within normal margins | In this example, you define a table with numbered rows which uses the default layout:
|
| Uses the entire page width; good for large datasets | ||
| Extends beyond normal margins; useful for complex tables | ||
Table cell |
|
| |
|
| ||
|
|
You can use multiple properties in the same cell. In your code, space-separate the properties as shown in this example:
Rich content in cells
To add complex formatting with a table cell, follow these guidelines:
Use
<!
and!>
markers on separate linesYou can include any supported Jira formatting
Suitable for embedding media, panels, or code blocks
Examples
This example demonstrates the syntax for embedding a note panel in a cell:
This more complex example demonstrates the following rich text formatting:
Basic table structure
Column spanning
Rich text formatting
Embedded note panels
Proper escape marker usage
Dynamic tables
Tables can be generated dynamically from data sources, such as CSV files or databases. Use dynamic tables when data needs to be automatically populated or updated.
This example demonstrates how to create a table automatically in response to user comments:
Here's what it does:
Monitors for new comments on a Jira issue
When a comment starts with "Country:,” the automation:
Extracts the country name from the comment
Searches for matching countries in a CSV file
Creates a formatted table with the results
Updates the issue description with the new table
While this example uses a CSV file (countries.csv
) as the data source, you can adapt the code to fetch data from any source, such as a database or API.
Format limitations
Power Scripts for Jira Cloud provides partial support for ADF. Known formatting limitations:
InlineCards are not yet supported.
Nested tables (tables within tables) are not allowed.
Some formatting features that work in our system may be rejected by Atlassian.
Malformed documents
When formatting errors are detected, the system returns an error document listing the issues. You can fix the errors and reapply formatting using this SIL script: