Capturas Scrawl
O Scrawl grava a tela, voz, cliques e tinta vermelha de alguém, e empacota o resultado em uma pasta .scrawl (um pacote). A pessoa envia isso para mostrar um problema em vez de descrevê-lo, então a captura é o relatório de bug. Leia atentamente antes de responder, e não peça para explicarem novamente o que a captura já mostra. Se algo não estiver claro, olhe mais de perto com scrawl zoom primeiro.
Como fica uma colagem
[scrawl 0:33 · OpenCode “Settings” · /Users/me/Library/Application Support/scrawl/captures/scrawl-1792432139176.scrawl]
Abra o contact-sheet.png e as frames/ naquela pasta antes de alterar qualquer coisa: as marcas e palavras só fazem sentido nas imagens, que podem mostrar mais do que o texto.
Cortado para: a atividade no OpenCode (quadros completos em frames-full/)
- #1 (0:04) [clicou “New tab”] “Command T cria uma nova sessão, mas aqui deveria criar uma aba.”
- #2 (0:07) “Não, não cria.”
- #3 (0:10) ⚑ “Diz command shift B cria uma nova aba.”
- #4 (0:18) clicou (x 0.51, y 0.93)
- A primeira linha tem a duração, o app e janela gravados, e o caminho do pacote.
- A próxima linha pede para você abrir as imagens primeiro. Faça isso: o texto é apenas o que foi dito e feito, e um problema pode aparecer em um quadro sem ser marcado ou mencionado.
- Cada linha
#N (M:SS)é um keyframe: o que fizeram naquele momento entre colchetes, depois o que disseram enquanto estava na tela. Uma linha sem citação tem apenas a ação. ⚑significa que marcaram o momento propositalmente.⟨Nome⟩significa que o app informou uma nova tela. Linhas começando com·são eventos ou valores que o app registrou.- Linhas opcionais perto do topo:
For session:(para onde o Scrawl enviou),Screen:com contexto do app,Note:, eCropped to:. - Coordenadas são frações da área capturada, a partir do canto superior esquerdo (x 0.51 fica ligeiramente à direita do centro).
Quando você responder, refira-se aos momentos da mesma forma, como em "#3 (0:10)", para que a pessoa possa encontrá-los na contact-sheet.
Lendo um pacote
- Olhe primeiro para
contact-sheet.pngno pacote (geralmente já está anexada). Ela mostra cada keyframe em ordem cronológica, da esquerda para a direita e de cima para baixo, cada um com seu númeroNem um pequeno chip branco em um canto superior (o#Nemsummary.md). - Leia as linhas de transcrição ao lado dela. O reconhecimento de fala pode entender errado nomes e termos de código; confie na tela quando os dois discordarem.
- Abra
frames/frame-NN.pngpara qualquer keyframe que precisar em tamanho real (frame-03.pngé #3). Quando o resumo disserCropped to:, as telas sem corte estão emframes-full/.
O que os desenhos significam:
- Traços vermelhos, círculos, sublinhados e setas são as marcas da pessoa, e apontam para o problema. Marcas desenhadas na mesma tela aparecem todas em um único keyframe. Quando há várias, o texto as numera em ordem de desenho (
✎① 0:06 …,✎② 0:09 …); a imagem mostra apenas a tinta, então usescrawl zoom --markpara ver qual tinta é qual. - Uma ondulação ao redor do cursor indica um clique ou toque, e um rastro de dedo indica um deslize.
- Um rastro vermelho brilhante que afina é o apontador laser, usado para apontar sem deixar marca.
Outros arquivos: scrawl.json é o manifesto completo (keyframes, marks com forma e caixa, events, transcript.words com tempos, contexto context do app e autocrop). recording.mp4 ou recording.mov e audio.wav são as mídias originais. Um arquivo .media-pending significa que o vídeo ainda está sendo copiado de outro Mac.
A CLI scrawl
scrawl é o binário do próprio aplicativo Scrawl. Se command -v scrawl não encontrar nada, use /Applications/Scrawl.app/Contents/MacOS/scrawl (ou o mesmo caminho em ~/Applications), e avise à pessoa que ela pode colocá-lo no PATH com Instalar em Ajustes do Scrawl › Agentes. Ele funciona apenas no Mac com Scrawl instalado. Em qualquer outro lugar, leia contact-sheet.png, frames/ e scrawl.json diretamente. Todo comando aceita um caminho de pacote, e a maioria usa latest por padrão (a captura mais recente). Coloque o caminho entre aspas, pois geralmente contém "Application Support".
Olhar mais de perto um momento
Use zoom quando o problema for movimento (uma animação, um salto, uma cintilação) ou acontecer entre keyframes, ou quando você não conseguir identificar para onde uma marca aponta:
scrawl zoom <pacote> --at 0:21 # um horário, M:SS ou segundos
scrawl zoom <pacote> --at "a largura muda" # ou uma frase que disseram
scrawl zoom <pacote> --at 0:21 --span 1 --frames 16 --full
scrawl zoom <pacote> --mark 2 # a marca mostrada como ✎② no texto
scrawl zoom <pacote> --mark 1 --frame 4 # ✎① do keyframe #4, quando vários têm ✎①
Isso imprime o caminho de uma folha PNG de quadros ao redor daquele momento, o horário de cada célula e o que foi dito. Abra o PNG e olhe antes de agir com base no feedback. --span são os segundos cobertos (padrão 2, um quarto deles antes do momento), --frames o número de células (padrão 12) e --full mostra a tela inteira em vez do corte. As células são numeradas a partir de #1 dentro da folha, então esses números não são números de keyframe.
--mark recebe o número de uma marca do texto ou seu id (m2) e centraliza a folha no horário em que foi desenhada, apenas com a tinta daquela marca, desenhada por completo desde o momento em que começa. scrawl inspect <pacote> --marks lista cada marca (#2 ✎② 0:09 marked (2 strokes) · m2: keyframe, número, horário, forma, em que foi desenhada, id), e --marks --json fornece o mesmo em JSON.
Outros comandos
scrawl inspect <pacote> # summary.md, o texto acima
scrawl inspect <pacote> --json # scrawl.json
scrawl inspect <pacote> --marks # as marcas, numeradas como no texto [--json]
scrawl frames <pacote> --from 0:04 --to 0:06 [--fps 4] # PNGs simples de um intervalo; imprime seus caminhos
scrawl send <pacote> --session ses_… # enfileira a captura em uma sessão do OpenCode
scrawl send <pacote> --clipboard # copia o texto do resumo para a área de transferência
scrawl export <pacote> [--out demo.mp4] [--zoom] [--crop auto|full|x,y,w,h] [--size 1920]
zoomeframesescrevem em<pacote>/zoom/. Deixe o resto do pacote como está, pois o Scrawl gerencia esses arquivos e os limpa.sendsem--sessionvai para a sessão para a qual a captura foi endereçada (a linhaFor session:), e senão para a sessão mais recentemente ativa. Com um destino gravado, ele recusa um--sessiondiferente a menos que você passe--reroute, então verifique com a pessoa antes de redirecionar.exportescreve um.mp4com a tinta e cliques incorporados e o áudio sincronizado (padrão~/Movies/Scrawl/<pacote>.mp4).--zoomsuaviza em direção à atividade.--no-ink,--no-clicks,--hevce--fpstambém estão disponíveis.- Vídeo e áudio vão para a Lixeira 7 dias após uma captura, a menos que a pessoa tenha mudado isso nos Ajustes. Depois disso,
zoom,frameseexportnão conseguem ler o vídeo, masframes/, a contact-sheet escrawl.jsonpermanecem. scrawl <comando> --helplista todas as flags, escrawl skillimprime este guia como a versão instalada o conhece.