Как передать диалог отображения AppleScripts в Growl или growlnotify?

1172
pattulus

У меня есть этот простой AppleScript, который берет текст в буфер обмена и выводит количество использованных слов и символов.

То, что я пытаюсь сделать, это передать «диалог отображения» в Growl или Growlnotify. Я знаю, как использовать growlnotify в оболочке - это здорово и легко настраивается (примечание клея, назначение значка приложения или изображения и т. Д.), Но суть в том, что я не знаю, как это сделать в AppleScript. Я немного погуглил, но теперь время прошло, и я решил опубликовать свой вопрос здесь.

Итак, вот сценарий:

set myCount to count (the clipboard) set myWords to count words of (the clipboard) set myParas to count paragraphs of (the clipboard)  display dialog "Characters: " & myCount & " Words: " & myWords & " Paragraphs: " & myParas 

Благодарю.

0

2 ответа на вопрос

1
Daniel Beck

Есть документация для этого, я приведу пример в этом ответе .

Следующее работает с Growl 1.3.3 на OS X Lion:

tell application "Growl" set the allNotificationsList to {"Word Count"} set the enabledNotificationsList to {"Word Count"}  register as application "Word Counter" all notifications allNotificationsList default notifications enabledNotificationsList icon of application "Script Editor"  set myCount to count (the clipboard) set myWords to count words of (the clipboard) set myParas to count paragraphs of (the clipboard) -- Send a Notification... notify with name "Word Count" title "Word Counter" description (myCount as text) & " " & (myWords as text) & " " & (myParas as text) application name "Word Counter" end tell 

Screenshot of notification

Screenshot of application preferences

Я не могу понять, как передать диалоговое окно отображения в ваш сценарий, поэтому я попытался сделать это с помощью примера сценария со страницы документации ... но я не могу заставить его работать. Смотрите: http://d.pr/f/xcKh pattulus 12 лет назад 0
@pattulus Это потому, что вы не понимаете, что делает сценарий. Сначала он регистрирует приложение - каждый раз, когда вызывается скрипт, он не причиняет вреда - который появится в настройках Growl как отдельный настраиваемый элемент, а затем отправляет уведомление, притворяясь, что оно происходит из этого приложения. Редактирование моего ответа на соответствующем примере ... Daniel Beck 12 лет назад 0
Правильно. Я не AppleScripter, у меня действительно проблемы с выяснением синтаксиса. Еще больше спасибо за то, что я сделал это визуально и предложил решение. pattulus 12 лет назад 0
@pattulus Не за что. Прошло время, когда я купил Growl 1.3 в любом случае ... Возможно, вы также можете сделать это как скрипт оболочки, когда создадите для него сервис, получите буфер обмена в командной строке с помощью `pbpaste`. Daniel Beck 12 лет назад 0
1
user495470
set input to the clipboard as text set output to (number of characters of input & " characters " & number of words of input & " words " & number of paragraphs of input & " paragraphs") as text do shell script "/usr/local/bin/growlnotify " & quoted form of output -- brew install growlnotify 
Вот это да. Огромное спасибо - я бы не подумал, что так легко добавить цитируемый текст. Это здорово и намного легче понять и реализовать для меня, так как я более знаком с командами оболочки growlnotify. Я даю вам три символических зеленых галочки для этого Лри. pattulus 12 лет назад 0