3 puntos por GN⁺ 2023-11-11 | 1 comentarios | Compartir por WhatsApp

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

 
GN⁺ 2023-11-11
Opiniones en Hacker News
  • La sorpresa del autor y el compartir su propio repositorio experimental de Talon

    El autor expresa su sorpresa por la popularidad de su publicación y comparte un repositorio de GitHub relacionado con experimentos de Talon.

  • La utilidad de manipular código y usar comandos de voz con Talon

    Que Talon use el AST de tree-sitter para manipular "partes" del código es similar a los textobjects de Vim, pero con un componente adicional de voz. Resulta interesante la función de programar otras tareas mediante comandos de voz mientras se opera con el teclado.

  • Comparación con avy, que usa teclado en lugar de voz

    Funciona de forma parecida a avy, pero usa la voz en lugar del teclado y se combina con comandos conscientes del AST.

  • Enlace a una demo de programación por voz y expresión de asombro

    Se comparte un enlace a un video demo de programación por voz y se menciona lo fascinante que resulta verlo.

  • Charla de Strange Loop que muestra una visión general de Cursorless y ejemplos reales de uso

    Se enlaza una charla de Strange Loop donde puede verse una introducción general a Cursorless y cómo se usa en la práctica.

  • Apoyo al desarrollo de Cursorless y sensación de una barrera personal para empezar a usarlo

    Se expresa apoyo al desarrollo de Cursorless, aunque también se siente que el costo mental inicial para empezar a usarlo realmente es alto.

  • Curiosidad sobre la elección de los comandos de voz

    Se pregunta por qué se eligieron palabras específicas como "urge" y "bat", y si sería posible usar otras palabras que comiencen con las letras correspondientes.

  • Pregunta sobre la posibilidad de ajustar la posición del cursor con tecnología de seguimiento ocular

    Se plantea la duda sobre el estado actual de la tecnología de eye tracking para colocar el cursor en el punto donde se fija la mirada.

  • Se comparte una experiencia con RSI y una mejora lograda al cambiar la forma de escribir

    Se comparte una experiencia personal con problemas de RSI; aunque se probaron varias herramientas ergonómicas, lo que más ayudó fue cambiar la manera de teclear.