Volver al blog
novedades actualizaciones macros importar atajos

Novedades de TypeSnap 1.4

TypeSnap 1.4 añade un atajo de Quick Search configurable, fragmentos Markdown y de código, las macros {{selected}} e {{if}}, un constructor de macros, IA local opcional, acciones de Atajos e importadores para Raycast, Espanso, Alfred y aText.

By Aaron Hampton 7 min read

TypeSnap 1.4.0 ya está disponible. Trae nuevos tipos de fragmento, macros nuevas, una forma de crear macros sin memorizar la sintaxis, compatibilidad con la app Atajos y cuatro importadores nuevos. Te cuento qué ha cambiado y cómo usar cada cosa.

Quick Search siempre se abría con Comando-Mayúsculas-T. Un cliente me escribió para contarme que ese es también el atajo de Chrome para reabrir la última pestaña cerrada, así que cada vez que intentaba recuperar una pestaña se le abría la ventana de búsqueda de TypeSnap. El atajo no debería haber sido fijo, y ya no lo es.

Ahora puedes elegir tu propio atajo en Ajustes > General > Atajo global de búsqueda. Haz clic en el atajo, pulsa la nueva combinación y listo. Comando-Mayúsculas-T sigue siendo el predeterminado, y el botón Restablecer te devuelve a él.

TypeSnap comprueba lo que grabas. El atajo tiene que incluir Comando o Control y al menos dos teclas modificadoras, para que no se coma una tecla que escribes en texto normal. También te avisa si macOS ya usa esa combinación o si alguno de tus fragmentos tiene el mismo atajo.

Fragmentos Markdown y de código

El menú de tipo de contenido del editor (Content Type) tiene dos opciones nuevas.

Los fragmentos Markdown se escriben en Markdown normal y se insertan como texto con formato. Admiten encabezados, negrita, cursiva, tachado, enlaces, código en línea, listas con viñetas, citas y bloques de código, y el editor muestra una vista previa mientras escribes. Si ya guardas tus plantillas en Markdown, puedes pegarlas tal cual.

Los fragmentos de código (Code) se insertan con resaltado de sintaxis y fuente monoespaciada. Elige el lenguaje en el menú Language, junto al tipo de contenido, o déjalo en Auto-Detect. Hay 19 lenguajes, entre ellos Swift, JavaScript, TypeScript, Python, Shell, SQL, Go, Rust, HTML, CSS, JSON y YAML. En las apps que aceptan texto con formato, los colores se mantienen.

{{selected}}: usa el texto que tienes seleccionado

La nueva macro {{selected}} inserta el texto que tengas seleccionado en la app que estás usando. Así un fragmento puede envolver o transformar tu selección en vez de limitarse a añadir texto nuevo.

Como escribir una abreviatura reemplazaría la selección, asigna a estos fragmentos un atajo de teclado. Este es uno que uso para convertir el texto seleccionado en un enlace Markdown con la URL que acabo de copiar:

[{{selected}}]({{clipboard}})

Selecciona las palabras, pulsa el atajo del fragmento y la selección se sustituye por el enlace terminado.

{{if}}: un resultado que cambia según tus respuestas

Los campos de relleno ahora se combinan con bloques {{if}}, de modo que un fragmento puede decir cosas distintas según lo que elijas. Esta respuesta de soporte cambia su última línea según el plan:

Hola, {{input:Nombre}}:

Gracias por pasarte a {{select:name=Plan:options=Pro,Team:default=Pro}}.
{{if:Plan == Team}}Puedes invitar a tu equipo desde la página de miembros.{{else}}Te enviaremos la clave de licencia por correo.{{/if}}

Si eliges “Team”, la respuesta termina con la invitación. Si eliges “Pro”, termina con la línea de la licencia. Puedes encadenar ramas con {{elseif:...}}, y las condiciones admiten ==, !=, contains, and, or y not. Un nombre de campo solo, como {{if:IncluirNotas}}, es verdadero cuando el campo tiene un valor.

Campos de relleno: vista previa en vivo y valores en línea

La ventana de campos de relleno tiene ahora una sección de Vista previa que muestra el texto final mientras escribes, incluida la rama de {{if}} que se va a usar. Ves el resultado antes de que llegue a tu documento.

También puedes saltarte la ventana escribiendo los valores justo después de la abreviatura. Si ;saludo tiene un campo, escribir ;saludo<Ada> lo expande con “Ada” ya rellenado. Si tiene más campos, separa los valores con <, por ejemplo ;saludo<Ada<Acme>. Funciona con los fragmentos que se expanden después de un espacio o un signo de puntuación. Para los que se expanden en cuanto terminas de escribir la abreviatura, activa el ajuste de espera que explico más abajo.

El constructor de macros

Ya no hace falta recordar la sintaxis de las macros. En el editor de fragmentos, haz clic en Insert Macro… para abrir el constructor guiado. Elige un tipo (campo de texto, menú desplegable, sección opcional, fecha y hora, If/Else, prompt de IA, o utilidades como {{cursor}}, {{clipboard}} y {{selected}}), rellena un formulario corto y verás la macro exacta que se va a insertar junto con una descripción de lo que hace.

Si seleccionas texto en el editor antes de abrir el constructor, las secciones opcionales y los bloques If/Else envuelven ese texto en lugar de insertar un bloque vacío.

