Возьмите выбор Google-Chrome и текущий URL-адрес, затем создайте новое электронное письмо в Mail.app.

Я (нуб и) пытаюсь собрать скрипт для

  1. скопировать выделенный текст на вкладке Chrome
  2. скопируйте адрес вкладки
  3. compose new email in OSX Mail.app using:
    1. subject=Look at this, boss!
    2. сообщение: URL + выбор

Я пробовал использовать службы Automator (служба получает выбранный текст в любом приложении + модуль «новое почтовое сообщение»), который отлично подходит для заполнения тела сообщения, но без соответствующего URL-адреса почти невозможно в конечном итоге вернуться туда, откуда пришел текст…

Есть ли в этом смысл? Это сократит мой текущий рабочий процесс на несколько часов (копирование/вставка…). Спасибо за вашу помощь!


person JqmesKNG    schedule 01.04.2014    source источник


Ответы (1)


Я взял трещину в этом:

#!/bin/bash
# This successfully copies the highlighted text to the clipboard
chromeurl() {
    url=$(osascript <<EOT
        tell application "Google Chrome" to return URL of active tab of front window
EOT)
# & requires escaping for the xml
echo ${url/&/&amp;}
}

chrometext() {
    # Assign the clipboard to a variable
    # This avoids overwriting it, as "get copy" is the only way I know to get it out of chrome
    pbrevert=$(pbpaste)
    # Copy selected text in chrome 
    $(osascript <<EOT
        tell application "Google Chrome" to get copy selection of active tab of window 1
EOT)
    pbcapture="$(pbpaste)"

    # Revert clipboard
    echo $pbrevert | pbcopy

    echo $pbcapture
}

content="$(chromeurl) $(chrometext)"

echo $content

osascript -e "tell application \"Mail\" to make new outgoing message with properties {subject:\"Look at this, boss!\", content:\"$content\", visible:true}"

NB: он делает то, что вы упомянули, но не делает электронное письмо окном, сфокусированным на переднем плане:

Я также превратил его в .app с помощью Appify Матиаса Байненса. , который превращает файлы bash в файлы .app.

Ссылка Dropbox на .app

person robstarbuck    schedule 28.07.2016