confluence вставить блок кода

Confluence Support

Knowledge base

Products

Jira Software

Project and issue tracking

Jira Service Management

Service management and customer support

Jira Core

Manage any business project

Confluence

Bitbucket

Git code management

Resources

Documentation

Usage and admin help

Community

Answers, support, and inspiration

Suggestions and bugs

Feature suggestions and bug reports

Marketplace

Billing and licensing

Frequently asked questions

Viewport

Confluence

Versions

Code Block Macro

Macros

On this page

Related content

Still need help?

The Atlassian Community is here for you.

Add a Code Block macro to your page to display code examples with syntax highlighting.

This is great for sharing code snippets such as:

On this page:

Screenshot: code sample in the Code Block macro, with syntax highlighting and a dark theme.

confluence вставить блок кода. code block view. confluence вставить блок кода фото. confluence вставить блок кода-code block view. картинка confluence вставить блок кода. картинка code block view. Project and issue tracking

Add the Code Block macro to your page

To add the Code Block macro to a page:

You can then publish your page to see the macro in action.

Screenshot: Choosing syntax highlighting language and theme in the Code Block macro

confluence вставить блок кода. code block params. confluence вставить блок кода фото. confluence вставить блок кода-code block params. картинка confluence вставить блок кода. картинка code block params. Project and issue tracking

Note: You type the code block directly into the macro placeholder in the editor. Note that any white space contained in the placeholder is not manipulated in any way by the Code Block macro. This is to provide the writer with flexibility over code indentation.

Change the macro parameters

Macro parameters are used to change the behaviour of a macro.

To change the macro parameters:

Here’s a list of the parameters available in this macro.

Syntax highlighting
(language )

Specifies the language (or environment) for syntax highlighting. The default language is Java but you can choose from one of the following languages/environments:

Title

Adds a title to the code block. If specified, the title will be displayed in a header row at the top of the code block.

Collapsible
(collapse )

If selected, the code macro’s content will be collapsed upon visiting or refreshing the Confluence page. Clicking the expand source link allows you to view this content. If false, the code macro’s content is always displayed in full.

Show line numbers
(linenumbers )

If selected, line numbers will be shown to the left of the lines of code.

First line number
(firstline )

When Show line numbers is selected, this value defines the number of the first line of code.

Theme

Specifies the color scheme used for displaying your code block. Many of these themes are based on the default color schemes of popular integrated development environments (IDEs). The default theme is Confluence (also known as Default), which is typically black and colored text on a blank background. However, you can also choose from one of the following other popular themes:

Where the parameter name used in Confluence storage format or wikimarkup is different to the label used in the macro browser, it will be listed below in brackets ( example ).

Administer the Code Block macro

You can configure the Code Block macro to use a specific language and theme by default and also upload new languages. You need Confluence Administrator permissions to change the default theme and language and System Administrator permissions to upload new languages.

To set the default appearance of code blocks in your site:

All new code blocks will use the default theme and language unless you specify otherwise. Existing code blocks will be unchanged.

To add an additional language:

To disable or remove a user-installed language:

The language will no longer appear in the Code Macro.

Other ways to add this macro

Add this macro as you type

confluence вставить блок кода. insert cheese. confluence вставить блок кода фото. confluence вставить блок кода-insert cheese. картинка confluence вставить блок кода. картинка insert cheese. Project and issue tracking

Add this macro using wiki markup

This is useful when you want to add a macro outside the editor, for example as custom content in the sidebar, header or footer of a space.

Macro name: code

Macro body: Accepts plain text.

Do more with Confluence

Extend Confluence with one of the hundreds of other macros in the Atlassian Marketplace. Some of our most popular include:

Источник

Docs as code против или вместе с Confluence? Обзор нескольких способов публикации из репозитория в Confluence

Многие уже давно или активно используют или смотрят в сторону модели хранения и публикации документации как кода, это значит применять к документации все те же правила, инструменты и процедуры, что и к программному коду, например, хранить в репозитории, прогонять тесты, собирать и релизить в CI/CD. Этот подход позволяет поддерживать документацию актуальной к коду, версионировать и отслеживать изменения, используя привычные инструменты разработки.

