Cursorless: magia alienígena llegada del futuro
- Cadey menciona que empezó a presentar síntomas de RSI (lesión por esfuerzo repetitivo) antes de comenzar a trabajar en su nuevo empleo.
- Dice que ya esperaba los síntomas de RSI y que actualmente se está recuperando.
- Expresa que, cuando tuvo RSI antes, lo sobrellevó escribiendo sobre tecnología, pero que esta vez necesita poder programar.
- Cadey usa principalmente emacs, pero esta vez está usando Visual Studio Code, y la razón es una extensión llamada "Cursorless".
Las funciones mágicas de Cursorless
- "Cursorless" es un plugin que se integra con software de control por voz para permitir la edición de código a nivel de AST mediante voz.
- La parte más mágica de "Cursorless" son los conceptos de "objetivos (Targets)", que son anclas individuales dentro del documento, y "destinos (Destinations)", que son posiciones relativas a esos objetivos.
- Todos los tokens del documento muestran una letra sobre ellos con un sombrero de color, lo que permite dar comandos según la ubicación, el destino y la ruta entre ambos.
- Por ejemplo, la palabra "function" puede referenciarse como "green urge" y usarse para borrar o mover esa palabra.
El verdadero poder de Cursorless
- "Cursorless" no solo realiza acciones de edición simples, sino que además entiende el AST, por lo que puede ejecutar acciones a través de funciones completas.
- Por ejemplo, refactorizar una función para convertirla en asíncrona se vuelve sencillo usando "Cursorless".
- Cadey explica que, al usar "Cursorless" repetidamente, los comandos se van volviendo familiares como una segunda naturaleza.
Escribir tus propios comandos
- Es posible escribir tus propios comandos usando "Cursorless" y "Talon".
- Los comandos de "Talon" se dividen en patrones (las palabras que se dicen) y capturas (lo que se quiere extraer).
- Como ejemplo de una regla de "Talon" más compleja, se explica cómo declarar métodos en el lenguaje Go.
Un nuevo intento de explicar el concepto de punteros
- Cadey está experimentando con los términos "raising" y "lowering" para explicar el concepto de punteros en Go.
- Como alternativa a la sintaxis de punteros estilo C que usa Go, está explorando una manera de expresar la transición entre valores puntero y valores normales con "raising" y "lowering".
La opinión de GN⁺
- El punto más importante de este artículo es que la extensión "Cursorless" mejora la accesibilidad de la programación mediante control por voz y permite que también puedan programar personas a quienes se les dificulta teclear por lesiones como RSI.
- Lo especialmente interesante de "Cursorless" es que ofrece una forma innovadora de editar código con la voz, lo que abre nuevas posibilidades para el futuro del desarrollo de software.
1 comentarios
Opiniones en Hacker News
La sorpresa del autor y el compartir su propio repositorio experimental de Talon
La utilidad de manipular código y usar comandos de voz con Talon
Comparación con avy, que usa teclado en lugar de voz
Enlace a una demo de programación por voz y expresión de asombro
Charla de Strange Loop que muestra una visión general de Cursorless y ejemplos reales de uso
Apoyo al desarrollo de Cursorless y sensación de una barrera personal para empezar a usarlo
Curiosidad sobre la elección de los comandos de voz
Pregunta sobre la posibilidad de ajustar la posición del cursor con tecnología de seguimiento ocular
Se comparte una experiencia con RSI y una mejora lograda al cambiar la forma de escribir