Cursorless: magia alienígena vinda do futuro
- Cadey menciona que começou a apresentar sintomas de RSI (lesão por esforço repetitivo) antes de iniciar o trabalho no novo emprego.
- Diz que esses sintomas já eram esperados e que atualmente está em recuperação.
- Quando teve RSI anteriormente, lidou com isso escrevendo sobre tecnologia, mas desta vez expressa que precisa da capacidade de programar.
- Cadey usa principalmente o emacs, mas desta vez está usando o Visual Studio Code, e o motivo é uma extensão chamada "Cursorless".
Os recursos mágicos do Cursorless
- "Cursorless" é um plugin que se integra a softwares de controle por voz e permite editar código por voz no nível da AST.
- A parte mais mágica de "Cursorless" é o conceito de âncoras individuais no documento, chamadas de "alvos (Targets)", e de posições relativas a esses alvos, chamadas de "destinos (Destinations)".
- Todos os tokens do documento recebem chapéus coloridos exibidos sobre as letras, permitindo emitir comandos com base na posição, no destino e no caminho entre eles.
- Por exemplo, a palavra
function pode ser referenciada como green urge e usada para apagar ou mover essa palavra.
O verdadeiro poder do Cursorless
- "Cursorless" não realiza apenas ações simples de edição; ele também entende a AST, então consegue executar operações que abrangem uma função inteira.
- Por exemplo, refatorar uma função para torná-la assíncrona fica simples ao usar o "Cursorless".
- Cadey explica que, ao usar o "Cursorless" repetidamente, os comandos vão se tornando familiares, como uma segunda natureza.
Escrevendo seus próprios comandos
- É possível criar seus próprios comandos usando "Cursorless" e "Talon".
- Os comandos do "Talon" são divididos em padrões (as palavras faladas) e capturas (o que se quer extrair).
- Como exemplo da regra mais complexa do "Talon", é explicado como declarar métodos na linguagem Go.
Uma nova tentativa de explicar o conceito de ponteiros
- Cadey está experimentando os termos "raising" e "lowering" para explicar o conceito de ponteiros na linguagem Go.
- Como alternativa ao uso da sintaxe de ponteiros em estilo C na linguagem Go, está explorando uma forma de expressar a transição entre valores de ponteiro e valores comuns com "raising" e "lowering".
A opinião do GN⁺
- O ponto mais importante deste artigo é que a extensão "Cursorless" melhora a acessibilidade da programação por meio do controle por voz, tornando possível programar mesmo para pessoas que têm dificuldade para digitar por causa de lesões como RSI.
- O que torna os recursos do "Cursorless" especialmente interessantes é o fato de oferecerem uma forma inovadora de editar código por voz, abrindo novas possibilidades para o futuro do desenvolvimento de software.
1 comentários
Comentários do Hacker News
Surpresa do autor e compartilhamento do seu repositório experimental do Talon
Manipulação de código com Talon e utilidade dos comandos de voz
Comparação com o avy, que usa teclado em vez de voz
Link para uma demo de programação por voz e admiração com a experiência
Apresentação da Strange Loop que mostra uma visão geral do Cursorless e exemplos reais de uso
Apoio ao desenvolvimento do Cursorless e sensação de barreira pessoal para uso
Curiosidade sobre a escolha dos comandos de voz
Pergunta sobre a possibilidade de posicionar o cursor com tecnologia de rastreamento ocular
Compartilhamento de experiência com RSI e melhora após mudança no estilo de digitação