Однако в то же время во многих компаниях годами существуют также и вики-системы, в которых к документации получают доступ другие команды и сотрудники, например, менеджеры проектов. Что если вам захотелось привести хранение и публикацию к единому виду, то есть наряду с HTML публиковать доки и в Confluence? В этой статье я дам обзор решений задачи публикации документов из репозитория в Confluence.

Одно решение я давно активно использую сама в команде разработки интерфейсов (связка RST-Sphinx+sphinxcontribbuilder), а остальные представлю в качестве альтернативы, сразу оговорюсь, что на практике я их не пробовала, только изучила конфигурацию.

Sphinx doc+sphinxcontribbuilder

Sphinx (не путать с одноименным поисковым индексом) — это генератор документации, написанный на Python и активно используемый сообществом, он вполне хорошо работает также и в других средах.

На его настройке мы останавливаться подробно не будем, оговорюсь лишь, что из коробки он умеет генерировать статический HTML, man, pdf, и еще ряд форматов, а для корректной сборки и публикации в репозитории должны быть файлы index.rst (разметка главной страницы), conf.py (файл конфигурации) и Makefile (файл, описывающий процесс генерации форматов, вот его вполне можно зашить в докер и запускать sphinx-build команду там).

Из коробки Sphinx умеет генерировать доки из легковесной разметки формата *.rst (RestructuredText), но мы добавили возможность писать и в Markdown (CommonMark flavor) для тех разработчиков, кому это удобнее (в этом нам помогло расширение m2r, которое конвертирует MD в RST).

У нас все окружение для Sphinx уже было настроено, а сборка документации зашита в отдельный стейдж в пайплайне в Jenkins, поэтому мы пошли дальше и использовали расширение sphinxcontrib.confluencebuilder, которое умеет собирать доки в нативном для Confluence формате, а затем публиковать их. Confluence в данном случае является одним из форматов вывода документации, наряду с HTML.

confluence вставить блок кода. . confluence вставить блок кода фото. confluence вставить блок кода-. картинка confluence вставить блок кода. картинка . Project and issue tracking

Чтобы это заработало, вам нужно подключить расширения в conf.py, ниже фрагмент конфигурации.

А затем конфигурировать расширение, у него есть набор настроек:

Названия страниц в Confluence будут соответствовать первому title страницы, например, если у вас в файле example.rst указан заголовок Example, подчеркнутый знаками равно, он станет названием страницы в Confluence.

Правило гигиены, довольно очевидное, но все же: создайте бота с авторизационными данными которого будете публиковать документы, их можно передавать в виде переменных окружения в docker compose, использовать в пайплайнах.

Конечно, есть и подводные камни. Во-первых, не весь синтаксис RST поддерживается для публикации в Confluence (╯°□°)╯︵ ┻━┻), это неудобно, если вы хотите из одного исходника собирать HTML и Confluence. Не поддерживаются директивы сontainer, hlist, почти все атрибуты директив, например, подсвечивание строк в код блоке, нумерация в оглавлении, align и width для listtable. Список того, что поддерживается, он довольно неплох.

Из приятного, поддерживаются includes, это позволяет переиспользовать фрагменты контента между разными документами, autodoc для сборки документации из кода, math для математических формул, отрисовка тикетов и фильтров из jira (для этого придется в конфигурации прописать еще и Jira сервер), нумерованные заголовки и многое другое, буквально 3 января закатили большое обновление.

Кстати, поддержка Jira появилась и в мультиконвертер Pandoc, начиная с версии 2.7.3 Pandoc поддержал соответствующую confluence wiki разметку.

Для тех макросов и элементов Confluence, которые не поддерживаются есть грязный хак. В RST есть директива … raw::, и у нее есть атрибут сonfluence, она принимает conf разметку, если вам очень нужен какой-то макрос — можно скопировать его в режиме редактирования страницы в Confluence (режим исходного кода доступен по иконке <>) и вставить его «сырой» код туда. Но я вас этому не учила.

