Embora eu deva dizer que esse "requisito" soa bem estranho, nada é impossível. Você pode conseguir isso com um pequeno script, como mostrarei abaixo.
Preparação
Primeiro de tudo, precisamos instalar algumas ferramentas. Estes são xdotool
para a emulação de digitação e controle de janela, e byzanz
para a gravação de vídeo. Instale-os usando:
sudo apt install xdotool byzanz
Em seguida, copie o código no final desta resposta e salve-o como um script bash em sua máquina, por exemplo, como ~/bin/typerec
. Se você armazená-lo em uma pasta no seu $PATH
, você poderá executá-lo sem especificar seu caminho. Não esqueça de torná-lo executável depois usando chmod +x PATH/TO/SCRIPT
.
Uso
Agora, para registrar a digitação de um arquivo específico, primeiro abra seu editor de destino, no qual digitaremos. Certifique-se de que tenha algum recurso de "recuo automático" desativado, caso contrário, o recuo do código digitado será confuso!
Em seguida, inicie o meu script, por ex. de um terminal. A sintaxe correta é
typerec INPUT_FILE OUTPUT_FILE [DELAY]
onde INPUT_FILE
é o caminho para o seu arquivo de texto de código e OUTPUT_FILE
é o caminho do arquivo de saída onde a gravação deve ser armazenada. Deve ter uma extensão aceita por byzanz
, ou seja, um dos gif
, webm
, ogg
, ogv
, flv
, byzanz
(minhas recomendações em negrito). O argumento DELAY
é opcional e define o atraso entre dois pressionamentos de tecla em milissegundos. O padrão é 20 se omitido, eu recomendo não ir abaixo de 5.
Exemplo:
typerec /path/to/my/code.py ~/Videos/code.webm 100
O cursor do mouse mudará para algum tipo de mira (não visível na captura de tela) e você receberá um balão de notificação pedindo para clicar na janela do editor de destino agora: