Asignar familia de fuentes monoespaciadas al texto seleccionado con el método abreviado de teclado en mac os x

8

Escribo muchos correos electrónicos técnicos, y me gusta usar una fuente monoespaciada para los bits de código. Resalte texto, presione Apple-T, elija mi fuente de la lista de favoritos, luego cierre la ventana de fuentes. ¿Hay alguna forma de utilizar un método abreviado de teclado para aplicar una fuente determinada al texto seleccionado actualmente? Idealmente, esto sería para todo el sistema operativo, pero si eso no es posible, puedo usarlo para una sola aplicación (Mail.app)

    
pregunta Sam Barnum 04.03.2011 - 21:01

4 respuestas

2

He estado buscando esto durante mucho tiempo.

Finalmente logré terminar con algo que realmente funciona muy bien para mí, con la ayuda de Alfred y la herramienta CLI de Highlight.

Aquí está la parte del guión de Alfred:

query="{query}"
if echo $query|grep -e "^__SHORTCUT__"
then
    echo "$query"|sed -E "s/^__SHORTCUT__//"|pbcopy
    syntax=txt
else
    osascript -e 'tell application "System Events" to keystroke "c" using {command down}'
    syntax=$query
fi

pbpaste|/usr/local/bin/highlight --syntax $syntax --font Menlo --font-size 12 --out-format=rtf|pbcopy
osascript -e 'tell application "System Events" to keystroke "v" using {command down}'

Asegúrese de que el activador de acceso directo agregue __SHORTCUT__ para que se reconozca y el argumento sea "Selección en OSX":

Demostracióncorta enlace

    
respondido por el Yann Bizeul 16.07.2017 - 20:48
1

No conozco una forma en todo el sistema de crear secuencias de comandos en el panel de Fuentes, pero aquí hay algunas maneras de obtener acceso rápido a las fuentes monoespaciadas en Mail.app

Forma 1: mensaje de texto del plan

Ir a las preferencias de Mail.app > Fuentes y amp; Colores y marque la casilla de verificación "Usar fuente de ancho fijo para mensajes de texto sin formato"

Ahora,cuandoestásenunmensajeenelquequieresusarunafuentemonoespaciada,simplementepuedespulsar:Comando-Mayús-Typuedealternarentrelafuentedeanchofijodesuelecciónylafuenteestándar(mensajedetextosinformatoytextoenriquecido).

Ladesventajadeestemétodoesquesielreceptornohaestablecidosufuenteenunafuentedeanchofijo,esposiblequenoveanelmensajecomoseesperaba.

Forma2:configuralafuenteconApplescript

LasegundaformadehacerloseríacrearunnuevomensajeconlafuentecorrectaelegidausandoApplescript.Puedeshacerloasí:

tellapplication"Mail"
    set outgoingMessage to make new outgoing message
    set fontFace to "Times"
    tell outgoingMessage
        set the content to " "
        set font of content to fontFace
        set size of content to (14)
        set visible to true
    end tell
end tell

Tienes que configurar el contenido a algo con este script. Parece que Mail no te permite establecer la fuente para un mensaje vacío.

Forma 3: utilizar TextExpander

De esta manera, cuesta dinero pero puede darte lo que buscas. Puede configurar un par de TextExpander ($ 34.99 USD en la tienda de aplicaciones ) atajos para un ancho fijo y un tipo normal para que pueda alternar de un lado a otro escribiendo algunos caracteres.

TextExpander le permitirá insertar texto enriquecido (texto con una fuente, color, estilo, etc.). Simplemente cree un fragmento de texto, imágenes con formato de tipo y configure una fuente para el texto que va a insertar. Deberá incluir al menos un carácter de espacio para que esta estrategia funcione.

Necesitarás tus fragmentos de código para incluir al menos un carácter de espacio para asegurarte de que la fuente tomará.

    
respondido por el Samuel Mikel Bowles 17.09.2011 - 22:51
1

Lo que terminé usando fue especificar manualmente monoespacio en algún texto, luego Formato - > Copiar estilo (Opción + Cmd + C) que copia el formato pero no el texto. Luego seleccione otro texto sin formato y Formato- > Estilo de pegado (Opción + Cmd + V) que asigna este formato a la selección. Después de reiniciar, debe hacer esto nuevamente, y solo funciona para un estilo, pero esto satisface mis necesidades.

    
respondido por el Sam Barnum 26.09.2016 - 22:46
0

Copia un personaje con un estilo específico:

echo "<span style=\"font:14px 'Monaco'\">&nbsp;</span>" | textutil -format html -convert rtf -stdin -stdout | pbcopy -Prefer rtf

pbcopy -Prefer rtf no incluye datos de texto sin formato, por lo que pegar solo funcionará en vistas de texto enriquecido.

Inserta un carácter con un estilo específico:

try
    try
        set old to the clipboard
    end try
    set html to quoted form of "<span style=\"font:14px 'Monaco'\">&nbsp;</span>"
    do shell script "echo " & html & " | textutil -format html -convert rtf -stdin -stdout | pbcopy -Prefer rtf"
    tell application "System Events" to keystroke "v" using command down
    delay 0.03
    set the clipboard to old
end try

Estilo de pegado:

try
    try
        set old to the clipboard
    end try
    tell application "System Events" to keystroke "c" using command down
    delay 0.03
    set input to Unicode text of (the clipboard as record)
    set txt to quoted form of ("<span style=\"font:14px 'Monaco'\">" & input & "</span>")
    do shell script "echo " & txt & " | textutil -format html -convert rtf -stdin -stdout | pbcopy -Prefer rtf"
    tell application "System Events" to keystroke "v" using command down
    delay 0.03
    set the clipboard to old
end try
    
respondido por el user495470 20.09.2011 - 10:35

Lea otras preguntas en las etiquetas