Destaque o mouse para screencasts sem perturbar o fluxo de trabalho

14

Para criar vídeos de documentação / tutorial, preciso destacar o mouse, por exemplo, com uma coroa translúcida amarela ao seu redor:

insira a descrição da imagem aqui

O marcador deve estar ativo ao clicar e mover, mas se estiver ligado o tempo todo, tudo bem.

Ele pode obscurecer a visão do que está por trás dele, até certo ponto, mas pode não desativar a capacidade de clicar no que está por trás dele ou tirar o foco das janelas.

O Compiz parece uma coisa do passado, o cursor do achado não está vinculado a nenhuma ação (cliques / movimentos) e bloqueia a interação (enquanto desenha, você não pode clicar em "através") e a tecla-mon não desenha corretamente, desabilita a interação e geralmente é incorreto quando se trata do marcador de mouse, pelo menos com um gerenciador de janelas lado a lado.

Estou usando o Arch Linux e ui impressionante.

Obrigado!

qubodup
fonte
Para o registro, eu tive problemas semelhantes com o key-mon em um wm não-lado a lado (openbox).
precisa saber é o seguinte
Instale um tema de mouse personalizado. Funciona o tempo todo. Mais detalhes na minha resposta abaixo.
clearkimura

Respostas:

6

Use um tema de mouse personalizado que siga a especificação XDG .

Essa pode ser a maneira mais fácil de introduzir o marcador. Suponho que isso apenas adicione uma camada de círculo translúcido ao cursor ou mais simples. Melhor ainda, essa abordagem provavelmente será aplicável aos temas de cursor X11 e Wayland, conforme observado neste ArchWiki .

Como criar o tema do mouse

Temos que criar o tema do mouse personalizado? Sim, se o usuário preferir criar um por conta própria. Isso pode levar tempo e a maioria dos usuários precisará fazer algumas leituras.

A discussão mais recente sobre "criação de temas de ícones" é por volta de 2015, encontrada neste tópico no Linux.org. Ele cobre um pouco os cursores e fornece generosamente mais links para futuras leituras.

Vários tutoriais antigos, por volta de 2010, mencionaram este plug-in GIMP para criar o X11 cursor do mouse (XMC). Outra abordagem é usar o programa Xcursorgen , explicado neste artigo no ehow.com.

Ou sem criar tema

Então, novamente, precisamos criar um? Não, porque alguns usuários já criaram esses temas. A maioria dos usuários terá apenas que pesquisar, baixar e instalar.

Eu descobri que o DMZ-Highlight by MBOSSG é uma solução simples e elegante.

É um tema de mouse personalizado para Ubuntu / Linux que possui um círculo amarelo translúcido abaixo do cursor, que é quase exatamente o que a pergunta havia descrito. Como o nome sugere, o DMZ-Highlight (à esquerda) é baseado na variante branca DMZ dos temas do cursor DMZ.

DMZ-Highlight e DMZ branco comparados

O DMZ-Hightlight funciona?

  • marcador destacado: Sim
  • amarelo translúcido: Sim
  • marcador ativo: Sim, ao clicar e mover ^ 1
  • desativar o clique: Não ^ 2
  • roubar o foco: Não ^ 2

^ 1: visível o tempo todo para a maioria dos elementos da interface do usuário, exceto que a entrada de texto mostrará o Icursor usual

DMZ-Destaque contra Mousepad

^ 2: o tema do mouse não obstrui nem tira o foco das janelas, apenas o cursor usual com um destaque embaixo

Destaque da DMZ contra elementos da interface do usuário e área de trabalho

Isenção de responsabilidade : Esta resposta pretende sugerir a maneira mais fácil de introduzir o marcador no cursor. Como tal, esta resposta não explica em "como instalar o tema do mouse" (isso deve ser coberto por uma pergunta e resposta separadas).

O autor do DMZ-Highlight havia fornecido scripts de instalação e desinstalação, que são convenientes para os usuários do Ubuntu. No meu caso, o cursor foi instalado e configurado manualmente via sudo update-alternativecomandos, como eu prefiro dessa maneira.

Destaque DMZ testado no Xubuntu 14.04 (Xfce 4.10).

TL; DR Instale um tema de mouse personalizado, que realçará o cursor. Zero scripts, funciona o tempo todo.

clearkimura
fonte
Estranhamente, esse tema não exibe o círculo amarelo transparente para mim, mas altera o cursor do mouse. Não tenho certeza do que está acontecendo lá. Isso parece perfeito, mas estou preocupado que ele não seja capturado por alguns programas de gravação de tela que não suportem a captura do cursor (uma das principais razões pelas quais estou procurando isso).
gandalf3
Eu confirmei que o DMZ-Highlight funciona em Xfce 4.10 de composição / não composição; O destaque é translúcido e visível quando o screencast usa o vokoscreen 1.9.0 (usando libav-tools), Xubuntu 14.04.
clearkimura
4

