1 votos

Establecer un texto de color y enviarlo al portapapeles

Esta es, probablemente, muy fácil, pero todas las soluciones que encontré fueron dirigidos a aplicaciones específicas.

En mi trabajo, utilizamos un sistema en línea en el navegador y me encuentro a mí mismo cada día, establecer el color de mis mensajes usando el ratón, lo cual es muy molesto. Yo tan sólo es necesario introducir algo como:

[verde] El archivo fue aprobado. [/green] <-- esto es sólo para fines de ilustración desde este campo pregunta no tiene colores. Estas etiquetas no tienen ningún efecto en el sistema.

o

[rojo] El archivo fue denegada. [/rojo].

Dado que el sistema está en línea, no se pueden utilizar los comandos directos para establecer el color del texto como haríamos usando el Notepad o cualquier otra editor. Así que me pregunto si hay una manera de configurar el color del texto a través de Applescript (Automator Servicio) y enviarlo al portapapeles, porque sé que el navegador va a pegar el texto formateado con el color adecuado.

Cualquier otra solución que será apreciado.

1voto

user3439894 Puntos 5883

Como no tengo acceso a la aplicación web que utiliza, realmente no puedo probar si esto funcionará para usted.

El ejemplo de AppleScript de código, se muestra más abajo, con pruebas limitadas que funciona para mí como el código bajo macOS Alta de la Sierra.

Descripción: Obtiene el texto seleccionado en Google Chrome y lo coloca en el portapapeles en el color elegido como HTML de datos, y pega la espalda sobre el texto seleccionado.1

Utiliza un Automator Servicio, establece que el Servicio recibe seleccionado text en Google Chrome, con [] Salida reemplaza el texto seleccionado a la izquierda desactivada, para que un atajo de teclado fue asignado en Preferencias del Sistema > Teclado > accesos directos > Servicios como: ⌃⌘C

El Automator Servicio utiliza un Ejecutar AppleScript acción con el valor de código sustituido totalmente con el ejemplo de AppleScript código.

Uso: Después de la selección de texto en Google Chrome , a continuación, pulsando ⌃⌘C un choose from list cuadro de diálogo se muestra donde se puede seleccionar el color para hacer el texto seleccionado en el portapapeles. Usted no necesita usar el ratón, sólo las pulsaciones de teclado, por ejemplo, G-Entrar por el verde, O Entrar de naranja y R-Entrar por el rojo, o Esc para cancelar la acción.

En este punto, si todo funciona bien, el texto seleccionado se han reemplazado con el color de texto desde el portapapeles.1 (vas a tener que darle un segundo para permitir que el servicio completo).

Sí, es un par de pulsaciones de teclas, pero una vez que cómodo con ella creo que se convertirá en segunda naturaleza y ser más rápido, a continuación, tener que llegar para el ratón, etc.

Las habituales advertencias se pueden aplicar para el uso de este en: Preferencias del Sistema > Seguridad y Privacidad > Privacidad > Accesibilidad

1tenga en cuenta También que el cuadro de texto que contiene el texto seleccionado debe permitir pegar de nuevo el mismo código HTML de datos de la clase y tipo de estructura que se coloca en el portapapeles como se indica en los comentarios a la OP como las respuestas a las preguntas que se me pide, de lo contrario esto no va a funcionar como codificados.


Ejemplo de AppleScript código:

--  # Green HTML Color: #27ae60     '23323761653630'
--  # Orange HTML Color: #e67e22;       '23653637653232'
--  # Red HTML Color: #d35400       '23643335343030'
--  # sed command 'placeholder'     '706C616365686F6C646572'

property myBrowser : "Google Chrome"

property greenHTML : «data HTML3C6D65746120636861727365743D277574662D38273E3C7370616E207374796C653D22636F6C6F723A233030666630303B223E706C616365686F6C6465723C2F7370616E3E0A»
property orangeHTML : «data HTML3C6D65746120636861727365743D277574662D38273E3C7370616E207374796C653D22636F6C6F723A236536376532323B223E706C616365686F6C6465723C2F7370616E3E0A»
property redHTML : «data HTML3C6D65746120636861727365743D277574662D38273E3C7370616E207374796C653D22636F6C6F723A236433353430303B223E706C616365686F6C6465723C2F7370616E3E0A»

property tmpHTMLdata : "/private/tmp/tmpHTMLdata"


on run {input, parameters}
    activate me
    set selectedText to item 1 of input as text

    set chosenColor to (choose from list ¬
        {"Green", "Orange", "Red"} with title ¬
        "Color Chooser" with prompt ¬
        "Which color to make the selected text?") as text

    if (chosenColor as text) is "false" then
        return
    else if chosenColor is "Green" then
        my writeToFile(greenHTML, tmpHTMLdata, true)
    else if chosenColor is "Orange" then
        my writeToFile(orangeHTML, tmpHTMLdata, true)
    else if chosenColor is "Red" then
        my writeToFile(redHTML, tmpHTMLdata, true)
    end if

    do shell script "sed -i '' -e 's|placeholder|" & selectedText & "|' " & quoted form of tmpHTMLdata
    set the clipboard to (read tmpHTMLdata as «class HTML»)
    delay 0.25
    tell application myBrowser to activate
    delay 0.25
    tell application "System Events" to keystroke "v" using command down
end run


on writeToFile(theData, theFile, overwriteExistingContent)
    try
        set theOpenedFile to open for access POSIX file theFile with write permission
        if overwriteExistingContent is true then set eof of theOpenedFile to 0
        write theData to theOpenedFile starting at eof
        close access theOpenedFile
    on error eStr number eNum
        try
            close access file theFile
        end try
        display dialog eStr & " number " & eNum ¬
            buttons {"OK"} default button 1 ¬
            with title "File I/O Error..." with icon stop
        return
    end try
end writeToFile

Nota: El ejemplo de AppleScript código es eso y otra que incluye el manejo de errores no contiene ningún adicional de error de manipulación como puede ser apropiado. La responsabilidad recae sobre el usuario para agregar cualquier error de manipulación como puede ser apropiado, necesitaba o quería. Echa un vistazo al tratar de instrucción y de error de instrucción en la Guía de Lenguaje de AppleScript. Véase también el Trabajo con los Errores.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X