url actions

An Alfred workflow that fetches the URL and title of your browser’s current tab, and does things with them.

Author: pnlng

Last Updated: 29/02/20 21:48:56

Stars: 8

Get Workflow Get Latest Release View on GitHub

URL Actions

URL Actions is an Alfred workflow that fetches the URL and title of your browser’s current tab (compatible with Firefox, Safari, Chrome, and pretty much everything else), and
does things with them. For example, it can

  • Copy link in Markdown
  • Add a task to OmniFocus Pro
  • Clean up Amazon URLs

The actions are also customizable. It can

  • Open custom URLs
  • Copy custom strings to clipboard

An optional PopClip extension is also available, if one is inclined to trigger the workflow from the mouse.

Download

Table of Contents

Screenshots

Alfred OmniFocus quick entry

macOS notification

Why?

I’d like to be able to select the URL in the address bar of my browser and save the URL together with the page title somewhere else — without having to go back and forth between the browser and another app to copy and paste the two items separately.

See the Alternatives section for other implementations.

Usage

Select the desired URL (⌘L to get the URL of the current tab in a browser). Fire up the workflow’s associated hotkey, which is ⇧^C by default.

Alternatively, if you use PopClip, you trigger Alfred through the PopClip extension.

  • Note: The extension triggers Alfred 4 by default. If you use other versions of Alfred, you would need to modify alfred.applescript and Bundle Identifier in Config.plist, and package the extension yourself.

Configuration

Variables

See here for a quick tutorial on how to configure variables in Alfred.

  • CLEAN_AMAZON – Default true
    • The workflow removes tracking tokens from Amazon URLs if this variable is set to true.
    • To disable the feature, set the variable to false.
  • UPDATE_FREQUENCY – Default 7
    • Set once how many days the workflow should check for updates
    • Updates done through OneUpdater
  • CUSTOM_ACTIONS – Default unspecified.
    • You can supply custom actions that override the default actions.

Custom Actions

For a template, see default_actions.json, accessible via the keyword urlact in Alfred. _But please do not edit the default_actions.json file, as user changes will be overridden when the workflow is updated._

Example:

[
  {
    "action_title": "Copy as Markdown link",
    "output": "[{title}]({url})"
  },
  {
    "action_title": "Add to OmniFocus",
    "action_subtitle": "",
    "output": "omnifocus:///add?name={title}&note={url}",
    "encode": true
  }
]

Variables:

  • {title}
  • {url}

Attributes:

  • action_title: Action title shown in Alfred.
  • action_subtitle: (Optional) Action subtitle shown in Alfred. If unspecified, the workflow will display the formatted output in this field.
  • output: Desired output of the action.
  • encode: (Optional) Default false. Whether to encode the title of the webpage. This is useful when the action is to open an URL scheme.

Note: Currently, if the output matches the regex `^.+:///.`, the workflow will open the URL. Conversely, if the output doesn’t match the regex, the workflow will copy the output to clipboard.*

Alternatives

Copying URLs

Fallroot’s Copy URL is a great workflow for formatting an URL in various ways. It can get the current tab title and URL from Safari and Chrome. Alas, it does not support Firefox.

Adding to OmniFocus

There is a workflow called Create OmniFocus Tasks by Aaron Hockley. It’s hosted here on Dropbox, archived here on GitHub, and is no longer actively maintained.

If you use only Safari or Chrome, and do not need to copy links in Markdown or clean Amazon URLs, this workflow might be the easiest way to add an URL and the associated page title to OmniFocus.

Browser Specific

There are a few browser specific tools that can send the frontmost web page and URL to OmniFocus.

Browser Support

  • Firefox (including Firefox Developer Edition)
  • Chrome
  • Safari
  • Brave
  • Opera

Known Issues

  • If both Firefox and Firefox Developer Edition are running, the workflow may not get the correct title.
    • Both processes are named ‘firefox’, and AppleScript cannot distinguish the two by name.

Acknowledgements

This workflow is inspired by these articles and projects.

This workflow is especially indebted to: