wpm
é um programa de terminal UNIX baseado em maldições para medir e melhorar sua velocidade de digitação (medida em palavras por minuto, ou WPM).
Depende apenas de bibliotecas Python padrão e, portanto, funciona com Python 2, 3 e PyPy.
A forma recomendada é instalar via PyPi
$ pip install wpm
O acima geralmente requer sudo
. Se não quiser instalá-lo em todo o sistema, você pode usar pip install wpm --user
.
Lembre-se de verificar se há atualizações com pip install --upgrade wpm
. Você também pode instalá-lo a partir do repositório de origem com
$ pip install . [--user]
Para apenas testar o aplicativo sem instalar, digite make run
.
Basta digitar wpm
para iniciar o programa. O cronômetro iniciará quando você pressionar a primeira tecla. A qualquer momento, você pode clicar em ESCAPE para sair.
Você pode retroceder para a palavra atual que está editando, se cometer um erro. Erros diminuirão a pontuação de precisão.
Se tiver problemas para encontrar o arquivo wpm
, você também pode iniciá-lo digitando python -m wpm
. Você também pode ver opções com python -m wpm --help
.
O WPM é calculado dividindo os caracteres por segundo por cinco e depois multiplicando por 60. Esta é uma fórmula bem conhecida, mas fornece pontuações um pouco mais altas do que em sites como typeracer.com. No entanto, é bom o suficiente para avaliar sua velocidade de digitação. E funciona offline e com seus próprios textos.
Em relação ao TypeRacer, eu realmente sugiro que todos dêem uma olhada. Eu uso este programa apenas para me aquecer antes de acessar o typeracer.com, onde você pode competir contra outros.
Execute fora do tmux e use uma janela de terminal realmente rápida. No meu sistema macOS, encontrei a melhor latência usando o Terminal.app integrado, que supera facilmente o iTerm. Também descobri que o terminal Kitty oferece latência muito baixa.
No Linux, a latência de digitação máxima é alcançada se você abrir um dos consoles virtuais. Por exemplo, pressione CTRL+ALT+F2 e faça login, defina seu TERM=xterm-color
e execute wpm
. Muitos termos também têm uma latência bastante alta. Tente usar uxterm se precisar executá-lo dentro do X.
Acredito que todos podem digitar 100 WPM com bastante prática. Se você está digitando mais devagar do que isso, minhas sugestões são:
Se você estiver consistentemente acima de 100 WPM:
Pratique um pouco a cada poucos dias, mas não exagere. Pare quando estiver cansado ou desmotivado.
Se você quiser digitar um texto personalizado, execute
$ wpm --load yourfile.txt
Se você usar --load
, o autor estará vazio no momento, o título será o nome base do arquivo. O ID do texto será seu inode, apenas para torná-los únicos, para que suas estatísticas funcionem.
Você também pode agrupar vários textos em um único arquivo JSON, usando wpm --load-json yourfile.json
. Deve ter o seguinte formato:
[
{
"author" : " Author Name " ,
"title" : " Title of Work " ,
"text" : " The text to type here ... "
"id" : 123 ,
},
...
]
O id
é um número inteiro opcional. Se você deixar de fora, um número inteiro crescente baseado em zero será usado.
wpm salvará as pontuações em um arquivo CSV em ~/.wpm.csv. Este arquivo pode ser carregado diretamente no Excel. Ele usa o mesmo formato do TypeRacer, com a adição de algumas colunas extras no final. Isso significa que deve ser possível usar as ferramentas existentes de histórico de pontuação do TypeRacer com este arquivo com pequenas modificações.
A ordem das colunas é:
Coluna | Tipo de dados | Explicação |
corrida | interno | Número da corrida, sempre crescente e vinculado ao carimbo de data/hora |
ppm | flutuador | O WPM médio para aquela cotação naquela única vez |
precisão | flutuador | De 0 a 1, onde 1 significa sem erros |
classificação | interno | Sempre 1 |
pilotos | interno | Sempre 1 |
id_texto | interno | Número do item do texto em determinado banco de dados |
carimbo de data/hora | str | Carimbo de data e hora UTC no formato strptime %Y-%m-%d %H:%M:%S.%f |
banco de dados | str | "default" ou o nome base do arquivo usado |
marcação | str | Uma tag fornecida pelo usuário para essa partitura (por exemplo, teclado) |
Caso haja algum problema ao salvar ou carregar o histórico de pontuação, ele copiará o arquivo existente em ~/.wpm.csv.backup e criará um novo.
Se você usar --tag=... para marcar suas pontuações, isso será usado até que você altere. É apenas um campo de texto livre que é salvo junto com o resultado de cada corrida. É útil comparar o quão bem você está digitando em diversas situações.
Por exemplo, talvez você queira verificar se está digitando mais rápido (mas talvez com menos precisão?) Em teclados diferentes, ou está aprendendo um novo layout de teclado como Dvorak ou Colemak e então usar as tags --tag=qwerty e --tag =dvorak. Se você está aprendendo a digitar ou digitando com mais dedos, geralmente começa mais devagar do que a velocidade normal. A marcação é uma ótima maneira de acompanhar seu progresso.
Ao executar wpm --stats (ou apenas -s), você verá uma tabela de estatísticas, agrupadas por cada tag. Ele mostra coisas como a média ao longo do tempo, juntamente com intervalos de confiança e previsão. Um item como n-10 significa “os últimos 10 jogos”.
Na primeira vez que você inicia o wpm, ele grava um arquivo .wpmrc em seu diretório inicial. Ele contém configurações do usuário que você pode alterar. Eles são fornecidos na tabela abaixo.
Seção | Nome | Padrão | Descrição |
maldições | escdelay | 15 | Tempo em ms para aguardar a chave de acompanhamento após ESC |
maldições | janela_timeout | 20 | Tempo em ms até desistir de esperar por um pressionamento de tecla. Se negativo, espere para sempre. |
ppm | nível_deconfiança | 0,95 | O nível de confiança para estatísticas WPM |
ppm | cpm | 0 | Se positivo, informe o CPM nas estatísticas em vez do WPM |
ppm | tab_spaces | 1 | Número de espaços para expandir as guias |
ppm | wrap_width | -1 | Se positivo, quebra o texto nesta largura |
xterm256colors | Códigos de cores para terminais de 256 cores (primeiro plano, fundo) | ||
xtermcolors | Códigos de cores para terminais comuns (primeiro plano, fundo) |
Você pode ativar certos recursos não oficiais definindo a variável de ambiente WPM_DEVFEATURES=feature1:feature2:etc..
Procure no arquivo wpm/devfeatures.py uma lista.
Direitos autorais 2017, 2018 Christian Stigen Larsen
Distribuído sob a Licença Pública Geral GNU Affero (AGPL) v3 ou posterior. Consulte o arquivo LICENSE.txt para obter o texto completo da licença. Este software faz uso de software de código aberto.
A base de dados de cotações não é coberta pela AGPL!