Como formatar um código embutido no Confluence?


Respostas:


592

Para inserir fonte monoespaçada embutida no Confluence, coloque o texto entre colchetes duplos.

Isto é um {{example}}.

Se você estiver usando o Confluence 4.x ou superior, também poderá selecionar a opção "Pré-formatado" no menu de estilo de parágrafo. Observe que isso se aplicará a toda a linha.

Referência completa aqui .


130
Na confluência 4+, a marcação wiki desaparece por padrão e a opção "Pré-formatado" se aplica a toda a linha. A única maneira de fazer isso (sem instalar o plugin de edição do wikitext) é escolher fonte monoespaçada.
HDave

16
Não funcionará se você estiver colando - é necessário digitar as chaves de fechamento para "acionar" o "formato automático". Se você deseja formatar grandes faixas de texto dessa maneira, use a caixa de diálogo Inserir -> Marcação da Wiki e digite / cole tudo lá.
precisa saber é o seguinte

3
Descobri que usar Ctrl-Shift-D para inserir a marcação do wiki é útil. É o único atalho combinado que eu uso na V5. Sim, o novo editor pode ser pesado. A inserção de código por meio do editor wiki ajuda, especialmente se você está acostumado a marcar códigos em vez de gui.
Underverse

29
Uma maneira confiável de fazer isso funcionar é digitar {{foo}}; ele sempre reconhece 'foo' como necessitando de pré-formatação, cole o que você realmente deseja colocar entre o 'f' e o 'o' e remova o texto 'foo'. Você deve ficar com o que realmente queria, pré-formatado.
Dan Mitchell

5
que tal uma cor de fundo / texto diferente? monospace não é a única coisa, eu queria destacá-lo na linha, alguma idéia?
21717 Ricky Levi

77

Por padrão, o Confluence renderiza texto monoespaçado com fundo transparente. Você pode editar o CSS global para adicionar a cor cinza. No manual do Confluence :

  1. Escolha o ícone de engrenagem no canto superior direito da tela e escolha Confluence Admin.
  2. Escolha folha de estilo.
  3. Escolha Editar.
  4. Cole seu CSS personalizado no campo de texto.
  5. Escolha Salvar.

CSS personalizado para exibir plano de fundo cinza em blocos monoespaçados:

code {
    padding: 1px 5px 1px 5px; 
    font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace, serif;
    background-color: #eeeeee;
}

Se você estiver usando o Confluence OnDemand (nuvem):

  1. Clique na engrenagem / engrenagem na parte inferior da barra lateral à esquerda
  2. Selecione Aparência
  3. Clique na guia Barra Lateral, Cabeçalho e Rodapé
  4. Cole seu CSS personalizado no campo Cabeçalho
  5. Quebrar o código em um {style}bloco
  6. Salve 

Cole a seguinte:

{style}
code {
    padding: 1px 5px 1px 5px; 
    font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace, serif;
    background-color: #eeeeee;
}
{style}

Depois disso, você obterá um código inline elegante e arrumado com estilo stackoverflow apenas escrevendo {{sometext}}.


1
Se o seu espaço usa uma folha de estilo / tema personalizado, isso pode não funcionar. Uma solução alternativa lenta é anexar o exemplo acima dentro das tags de estilo em "Aparência -> HTML personalizado" (testado na versão 5.9.6).
jdknight

3
Se você estiver usando o Confluence OnDemand, precisará ir para a página "Barra Lateral, Cabeçalho e Rodapé". Em seguida, na caixa de texto do cabeçalho, copie / cole o código CSS acima, mas é necessário colocar {style}antes e depois do CSS . Exemplo de {style}uso .
31516 Phil

1
Correção menor, parece que você precisa escapar das chaves dentro do bloco de estilo, ou então a confluência tenta encontrar uma macro chamada preenchimento. {style} code \ {... \} {style}
edqwerty 08/11/16

4
Isso funciona, no entanto, na minha instância do OnDemand (nuvem), agora estou recebendo um erro "No momento, as seguintes macros não são suportadas no cabeçalho: style" na parte superior da página. No entanto, ainda é processado. Go figure :) #
314 GONeale

2
@GraehamF @GONeale Acabei de incluir [class^=SpaceCustomSettingsBlockComponent_unsupportedMacros]{display: none;}o CSS personalizado: p
Samizdis 2/19/19

28

Você pode pedir ao seu administrador do Confluence para criar uma macro para você. Aqui está um exemplo de uma macro para o Confluence 3.x

Macro Name:    inlinecode
Macro Title:   Markup text like stackoverflow inline code
Categories:    Formatting
Macro Body Processing: Convert wiki markup to HTML
Output Format: HTML
Template:

## Macro title: Inline Code
## Macro has a body: Y
## Body processing: Convert wiki markup to HTML
## Output: HTML
##
## Developed by: My Name
## Date created: dd/mm/yyyy
## Installed by: My Name
## This makes the body text look like inline code markup from stackoverflow
## @noparams
<span style="padding: 1px 5px 1px 5px; font-family: Consolas, Menlo, Monaco, Lucida Console, Liberation Mono, DejaVu Sans Mono, Bitstream Vera Sans Mono, Courier New, monospace, serif; background-color: #eeeeee;">$body</span>

Então os usuários podem usar {inlinecode}like this{inlinecode}

Você também pode usar as macros {html}ou {style}se elas estiverem instaladas ou adicionar esse estilo à folha de estilo do seu espaço.

Enquanto você estiver nisso, peça ao administrador do Confluence para criar uma macro kbd para você. O mesmo que o anterior, exceto Macro nameé kbd e Templateé:

<span style="padding: 0.1em 0.6em;border: 1px solid #ccc; font-size: 11px; font-family: Arial,Helvetica,sans-serif; background-color: #f7f7f7; color: #333;  -moz-box-shadow: 0 1px 0px rgba(0, 0, 0, 0.2),0 0 0 2px #ffffff inset; -webkit-box-shadow: 0 1px 0px rgba(0, 0, 0, 0.2),0 0 0 2px #ffffff inset; box-shadow: 0 1px 0px rgba(0, 0, 0, 0.2),0 0 0 2px #ffffff inset; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; display: inline-block; margin: 0 0.1em; text-shadow: 0 1px 0 #fff; line-height: 1.4; white-space: nowrap; ">$body</span> 

Em seguida, você pode escrever a documentação para dizer aos usuários para pressionar as teclas F1e Enter.


2
Não me importo muito com o administrador ;-), {kbd} era o que eu estava procurando. Obrigado!
Jasper de Vries

14

Coloque seu texto embutido com {{ }}.

Ressalvas:

  1. Você tem que pressionar a barra de espaço depois }}
  2. Você não pode copiar texto pré-formatado em linha e manter a aparência. Se você copiá-lo, talvez não seja possível adicioná {{ }}-lo para corrigi-lo. Basta redigitá-lo ou colá-lo sem formatar ( Cmd ⌘+ Shift+ Vno Mac) e adicionar {{ }}e clicar em espaço.
  3. Se você adicionar o {{ }}texto existente posteriormente, ele não poderá ser cercado por outros caracteres, por exemplo, se você quiser parênteses em torno do texto pré-formatado, não será possível corrigir (my text)adicionando chaves ({{my text}}). Primeiro adicione espaço ao redor do seu texto ( my text )e adicione o {{ }}.

Tente Ctrl-D e use esta marcação? Ele deve tentar convertê-lo para a nova marcação.
Underverse 06/07

12

A partir do Confluence 4 e superior, a digitação de dois colchetes não funciona.

Agora você precisa selecionar a fonte Monospace. Destaque o texto que você deseja alterar e:

Windows: Ctrl + Shift + M

Mac: Command + Shift + M

