Escribo muchos correos electrónicos técnicos y me gusta usar una fuente monoespaciada para los bits de código. Resalte el texto, presione apple-T, elija mi fuente de la lista de favoritos, luego cierre la ventana de fuentes. ¿Hay alguna manera de usar 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)
He estado buscando hacer esto durante mucho tiempo.
Finalmente logré terminar con algo que realmente funciona muy bien para mí, con la ayuda de Alfred y la herramienta Highlight CLI.
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 se agregue __SHORTCUT__
para ser reconocido y el argumento sea "Selección en OSX":
Breve demostración https://youtu.be/y8NJT52APRQ
No conozco una forma en todo el sistema de escribir el panel Fuentes, pero aquí hay algunas formas de obtener acceso rápido a las fuentes monoespaciadas en Mail.app
Vaya a las preferencias de Mail.app> Fuentes y colores y marque la casilla de verificación "Usar fuente de ancho fijo para mensajes de texto sin formato"
Ahora, cuando esté en un mensaje en el que quiera usar una fuente monoespaciada, simplemente presione: Command- Shift- Ty puede alternar entre la fuente de ancho fijo de su elección y su fuente estándar (mensaje de texto sin formato y texto enriquecido).
La desventaja de este método es que si el receptor no ha configurado su fuente en una fuente de ancho fijo, es posible que no vea el mensaje como se esperaba.
La segunda forma de hacer esto sería crear un nuevo mensaje con la fuente correcta elegida usando Applescript. Puedes hacerlo así:
tell application "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 establecer el contenido en algo con este script. Parece que Mail no te permite configurar la fuente para un mensaje vacío.
De esta manera cuesta dinero, pero podría darte lo que buscas. Puede configurar un par de accesos directos de TextExpander ($ 34.99 USD en la tienda de aplicaciones) para ancho fijo y tipo normal para que pueda cambiar de un lado a otro escribiendo algunos caracteres.
TextExpander le permitirá insertar texto enriquecido (texto con un conjunto de fuente, color, estilo, etc.). Simplemente cree un fragmento de tipo Texto con formato, Imágenes y configure una fuente para el texto que insertará. Deberá incluir al menos un carácter de espacio para que esta estrategia funcione.
Necesitará que sus fragmentos incluyan al menos un carácter de espacio para asegurarse de que la fuente admita.
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. A continuación, seleccione algún otro texto sin formato y Formato->Pegar estilo (Opción+Cmd+V) que asigna este formato a la selección. Después de reiniciar, debe volver a hacer esto, y solo funciona para un estilo, pero esto satisface mis necesidades.
Copie un carácter con un estilo específico:
echo "<span style=\"font:14px 'Monaco'\"> </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'\"> </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
Pegar estilo:
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
dios de la basura
sam barnum
limónjengibre