Embora o tema DMZ-Highlight sugerido acima funcione para o ponteiro de seta básico, não os outros cursores são destacados.

Frustrado com isso, escrevi um pequeno programa que aplica um destaque semelhante a todos os cursores para um determinado tema.

Para aqueles que não querem compilar e executá-lo, também incluí os resultados da execução do programa nos cursores DMZ-White, criando, por assim dizer, uma versão atualizada do tema DMZ-Highlight, onde todos os cursores são destacados

Cursores destacados

DhatGuy
fonte
Obrigado por compartilhar. Sem a sua permissão, primeiro adotei o tema fornecido para facilitar a instalação em github.com/iPAS/DMZ-White-Highlighted .
iPAS
@iPAS feliz em ver que meu trabalho te inspirou!
precisa saber é o seguinte
-1

Você tentou o que é detalhado nesta resposta a uma pergunta semelhante? /unix//a/183941/141220

Você tem Arch e um ui incomum, então provavelmente sabia que precisava fazer alguns hackers por conta própria.

republicando aqui, isso vem do link acima, se funcionar, não se esqueça de agradecer ao usuário mikeserv também, pois sou principalmente um mensageiro aqui.


Provavelmente, o seguinte funcionará para você:

#!/bin/sh
unset X Y; sleep 1
eval "$(xdotool getmouselocation -shell 2>/dev/null)"
for n in X Y; do  : "$(($n-=$n>25?25:$n))"; done
xwd -root -silent |
xv -    -crop "$X" "$Y" 50 50 \
        -geometry "50x50+$X+$Y" \
        -nodecor -viewonly -rv -quit

Depende dos três utilitários xv, xwde xdotool. Os dois primeiros são utilitários X muito comuns e o terceiro tenho quase certeza de que você já possui.

Depois de dormir um segundo, xdotoolgrava as coordenadas atuais do mouse no stdout em um -shellformato compatível com a avaliação , como:

X=[num]
Y=[num]
windowID=[num]

evaldefine as variáveis do shell Nesse sentido, e o para subtrai laço metade do tamanho da imagem logo-a-ser-exibido de cada um $Xe $Yos valores da ou, se qualquer valor é inferior a 25, define-los para 0.

xwddespeja a janela raiz sobre um tubo para xv, que corta a localização do mouse para um tamanho de imagem 50x50e exibe um negativo da imagem sob o cursor atual do mouse em uma pequena janela sem qualquer decoração do gerenciador de janelas.

O resultado final é algo como isto:

insira a descrição da imagem aqui

... embora eu ache que o cursor do mouse não apareça nas capturas de tela. Tenha certeza, porém, estava logo acima da caixa branca quando tirei a foto.

Você pode ver na imagem como eu também escrevi como uma função shell e a coloquei em segundo plano. É principalmente por esse motivo que existe um sleep- pressione a tecla RETURN para rolar o terminal se você já estiver na parte inferior e xwdfoi rápido o suficiente para capturar a imagem da tela antes do terminal rolar - o que compensaria meu negativo na imagem um pouco e eu não gostei.

De qualquer forma, como xvé executado com os botões -viewonlye -quit, ele desaparecerá assim que um botão do mouse for pressionado ou uma tecla do teclado for pressionada - mas permanecerá até que você o faça.

Sem dúvida, você poderia fazer coisas muito mais elaboradas com ImageMagickou mesmo xvsozinho também - mas eu apenas fiz uma pequena caixa negativa sob o cursor do mouse. Você pode encontrar os documentos xv aqui e os documentos para xwdin man xwd.

bobafetthotmail
fonte
1
Interessante, mas parece não atender aos requisitos do OP. A janela que faz blocos clica e não segue o cursor enquanto se move.
precisa saber é o seguinte
esse script deve ser colocado em um loop com um 'sono' adequado, provavelmente. Como agora é claro, imprime apenas uma única imagem, duh.
bobafetthotmail
quanto aos cliques de bloqueio, acho que você precisa jogar com a -rootopção in xv, pois isso obriga a não abrir sua própria janela x em cima das coisas. Mas como ele não consegue detectar cliques (o ponto inteiro aqui), você precisará que o script o encerre e o reinicie manualmente em um loop. Olhe para as "Opções da janela root" no docs structbio.vanderbilt.edu/chazin/wisdom/xv-3.10a/...
bobafetthotmail
1
Não posso imaginar que o desempenho seja muito bom ao simplesmente despejar todo o script em um loop. Mesmo sem o sono, a janela leva quase meio segundo para aparecer na minha máquina.
gandalf3
Desenhar na janela raiz não permite desenhar sobre outras janelas AFAIK .. Pelo menos, esse parece ser o caso após um teste rápido.
gandalf3