Como alternativa, você pode digitar um backtick (`) e o Confluence formatará tudo até digitar outro backtick

Como alternativa, ao lado das opções em negrito e itálico, você pode clicar no menu suspenso "mais" e selecionar Monoespaço:

insira a descrição da imagem aqui


11

No Confluence 5.4.2, você pode adicionar surround ao seu código embutido com <code></code>tags no editor de código-fonte assim:

Confluence will show <code>this inline code</code> in a fixed font. 

Isso pode ser útil quando houver muitos fragmentos a serem modificados, pois o recurso de colchete duplo só funciona ao adicionar texto interativamente no editor do Confluence.


Obrigado, isso também parece funcionar durante o processo de migração do MediaWiki para Confluece usando UWC.
MonkeyMonkey

10

Se você deseja inserir um bloco de código grande com números de linha opcionais, etc, use a Macro de Código (disponível em Macros -> Outro).



Sim, como faço isso sem clicar em dois menus? Eu geralmente preciso de 10 blocos de código por página.
Jeremy Leipzig

11
@JeremyLeipzig Digite {para abrir o navegador de macro e começar a digitar o código .
28413 alex alex

Para sua informação, se você usar "&" no código, ele será formatado incorretamente - consulte jira.atlassian.com/browse/CONFCLOUD-59800
nevets1219 22/10/19

7

Para formatar o código em linha dentro do seu texto, use o caractere '' 'para envolver seu código. Geralmente localizado à esquerda da tecla '1' no teclado.

Exemplo:

`printf("Hello World");`

O mesmo delimitador que o Stack Exchange!


2
ADM - Eu estava mostrando o código com os delimitadores e você os escapou. Agora, o código se parece com código, que não é a intenção da minha resposta. A intenção da minha resposta é demonstrar que, no Confluence, o caractere delimitador é `que passa a ser o mesmo que SO.
morrisonbrett

1
Em qual versão do Confluence isso funciona? Minha instância não trata os backticks como caracteres especiais.
Coderer

6

Achei a formatação com cores um pouco mais complicada, pois o Confluence (5.6.3) é muito exigente quanto aos espaços ao redor dos blocos {{monospace}}.

Criando monoespaço colorido com marcação da Wiki

Conforme prestado pelo Confluence


3

No momento em que escrevi este artigo, descobri que {{string}}nem {{ string }}funciona. Meu painel de controle tinha apenas o botão de bloqueio de código.

No entanto, havia um atalho listado para formatação de largura fixa: Ctrl+ Shift+ M.

Procurei nos menus, mas não consegui descobrir qual versão está sendo servida para nós.


1

Todas essas outras respostas certamente parecem boas idéias e eu recomendaria usá-las primeiro, mas irei adiante e adicionarei mais uma à lista, por uma questão de exaustividade.

Você pode simplesmente usar a macro html e colar seu conteúdo envolto em <pre> </pre>tags.


Isso pode atingir o mesmo efeito, mas deve ser evitado, a menos que seja necessário marcar o texto dentro do bloco com outras tags HTML.
Underverse

Sim, é por isso que eu recomendei usar as soluções fornecidas nas outras respostas primeiro. Eu nunca disse que era uma boa resposta. Eu disse que queria adicioná-lo à lista por uma questão de integridade.
Alexander Ryan Baggett

Esse método é a resposta perfeita se você precisar de um controle preciso de cores e estilos em um bloco de código no Confluence 3.5. Eu criei uma {pre}macro para nossos usuários como um atalho para {html}<pre> ... </pre>{html}. A confluência 5 é outra questão inteiramente.
Underverse

1

Eu uso uma combinação das respostas de Zelphir e Peter Gluck. ie

  1. (Mac-speak) Clique em COMMAND + SHIFT + D
  2. Selecione Markdown no menu suspenso do modelo
  3. Coloque o seu texto com a etiqueta de código - ou seja, <code>bovvered</code>
  4. Clique em INSERIR

1

A maneira mais fácil para mim é inserir marcação.

Marcação de inserção de confluência

Em seguida, na caixa de texto, digite o texto entre chaves.

Ele inserirá o texto formatado em uma nova linha, mas você poderá copiá-lo em qualquer lugar, inclusive na linha.


1
ele declarou explicitamente "inline". A marcação não está embutida.
Josh Mc

1
Desculpas, perdi isso, aparentemente não podem cancelar o voto: / diz que meu voto está bloqueado.
Josh Mc

0

A maneira mais fácil que eu encontrei para fazer isso é escrever na remarcação desde o início da linha. Pressione Ctrl+D(atalho para abrir a caixa de diálogo de entrada de marcação) e digite markdown. O editor wiki normal não parece ser muito bom para formatação precisa. Parece não saber muito sobre estilos de caracteres e conhece apenas estilos de parágrafo.


CTRL + D marca a página (exatamente como você esperaria!) Na minha versão do Confluence.
Coderer

-3

Se você possui o WinWord, pode copiar o que precisa, retocar os resultados e colar no Confluence. Eu achei isso mais fácil do que as outras soluções aqui.


1
O XD, não o editor de texto da minha confluência de falhas, é insuficiente.
Amalgovinus
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.