2016-05-11 4 views

ответ

1

Чтобы увидеть, как это работает, попробуйте это очень простой сервис Automator:

Создать Услуги в Automator и выберите Текст и Каждое приложение в качестве входных данных.

Первый шаг рабочего процесса: Выполнение Applescript.

Параметр Applescript input содержит выделенный текст.

Установите Applescript в

on run {input, parameters} 
    display dialog (input as text) 
    return input 
end run 

После сохранения, вы должны это действие в контекстном меню, когда вы выбрали текст.

Возможно, именование отличается, я не знаю английских описаний. Но я надеюсь, что это хорошая отправная точка для вас.

Весело, Michael/Hamburg

2

Для Applescript, он работает с другими приложениями. Чтобы получить выделенный текст переднего окна в приложении, Applescript должен использовать язык/синтаксис, который это приложение понимает/отвечает. Для очень сценарных, на основе текста документа приложений, есть много сходства, ищет что-то вроде:

tell app "xyz" to get selection of document 1 

Однако, на самом деле нет никакого стандарта. Многие приложения не имеют объекта «выбора текста» в своем скриптовом словаре, поэтому вам придется делать всевозможные обходные пути. Смотрите следующие примеры:

tell application "Safari" to set selectedText to (do JavaScript "(''+getSelection())" in document 1) 

tell application "System Events" to tell application process "TextEdit" to tell attribute "AXSelectedText" of text area 1 of scroll area 1 of window 1 to set selectedText to its value 

tell application "Microsoft Word" to set selectedText to content of text object of selection 

Вы можете также сценарий «Системные события», чтобы имитировать нажатие клавиши командной-с, чтобы скопировать текст.

tell application "System Events" to keystroke "c" using {command down} 
delay 1 
set selectedText to the clipboard 

Если вам нужна более конкретная помощь, разместите свой код и укажите, с каким приложением вы работаете. Если это не приложение для сценариев, вам придется использовать последний метод, вызывающий системные события. Или, возможно, вы можете использовать службу OS X, о которой вы также спрашивали.

При создании службы в Automator вы создаете новый рабочий процесс типа Service. Затем просто убедитесь, что в верхней части окна указано: «Служба получает выбранные text». Затем вы можете использовать действия Automator для взаимодействия с выбранным текстом, который передается в действия, которые следуют. Не все программы совместимы с Сервисами, к сожалению.

Смежные вопросы