Результат получается такой:

confluence вставить блок кода. image loader. confluence вставить блок кода фото. confluence вставить блок кода-image loader. картинка confluence вставить блок кода. картинка image loader. Project and issue tracking

Почему нам понадобилось настраивать публикацию из локального репозитория на тестовую страницу, а не сразу на «прод»? Дело в том, что при публикации все страницы каждый раз публикуются заново и перетирают изменения, сделанные вручную или комменты в строке (inline). Поэтому, когда документ находится в работе, мы решили публиковать его в какую-то отдельную страницу, этакий dev mode, чтобы добавлять опубликованные версии в ревью и собирать комментарии.

На CI публикация реализована в виде отдельного стейджа в пайплайне в Jenkins, внутрь этого стейджа зашит запуск docker образа на удаленном реджистри, в котором реализован запуск sphinx-build с нужной конфигурацией. Лучше сразу сделать этот шаг пропускаемым.

confluence вставить блок кода. image loader. confluence вставить блок кода фото. confluence вставить блок кода-image loader. картинка confluence вставить блок кода. картинка image loader. Project and issue tracking

Еще один нюанс: при каждой публикации сабсета страниц Sphinx обновляет все дерево, каждую страницу. То есть, даже если контент не менялся, создается изменение, если у вас настроены уведомления в канал, то он будет засоряться множеством уведомлений.

Еще несколько способов

Foliant с Confluence в качестве бэкэнда

Инструмент для генерации документации Foliant с Mkdocs и множеством препроцессоров под капотом и бэкэндом в виде Confluence. Подробнее можно почитать тут, но если кратко, то он использует pandoc для конвертации md в HTML, а затем публикует его в Confluence. Нужно только сконфигурировать бэкэнд и установить pandoc в окружение в качестве зависимости.

Выгодные отличия от первого решения: он умеет восстанавливать inline комментарии в тех же местах, что они были до перепубликации страницы, позволяет создавать страницы, задав их в конфиге, редактировать их названия, а также вставлять контент внутрь уже существующей страницы, для этого нужно вручную задать якорь foliant на странице в Confluence.

Работает только с исходником на Markdown.

Metro

Мультитул, который публикует самые разные форматы источников в Confluence, от Google Docs до Salesforce Quip, и в Markdown тоже умеет.

Gem md2conf

Ruby gem md2conf, он конвертирует Markdown в нативный для Confluence XHTML. Дальше можно написать Rake таску, которую в свою очередь можно вызывать через Gitlab CI/Jenkins по пушу в master, затем дергать Confluence API, чтобы опубликовать страницу. Чтобы не заносить к себе Ruby окружение, заверните зависимости для этого gem в контейнер.

Как отсылать запросы в Confluence API описано тут.

Работает только с исходником на Markdown.

Из найденного в Github

На самом деле таких скриптов или cli-инструментов в сообществе уже наделали некоторое количество, но экспериментировала я только с md2conf, все они делятся на две группы.

И те, что сразу реализовывают в себе и запросы к Confluence API, нужно только указать API ключ в конфиге:

P.S. Если вы поделитесь в комментариях другими найденными решениями задачи, я буду очень признательна.

А если хотите пообщаться на эти темы подробнее со мной, приходите на KnowledgeConf 2020 18 мая.

Источник

Как отформатировать встроенный код в Confluence?

14 ответов

чтобы вставить встроенный моноширинный шрифт в слияние, окружите текст двойными фигурными скобками.

Если вы используете Confluence 4.x или выше, вы также можете просто выбрать опцию «предварительно отформатированный» из меню стиля абзаца.

по умолчанию Confluence отображает однослойный текст с прозрачным фоном. Вы можете изменить глобальный CSS, чтобы добавить серый цвет. От руководство по слиянию:

пользовательский CSS для отображения серого фона в одноместных блоках:

если вы используете Confluence OnDemand (облако):

вы можете попросить своего администратора дьявольского слияния создать для вас макрос. Вот пример макроса для Confluence 3.x

затем пользователи могут использовать like this

вы также можете использоватьили