1 votos

Autómata: Error al ejecutar un servicio de recuento de palabras en TextEdit

Seguí un breve guía paso a paso para añadir recuento de palabras funcionalidad para TextEdit .

Tenga en cuenta que la guía instruye: "Le pedirá que elija un tipo para su documento; haga clic en Servicio ". Sin embargo, probablemente debido a diferencias de versión, en su lugar hay que elegir Acción rápida .

Como aconseja la guía, he utilizado este código:

osascript tell application “TextEdit” set word_count to count words of document 1 set char_count to count characters of document 1 set show_words to (word_count as string) & ” words. (” & (char_count as string) & ” characters.)” set dialog_title to “TextEdit Word Count” display dialog show_words with icon 1 with title dialog_title buttons {“Ok”} default button “Ok” end tell AppleScriptHereDoc

Después de crear la Acción / Servicio y ejecutarlo, obtengo el siguiente error:

The action “Run Shell Script” encountered an error: “-: -c: line 0: syntax error near unexpected token `('
-: -c: line 0: `osascript tell application “TextEdit” set word_count to count words of document 1 set char_count to count characters of document 1 set show_words to (word_count as string) & ” words. (” & (char_count as string) & ” characters.)” set dialog_title to “TextEdit Word Count” display dialog show_words with icon 1 with title dialog_title buttons {“Ok”} default button “Ok” end tell AppleScriptHereDoc'”

La guía es del 23 de febrero de 2018 (hace más de 5 años en el momento de escribir esto), así que eso puede tener algo que ver. Aunque esperemos que haya una solución sencilla.

0voto

Chazbot Puntos 136

No importa...

Resulta que hay fue una respuesta sencilla. Necesitaba ir a el post original de Tony T1 y copiar el código de allí en su lugar.

El artículo de la página de MacWorld tenía el código mal formateado y por eso no funcionaba. Debería ser el siguiente:

osascript <<-AppleScriptHereDoc

tell application "TextEdit"

  set word_count to count words of document 1

  set char_count to count characters of document 1

  set show_words to (word_count as string) & " words. (" & (char_count as string) & " characters.)"

  set dialog_title to "TextEdit Word Count"

  display dialog show_words with icon 1 with title dialog_title buttons {"Ok"} default button "Ok"

end tell

AppleScriptHereDoc

Dejo esto aquí por si a otros les resulta útil.

Queda un inconveniente, y es que siempre calcula el recuento de palabras a partir de <em>todos </em>el texto en la ventana TextEdit, en lugar de sólo la parte seleccionada del texto. Pero se puede solucionar pegando en una nueva ventana de TextEdit cuando se desea obtener el recuento de palabras. Si alguien sabe una manera de hacer que el objetivo sólo el <em>seleccionado </em>texto, por favor deje un comentario. No he conseguido que Automator me permita especificarlo.

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