IA local opcional con {{ai:...}}

La macro {{ai:...}} envía un prompt a un modelo de lenguaje cuando el fragmento se expande e inserta la respuesta. Solo se ejecuta en tu Mac. TypeSnap admite dos proveedores:

  • Apple Intelligence, con el modelo local de Apple. Necesitas un Mac en el que Apple Intelligence esté disponible y activado.
  • Ollama, un servidor de modelos local que instalas tú. TypeSnap solo se conecta a él en tu propio equipo (127.0.0.1 o localhost) y rechaza cualquier otra dirección, así que tu texto nunca se envía a un servicio en la nube.

Elige el proveedor en Ajustes > Avanzado: Apple Intelligence con Ollama como alternativa (la opción predeterminada), solo Apple Intelligence, solo Ollama, o desactivado. Para Ollama, instálalo, descarga un modelo (el nombre de modelo predeterminado en TypeSnap es llama3.2, así que ollama pull llama3.2 funciona sin cambiar nada) y deja el endpoint en http://127.0.0.1:11434, salvo que lo hayas cambiado.

Los prompts pueden usar $selected, $clipboard y los nombres de tus campos de relleno. Con un atajo de teclado, este fragmento corrige el texto seleccionado sin salir de donde estás:

{{ai:Corrige la ortografía y la gramática de $selected. No cambies nada más.}}

No pasa nada a menos que un fragmento contenga una macro {{ai:...}}. Si no se puede contactar con el modelo o tarda más de 20 segundos, TypeSnap muestra un error en lugar de escribir algo en tu documento.

Acciones para la app Atajos

TypeSnap aparece ahora en la app Atajos con cuatro acciones:

  • Expand Snippet devuelve el texto expandido de un fragmento y puede pegarlo en la app activa. Puedes elegir el fragmento o escribir su abreviatura, incluidos valores en línea como ;saludo<Ada>.
  • Create Snippet crea un fragmento a partir de una abreviatura, un nombre y un contenido, con un grupo opcional.
  • Search Snippets busca fragmentos por abreviatura, nombre, etiqueta o contenido.
  • Get Clipboard History Item devuelve una entrada del historial del portapapeles de TypeSnap.

Importa desde Raycast, Espanso, Alfred y aText

Archivo > Importar fragmentos… ahora lee exportaciones de cuatro apps más, además de TextExpander y TypeIt4Me:

  • Raycast: el archivo JSON que genera la exportación de fragmentos de Raycast. Guía
  • Espanso: tus archivos de coincidencias .yml o .yaml. Guía
  • Alfred: una colección .alfredsnippets o un archivo JSON. Guía
  • aText: una exportación en CSV o JSON. Guía

Los marcadores se convierten en macros de TypeSnap cuando hay un equivalente (los argumentos de Raycast pasan a ser campos de relleno, por ejemplo), y el resumen de la importación indica lo que se ha omitido o conviene revisar. Raycast y Alfred permiten fragmentos sin palabra clave. Esos llegan desactivados, con una abreviatura provisional que empieza por ;;, para que nunca salten al escribir una palabra normal. Ponles una abreviatura de verdad y actívalos cuando quieras. En la página de importación tienes todas las apps compatibles.

Dos ajustes de expansión nuevos

Los dos están en Ajustes > Expansión y los dos vienen desactivados, así que nada cambia a menos que los actives.

Match case of typed abbreviation (respetar las mayúsculas de la abreviatura). Con esta opción, escribir BTW inserta “BY THE WAY” y Btw inserta “By the way”. Se aplica a los fragmentos cuya distinción de mayúsculas está en Automático. Los fragmentos de código y los valores insertados, como el portapapeles, no se modifican.

Wait briefly when a longer abbreviation could follow (esperar un momento si puede venir una abreviatura más larga). Si ;em está configurado para expandirse en cuanto lo escribes y también tienes ;email, ;em saltaría antes de que pudieras terminar ;email. Con esta opción, TypeSnap espera un cuarto de segundo cuando todavía puede llegar una abreviatura más larga. También te permite escribir valores en línea en esos fragmentos.

Cómo actualizar

Si ya tienes TypeSnap, elige TypeSnap > Buscar actualizaciones… y se instalará la 1.4.0. También puedes descargar TypeSnap 1.4.0 directamente y arrastrarlo a Aplicaciones.

Todo lo de esta versión funciona durante la prueba gratuita. La licencia cuesta $17.99 una sola vez, sin suscripción, e incluye todas las novedades de la 1.4. La lista completa de lo que hace TypeSnap está en la página de funciones.

Prueba TypeSnap gratis durante 7 días o compra una vez por $17.99.

Si algo de la 1.4 no funciona como esperas, escríbeme. El cambio de Quick Search empezó exactamente así.

Stop typing the same things over and over

TypeSnap expands your snippets instantly. One-time purchase, no subscription.

¿Listo para escribir menos?

Prueba tus fragmentos en las apps que usas. Todas las funciones, gratis durante 7 días. Compra única de $17.99 si te resulta útil.

Descargar la prueba gratuita de 7 días

¿Ya lo probaste? Comprar licencia — $17.99

Descarga directa para Mac Expansión de texto local Creado por un desarrollador independiente