id = "taskpaper" name = "TaskPaper" homepage = "https://www.taskpaper.com" description = "Plain text to-do lists for Mac." # The app icon, from the product page on taskpaper.com. icon = "https://www.taskpaper.com/assets/img/Taskpaper-128x128@2x.png" # TaskPaper ships no command-line tool, so `detect` carries the bundle # identifiers. Two of them, because Hog Bay ships the app twice: the Homebrew # cask's zap stanza names com.hogbaysoftware.TaskPaper3.direct # (https://formulae.brew.sh/api/cask/taskpaper.json) for the direct download, # and this machine carries the store build's # ~/Library/Preferences/com.hogbaysoftware.TaskPaper.mac.plist. A consumer # skips whichever build is not installed. executables = [] platforms = ["macos"] [installation] macos_bundle_ids = ["com.hogbaysoftware.TaskPaper3.direct", "com.hogbaysoftware.TaskPaper.mac"] [dotfiles] # The description is taskpaper.com's own page title, "TaskPaper — Plain text # to-do lists for Mac". # # The user's lists are plain .taskpaper files wherever they chose to keep them, # so they are not a fixed path. What TaskPaper keeps under the home directory # is its customisation: the guide's "Using StyleSheets" and "Using Scripts" # sections describe a stylesheet and a scripts folder the app opens for you # ("Choose 'Select Script Folder' to show TaskPaper's scripts folder"), without # naming the path on disk. The Homebrew cask's zap list names the directory: # ~/Library/Application Support/TaskPaper, which is [appData]/TaskPaper. The # entry is macOS-only, so there is no other platform for that root to stand for. paths = ["[appData]/TaskPaper/"] # The preferences domain is classified as a credential rather than synced as # content. Read back on this machine, com.hogbaysoftware.TaskPaper.mac holds # TaskPaper.BLicenseKeyKey and TaskPaper.BLicenseOwnerNameKey — the purchased # licence and the name it is issued to — sitting beside ordinary settings such # as TPCheckSpellingAsYouType. A property list has no field matcher in this # schema (`format` covers toml, yaml and json only), so the licence cannot be # lifted out of the domain with a secret_paths rule; the choice is to publish # it or to treat the whole domain as a secret, and over-classifying costs the # user one spell-check checkbox while under-classifying publishes a licence # key. Both builds' domains are named, or the licence syncs in the clear from # whichever build is not covered. secret = [ "[preferences]/com.hogbaysoftware.TaskPaper3.direct.plist", "[preferences]/com.hogbaysoftware.TaskPaper.mac.plist", ] # No machine_lines: a stylesheet and a script are what the user wrote, and are # the whole reason to carry the directory.