minted no Scissor LaTeX
O pacote minted funciona em parte no Scissor LaTeX: \begin{minted}{python} e \mintinline funcionam sem Python nem -shell-escape, com cores de sintaxe de um esquema fixo; opções como linenos, \setminted, \usemintedstyle, a legenda do listing, \mint e \inputminted não são suportados.
O que o pacote faz
O minted colore código-fonte com a biblioteca Pygments. Você escreve \begin{minted}{python} ... \end{minted}, ou \mintinline{python}{code} dentro de uma frase. Opções como linenos e frame=lines mudam o layout, \setminted as define para o documento inteiro, e \usemintedstyle escolhe um tema de cores. Em uma instalação do TeX, o minted precisa de Python com Pygments, e o documento tem de ser compilado com -shell-escape.
O que funciona aqui
| Recurso | No Scissor LaTeX | Observações |
|---|---|---|
\begin{minted}{lang} ... \end{minted} | Funciona | Com cores, sem Python nem shell escape. |
\mintinline{lang}{code} | Funciona | Monoespaçado, sem cores. |
Opções: [linenos, frame=lines, bgcolor=...] | Ignorado | Ignoradas sem mensagem. |
\setminted{...}, \usemintedstyle{...} | Ignorado | Ignorados sem mensagem; as cores são fixas. |
Ambiente listing com \caption | Em parte | O código é mostrado e a legenda é impressa como texto simples, sem "Listing 1"; um \ref a ela mostra "??". |
\mint{lang}|code| | Não suportado | Pulado com uma mensagem; a linguagem e o código são impressos como texto simples. |
\inputminted{lang}{file} | Não suportado | Pulado com uma mensagem. |
\newminted, \newmintinline | Não suportado | Pulados com uma mensagem, e os argumentos são impressos. |
Os nomes de linguagem são os mesmos do listings: Python, C, C++, Java, JavaScript, Rust, Go, R, MATLAB, SQL, Bash, HTML, TeX e muitas outras, em maiúsculas ou minúsculas.
Exemplos
Um bloco minted com uma linguagem:
minted com JavaScript
\begin{minted}{javascript}
// greet a list of people
const people = ["Erika", "Hans", "John"];
for (const name of people) {
console.log(`Hello, ${name}!`);
}
\end{minted}As opções são aceitas e ignoradas, então este bloco não tem números de linha nem moldura aqui:
linenos e frame são ignorados
\begin{minted}[linenos, frame=lines]{rust}
fn main() {
let total: u32 = (1..=8).sum();
println!("{}", total + 8); // 44
}
\end{minted}Para uma legenda numerada, use uma figure em vez do ambiente listing do minted. Aqui a legenda fica "Listing 1", e o \ref dá o número:
Um bloco minted com legenda dentro de uma figura
\begin{figure}[h]
\begin{minted}{python}
print(sum(range(44)))
\end{minted}
\caption{Adding the numbers below 44}
\label{lst:sum}
\end{figure}
Listing~\ref{lst:sum} prints 946.Compatibilidade
- De uma instalação do TeX para cá: todo bloco minted é mostrado com cores. Opções e estilos não são aplicados; troque
\mintpor\mintinlinee cole no documento o código dos arquivos de\inputminted. - Daqui para uma instalação do TeX: os blocos minted compilam lá quando Python, Pygments e
-shell-escapeestão disponíveis. Lá, umafigureem volta de um bloco minted recebe a legenda "Figure 1".
O manual completo está no CTAN: ctan.org/pkg/minted. Veja também Listagens de código em LaTeX.
Perguntas e respostas
O minted funciona sem shell escape?
Aqui, sim. O Scissor LaTeX colore os blocos minted sozinho, então nem Python nem -shell-escape são necessários. Em uma instalação do TeX, os dois continuam obrigatórios.
Devo usar minted ou listings?
Os dois funcionam igual aqui: a linguagem é lida e as outras opções são ignoradas. Se o documento também precisa compilar em outro lugar sem shell escape, o listings é a escolha mais segura.
Cada exemplo desta página é composto pelo Scissor LaTeX quando o site é gerado. Última atualização: 2026-11-07.