Copy Plain Text

Summary: Copies the titles of the selected actions to the clipboard as plain text.
Requires: OmniFocus Pro
Install Location: ~/Library/Scripts/Applications/OmniFocus/
Last Modified: 2026-03-28

Description

Normally, if you copy or cut from OmniFocus and paste into a rich text view such as OmniOutliner or TextEdit, each title will be blue-underlined text with a clickable link back to the original action in OmniFocus. This is usually not what I want—typically I am copying to move the actions to another app, so the links are useless (pointing to actions that no longer exist) as well as being unslightly. This script copies only the text of the selected actions, without the links.

Installation Instructions · Download in Compiled Format · Download in Text Format

Script

on run
    set
_titles to {}
    repeat with
_action in my selectedActions()
        tell
application "OmniFocus"
            copy
_action's name to end of _titles
        end tell
    end repeat
    set
AppleScript's text item delimiters to return
    set
_string to _titles as Unicode text
    
set the clipboard to _string
end
run

on
selectedActions()
    tell
application "OmniFocus"
        return my
filterValues(my selectedValues(), {inbox task, task, available task, remaining task})
    end tell
end
selectedActions

on
selectedValues()
    tell
application "OmniFocus"
        return
value of selected trees of content of first document window of front document
    end tell
end
selectedValues

on
filterValues(_values, _classes)
    tell
application "OmniFocus"
        set
_result to {}
        repeat with
_value in _values
            if
_classes contains _value's class then
                copy
_value to end of _result
            end if
        end repeat
        return
_result
    end tell
end
filterValues