¿Cómo crear el Servicio Automator para cambiar la fuente del text seleccionado?

Intento crear un "Servicio" en Automator que cambie la fuente del text seleccionado en la aplicación más adelantada.

  • Usar Applescript para engañar al registrador de teclas con pulsaciones de teclas
  • ¿Cómo se establece una identificación de ráfaga usando ExifTools en MacOS?
  • Lectura programática de ambos títulos de Terminal.app por pestaña
  • Ejecutar script de línea de command desde el menu contextual del Finder
  • ¿Cómo cambiar la position de la barra de desplazamiento en AppleScript?
  • Usar applescript para crear espacios y ejecutar aplicaciones
  • ¿Por qué AppleScript en El Capitán funciona de manera diferente?
  • ¿Cómo uso Applescript con Keynote?
  • AppleScript para decirle a Adobe Reader que cierre un documento determinado
  • ¿Cómo enviar dos teclas que se repiten en AppleScript?
  • ¿Cómo devuelvo el número de la window actual en Chrome y abro una nueva pestaña en él?
  • Obteniendo datos de campo de una database Bento usando Applescript
  • 2 Solutions collect form web for “¿Cómo crear el Servicio Automator para cambiar la fuente del text seleccionado?”

    Podría asignar un acceso directo a un script como este:

    tell application "System Events" to tell (process 1 where frontmost is true) set {c1, c2} to value of attribute "AXSelectedTextRange" of text area 1 of scroll area 1 of window 1 end tell tell application (path to frontmost application as text) to tell document 1 tell characters c1 thru c2 set font to "Menlo" set size to 18 end tell end tell 

    Funciona con TextEdit y WriteRoom, pero probablemente deba modificarse para otras aplicaciones.

    Otra opción realmente horrible:

     try set old to the clipboard as record end try do shell script "textutil -stdin -stdout -format html -convert rtf <<< '<span style=\"font: 18px Menlo\">a</span>' | pbcopy" tell application "System Events" keystroke "v" using command down keystroke "c" using {option down, command down} keystroke "z" using command down keystroke "v" using {option down, command down} end tell delay 0.05 try set the clipboard to old end try 

    Después de mucha investigación, el siguiente flujo de trabajo me funciona en TextEdit, Mail, Notes, Stickies. Donde no funciona es cuando la aplicación utiliza styles (Microsoft Word, Pages, Keynote), porque el estilo anula la fuente que ingresa. La única forma en que puedo pensar para anular el estilo es escribir directamente cada aplicación para crear un estilo personalizado.

    Fuerza el flujo de trabajo de la fuente seleccionada

    Código ApplesScript:

     on run {input, parameters} do shell script "pbpaste | textutil -stdin -stdout -convert rtf -font Arial -fontsize 12 | pbcopy" tell application "System Events" to keystroke "v" using command down return input end run 
    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).