Error de AppleScript: al colocar texto sin formato en el portapapeles, el texto siempre se convierte en texto enriquecido

2

Ejecuta el siguiente código para poner texto en tu portapapeles:

set testString to "This string should be plain text."
set the clipboard to testString

Si abre un nuevo archivo .rtf en TextEdit.app y pega el portapapeles en este documento, observará que el portapapeles contiene texto enriquecido. Específicamente, el texto del portapapeles es de la fuente Helvetica y del tamaño 12 .

También intenté especificar set the clipboard to (testString as string) o set the clipboard to (testString as text) . Pero, el código siempre pone texto enriquecido en el portapapeles. Este texto enriquecido es siempre del mismo estilo (como se describe en el párrafo anterior).

¿Es posible poner texto en el portapapeles, como texto sin formato, en AppleScript?

OS X El Capitan, versión 10.11.6.

pregunta rubik's sphere 10.06.2017 - 03:51

3 respuestas

2

Es posible que copiar el texto en el Pasteboard utilizando Cocoa-AppleScript solo establezca texto sin formato para pegarlo en el documento RTF.

De lo contrario, usa lo siguiente como solución alternativa:

set testString to "This string should be plain text." as string
do shell script "pbcopy <<<" & quoted form of testString

El método de solución mencionado anteriormente agrega linefeed después de testString al Portapapeles y si ese es un comportamiento no deseado, use:

set testString to "This string should be plain text." as string
do shell script "printf " & the quoted form of testString & " | pbcopy"

La otra opción es usar Pegar y combinar estilo ⌥⇧⌘V en lugar de Pegar ⌘V para coincidir con lo que hay en el punto de inserción.

    
respondido por el user3439894 10.06.2017 - 06:11
0

Esto debería funcionar:

set the clipboard to string of (the clipboard as record)

De hecho, puede hacer una prueba de seguridad usando una declaración de prueba:

try
  set the clipboard to string of (the clipboard as record)
on error errMsg
  display dialog errMsg
end try
    
respondido por el haykam 10.06.2017 - 04:35
0

Parece que, independientemente de lo que haga, si ha seleccionado texto sin formato en la nueva pestaña de documento en sus preferencias de edición de texto, el portapapeles pegará texto sin formato. Sin embargo, si tiene texto enriquecido habilitado, parece que todo se pegará como texto enriquecido en un documento rtf.

También intenté seleccionar el texto en el documento RTF e intenté convertirlo en texto sin formato en el menú de formato. Apareció una ventana de diálogo que decía que el documento se convertiría de RTF a texto sin formato si elegía formatear el texto

    
respondido por el wch1zpink 10.06.2017 - 08:35

Lea otras preguntas en las etiquetas