On this page

Please note that the URL user and URL password parameters are removed from 2.2.4 release. We recommend using profiles to access your data from remote locations.


The Code Pro macro extends the native Code macro. The following features are included:

  • Source code can be from any of these sources:
    • Within your Confluence page (same as the code macro).
    • From an external URL. For example: Bitbucket, GitHub, or Stash.
    • From a file residing on the Confluence server. For example, a clone of a Git or Mercurial repository.
    • From a page attachment.
    • From a global or space template.
  • Syntax highlighting equivalent to Code macro. Recognizes the same language extensions added to the code macro.
  • Supports all the current Code macro parameters.
  • Subset by line number or regex selection - see Sections parameter. Allows showing one or more sections of code from the same source.
  • Expand and collapse support similar to the Expand macro. Option to show or collapse on initial display.
  • Automatic title generation from the file or path name.
  • Profiles allow administrators to pre-configure access to repositories and hide access credentials.
  • Enabled for Macro Security for Confluence to allow control of url and profile parameters. See Macro Security Managed Macros.

After retrieving the source code from the various sources, the Code macro is then used under the covers. This means behavior will be equivalent to existing Code macro behavior! The native Code macro must be enabled (the default).

Basic use

This macro can be deployed using one of the following methods:

Selected from the macro browsercode-pro
Markup shortcut{code-pro}



(info) Click a column heading to toggle the sorting of that column.

Macro editor label
CodeCode Pro
Macro parameter

Select a profile from the list. Profiles are pre-defined, parameter defaults configured by your administrator. The saved parameters can be re-used across multiple macro instances. Provides support for defaulting various parameters including URL related parameters: URL to source code, URL user, URL password, and URL connection timeout.

If needed, usage of specific profiles can be controlled by administrators using Macro Security for Confluence. Profiles offer a way to secure user and password information for non-public sites.

Language for syntax highlighting(tick)(tick)

Select from a list of languages shipped by default with the Code macro. New languages can be added by using the Code macro configuration. The following is the current list of shipped default languages:

Macro Browser SelectionAliases for Wiki Markup Use
ActionScriptactionscript3, as3, actionscript
Bashbash, shell
C#c#, c-sharp, csharp
C++cpp, c
ColdFusioncoldfusion, cf
Delphidelphi, pascal, pas
Diffdiff, patch
Erlangerl, erlang
HTML and XMLxml, xhtml, xslt, html, html/xml
Java FXjfx, javafx
JavaScriptjs, jscript, javascript
Perlperl, Perl, pl
Plain Texttext, plain
PowerShellpowershell, ps
Pythonpy, python
Rubyruby, rails, ror, rb
Sasssass, scss
Visual Basicvb, vbnet


Enter the title of the code panel. May default to title provided in profile.

Special ValueReplacement

URLPath portion of URLraw/master/src/main/resource/atlassian-plugin.xml
AttachmentAttachment path and name as specifiedmyspace:home^report.groovy
FileRelative file system pathsrc/main/resource/atlassian-plugin.xml
TemplateTemplate pathmytemplate or myspace:mytemplate


URLFile portion of URLatlassian-plugin.xml
AttachmentAttachment file namereport.groovy
FileFile name with extensionatlassian-plugin.xml
TemplateTemplate namemytemplate

Show line numbers(tick)(tick)falseEnable this option to show line numbers for the source.linenumbers
URL to source code 

Enter the URL of a source file. If specified, the included data will follow the body and script data (if any). Always use the raw or download link to your source and not the HTML link your repository manager shows. Use of this parameter may be restricted for security reasons. See your administrator for details.


  1. GIT repository on Bitbucket: https://bitbucket.org/examplegear/tools/raw/master/...
  2. Mercurial repository on Bitbucket: https://bitbucket.org/examplegear/tools/raw/tip/...
URL user (Removed)

Enter user name required to access URL access via basic authentication. 

Please note that the URL user and URL password parameters are removed from 2.2.4 release. We recommend using profiles to access your data from remote locations.

URL user password (Removed)

Enter the password required to access the specified URL via basic authentication. 

Please note that the URL user and URL password parameters are removed from 2.2.4 release. We recommend using profiles to access your data from remote locations.

URL connection timeout
Enter time in milliseconds such that URL connections does not disconnect before getting data. Use this to increase the access time needed for slow connections. Note that if a zero is given the connection may wait infinitely.timeout
Location of source code
(tick)macro body

Enter the location of the attachment. If left blank, the macro body content is used unless a URL is given in URL to source code. If a location is specified, the included data follows the body data (if any).

The following options are available:

  • ^attachment - Data is read from an attachment to the current page.
  • page^attachment - Data is read from an attachment to the page name provided.
  • space:page^attachment - Data is read from an attachment to the page name provided in the space indicated.
  • #filename - Data is read from the file located in Confluence home directory/script/filename. Subdirectories can be specified.
  • global page template name - Data is read from a global page template.
  • space:page template name - Data is read from a space template.

Enter a comma separated list of section selections. A selection can be a simple literal string or a range specified by line numbers or regular expressions. Each selection identifies one or more lines of the code that will be displayed. Since 1.1. Sections parameter has more details.

Collapse section type

Collapse section type that determines how the expand and collapse section looks and behaves.

The following options are available:

  • blank - Use setting from profile or default to Classic if Collapse initially is enabled.
  • Expand - Section appears like the expand macro. Recommended for inter-operability with the expand macro. Provides option to expand on initial display.
  • Classic - Compatibility with the Code macro. Does not support ability to expand on initial display.
Collapse initially(tick)(tick)falseSelect to show the code section as collapsed.collapse
First line number(tick)(tick)
Enter the number to display for the first line. The first line is forced to be this number, otherwise line numbers start at 1.firstline
Theme(tick)(tick)DefaultSelect the CSS theme to be applied. Same as Code macro.theme
File encoding
Specify the encoding for an external file, if different from default system handling. Example: UTF8. encoding


You can get source from virtually any repository or other source of data provided they provide a URL link to the raw source text (as if you were downloading the source file). Here are just a few examples.

Example Macro browser and Wiki markup
Simple macro body

select * from places

Access Bitbucket Cloud

  • Git


Access Bitbucket Cloud 

  • Mercurial 


This is a public repository, so you can try this exact configuration yourself.

Access Bitbucket Server

  • Git


Access Github

  • Using profile
  • Relative url 


Access FishEye