Каждый, кто часто работает с текстами и оперирует такими понятиями, как «количество знаков» или «количество слов», ощущает острую необходимость в редакторе с текстовым счетчиком. Программы Pages, Word, Byword и им подобные оснащены таким средством.
Но не пропускать же через эти приложения любой текстовый фрагмент, когда нужно выяснить его объем — это не всегда удобно. Чтобы счетчик знаков, слов и абзацев был всегда под рукой, можно воспользоваться «Автоматором», создав в нем очень простую службу.
Запускайте Automator и в списке новых процессов выберите тип Служба. С самого начала настроим нашу будущую службу: в заголовке области конструктора выберите в верхних двух выпадающих списках пункты текст (text) и любой программе (any application), соответственно.
Теперь из бокового меню, из раздела Библиотеки > Утилиты, перетащите в область конструктора действие Запустить AppleScript (Run AppleScript). В области кода этого действия уже будет стандартная заготовка — замените ее на следующий код:
on run {input, parameters}
try
--Перевод входного текстового массива в строковый формат
set MyText to input as string
--Определение и запись в переменные числа знаков, слов и абзацев
set CharactersNumber to the number of characters of MyText
set WordsNumber to the number of words of MyText
set ParagraphsNumber to the number of paragraphs of MyText
--Формирование внешнего вида диалогового окна
set DialogIcon to ("///System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ClippingText.icns") as POSIX file
set DialogTitle to "В выбранном текстовом фрагменте:"
set ResultString to "Знаков: " & CharactersNumber ¬
& return & "Слов: " & WordsNumber ¬
& return & "Абзацев: " & ParagraphsNumber
--Отображение диалогового окна с определенными выше значениями
using terms from application "Finder"
display dialog ResultString ¬
with icon DialogIcon ¬
buttons {"OK"} default button 1 ¬
with title DialogTitle
end using terms from
--Обработчик ошибочной ситуации
on error errmsg number errnum
display dialog errmsg & " [" & errnum & "] " ¬
buttons {"OK"} default button 1 with icon stop
end try
return input
end run
Собственно, и все. Остается только сохранить эту службу под названием, например, Статистика и проверить ее на деле — хотя бы на примере веб-браузера.
Загрузите какую-нибудь веб-страницу с более-менее объемным текстом, выделите произвольный фрагмент и щелкните на нем правой кнопкой мыши — в контекстном меню должна появиться команда Статистика (она может находиться в группе Службы). Нажав ее, вы увидите результат работы службы — маленький диалог с требуемой информацией о выделенном тексте:
Лучшие предложения
12 недорогих осенних аксессуаров, которые не дадут замёрзнуть
10 отличных шампуней, которые можно найти на «Яндекс Маркете»
Отборные скидки: выгодные предложения от AliExpress, «Яндекс Маркета», Lamoda и других магазинов
10 средств, с которыми будет проще ухаживать за секс-игрушками
10 вещей с тыквами и в виде тыквы, чтобы уютно «затыквиться» на всю осень
Выгодно: кроссовки adidas Originals со скидкой 54%
Список покупок: 10 товаров с AliExpress для стильного оформления детской
10 товаров с AliExpress для приготовления и подачи вареников
Как создать репутацию, которая будет работать на вас: 7 советов для владельцев бизнеса
Будущее на зарядке. Что нужно знать об электрокарах
Разрешения на бизнес: какими они бывают и как быстро их получить
Как отличить подделку духов от оригинала: 7 заблуждений, которые могут помешать сделать правильный выбор