Copiar código de uma captura de tela no Mac sem redigitar
Por Eduard Bruch, desenvolvedor do Optic · Atualizado em
Para copiar código de uma captura de tela no Mac, abra a imagem, selecione o código com uma ferramenta de OCR e cole o texto no seu editor. Depois leia-o uma vez comparando com a imagem, porque o OCR pode confundir caracteres como l e 1 ou O e 0.
Resposta curta: para imagens no Preview ou no Fotos, tente primeiro o Live Text. Para código em qualquer janela de app, vídeo ou chat, minha escolha é o Optic, um app da barra de menus que copia o texto de qualquer área que você arrastar na tela (US$ 4,99 (compra única) na Mac App Store).
Divulgação: eu desenvolvo o Optic.
Por que redigitar código dá errado
Código é rigoroso. Uma aspa errada, um colchete faltando ou um l confundido com 1 quebra um comando, e o erro muitas vezes não aponta para a causa real. Redigitar uma linha longa de docker run ou uma chamada curl com várias flags é exatamente onde esses deslizes acontecem.
O código vai parar em imagens o tempo todo: trechos publicados como capturas de tela bonitas nas redes sociais, tutoriais que mostram exemplos como figuras, wikis antigas cheias de capturas de terminal e código encaminhado como captura de tela no Slack ou no Teams.
Tente primeiro o Live Text
O Live Text do macOS funciona onde a Apple o suporta: imagens no Preview, no Fotos, no Quick Look e no Safari. Abra a captura de tela no Preview, passe o ponteiro sobre o código até ele virar um cursor de texto, selecione e pressione Command-C.
O Live Text não funciona em janelas arbitrárias de apps, chamadas de vídeo ou texto desenhado dentro da interface de um app. Se o código está num player de vídeo, numa área de trabalho remota ou num compartilhamento de tela, você precisa de uma ferramenta de OCR de tela.
Copie o código com o Optic
O Optic lê o que estiver na tela dentro do retângulo que você desenha. Ele não abre arquivos de imagem por conta própria, então abra a captura de tela primeiro no Preview, num navegador ou em qualquer visualizador.
- Clique no ícone do Optic na barra de menus.
- Escolha Capturar Texto.
- Arraste um retângulo sobre o código. Deixe de fora os números de linha, se a imagem os tiver.
- Cole no seu editor com Command-V.
Uma pequena confirmação "Copiado para a área de transferência" aparece quando o texto está pronto.
Ative o modo código
Nas Configurações do Optic, o Modo código (preservar indentação) foi feito para este trabalho. Ele mantém a indentação de cada linha, com base em onde o texto está na imagem, e desativa a correção de idioma para que o reconhecedor não "corrija" identificadores transformando-os em palavras de dicionário. Deixe-o ativado enquanto copia código e desative-o para texto comum.
As quebras de linha são mantidas por padrão (Preservar), que é o que você quer para código. As outras opções, Remover e Mesclagem inteligente, são para parágrafos.
Confira antes de executar
O reconhecimento roda no seu Mac com o reconhecimento de texto Vision da Apple. Ele funciona bem em texto nítido e de alto contraste, mas ainda é OCR. Antes de colar um comando num terminal, compare-o com a imagem, especialmente:
- aspas e crases
l,1,IeO,0- hifens e travessões em flags
- indentação em Python ou YAML
Texto maior é reconhecido melhor, então dê zoom na imagem antes de arrastar se a fonte for pequena.
Vários trechos em sequência
Cada captura vai para o histórico do Optic no popover da barra de menus, que guarda as últimas 20 capturas com uma miniatura. Se um tutorial mostra cinco passos, capture-os um após o outro e copie cada um de novo pelo histórico quando precisar. O histórico fica no seu Mac.
Onde o Optic não se encaixa
- Ele não abre arquivos de imagem ou PDF. O código precisa estar visível na tela.
- Ele trabalha com uma seleção por vez. Não processa pastas de capturas de tela nem documentos inteiros.
- Ele copia texto simples. Não mantém as cores da sintaxe nem detecta a linguagem de programação.
- Ele precisa da permissão de Gravação de Tela do macOS para ler a tela.
Para saber mais sobre o assunto, veja OCR para trechos de código no Mac e como copiar texto de qualquer coisa na tela. Se você está comparando apps, há um resumo de apps de OCR de tela para Mac.
FAQ
O Mac consegue copiar código de uma imagem sem apps extras?
Muitas vezes, sim. O Live Text no Preview, no Fotos, no Quick Look e no Safari permite selecionar texto em imagens. Ele não funciona em vídeo, compartilhamentos de tela nem em texto dentro de janelas de outros apps. Para código em qualquer outro lugar da tela, minha escolha é o Optic com o modo código ativado.
O Optic mantém a indentação do código?
Com o modo código ativado nas Configurações, o Optic mantém a indentação de cada linha com base na posição dela na imagem. Confira o resultado em Python e YAML, onde a indentação importa.
O Optic precisa de conexão com a internet?
Não. O reconhecimento de texto roda no Mac, e o app não tem acesso à rede.
Por que o código colado contém caracteres errados?
O OCR pode confundir caracteres parecidos, como l e 1. Dê zoom em texto pequeno antes de capturar, use o modo código e compare o resultado com a imagem.