From e1f6d429191416e35aea131dcab4c39b94fce3aa Mon Sep 17 00:00:00 2001 From: Ruben Beltran del Rio Date: Sun, 14 Sep 2025 12:09:58 +0200 Subject: Add documentation --- .gitignore | 1 + Documentation.mdown | 40 ++++++++++ Info.plist | 218 ++++++++++++++++++++++++++-------------------------- 3 files changed, 150 insertions(+), 109 deletions(-) create mode 100644 Documentation.mdown diff --git a/.gitignore b/.gitignore index 9c5c5eb..7608883 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ ._.* *.o build +builds Makefile autom4te.cache *~ diff --git a/Documentation.mdown b/Documentation.mdown new file mode 100644 index 0000000..2aad042 --- /dev/null +++ b/Documentation.mdown @@ -0,0 +1,40 @@ +## Things Plugin + +A plugin that lets you interact with the Things 3 database. + +### Features + +* Browse app sections: Inbox, Today, Upcoming, Someday, and Anytime +* Browse areas, projects, tags, and tasks. +* Drill down to navigate and find related items. +* Mark tasks and projects as completed. +* Create new tasks. + +### Enabling edit and create + +The task includes an action called "Set Things Authentication Key" that takes +in text. This is required to use the Things 3 URL API to create or edit tasks +and projects. + +To do this, go to your Things Settings > General, then turn on "Enable Things +URLs" and click on Manage to view the auth key. Copy it, then open quicksilver, +press `.` to enter text mode, paste the key and search for "Set Things +Authentication Key." + +Your key is stored in the keychain. + +### Syntax to create tasks + +The first line is interpreted as title. If you want to add notes, type `>>`. All +the text after that, including newlines will be interpreted as markdown notes +until it finds a "special line". + +Special lines are: + +* If the line starts with `#`, everything after that will be interpreted as a + comma-separated list of tags until end of line. +* If the line starts with `@`, everything after that will be interpreted as a + date until end of line. It supports natural language like "today", + "tomorrow", "in 3 days" or "next tuesday" and dates in the format yyyy-mm-dd. +* If the line starts with `!`, everything after that will be interpreted as a + deadline. Same rules as the date above. diff --git a/Info.plist b/Info.plist index 7722c9d..f3b3675 100644 --- a/Info.plist +++ b/Info.plist @@ -15,35 +15,32 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.0.0 + 1.0.1 CFBundleVersion - 152 + 155 NSPrincipalClass QSThingsPluginSource QSActions - CreateProjectInAction + CompleteTaskAction actionClass - CreateProjectAction + CompleteTaskAction actionSelector - createProject:in: + completeTask: directTypes - * - - indirectTypes - - things.area + things.project + things.task - enabled - displaysResult - name - Create project in... + enabled + icon com.culturedcode.ThingsMac + name + Mark as Complete CreateProjectAction @@ -55,38 +52,37 @@ * - enabled - displaysResult - name - Create project + enabled + icon com.culturedcode.ThingsMac + name + Create project - CreateTaskInAction + CreateProjectInAction actionClass - CreateTaskAction + CreateProjectAction actionSelector - createTask:in: + createProject:in: directTypes * + displaysResult + + enabled + + icon + com.culturedcode.ThingsMac indirectTypes - things.project things.area - enabled - - displaysResult - name - Create task in... - icon - com.culturedcode.ThingsMac + Create project in... CreateTaskAction @@ -98,72 +94,76 @@ * - enabled - displaysResult - name - Create task + enabled + icon com.culturedcode.ThingsMac + name + Create task - CompleteTaskAction + CreateTaskInAction actionClass - CompleteTaskAction + CreateTaskAction actionSelector - completeTask: + createTask:in: directTypes - things.project - things.task + * - enabled - displaysResult - name - Mark as Complete + enabled + icon com.culturedcode.ThingsMac + indirectTypes + + things.project + things.area + + name + Create task in... - SetThingsAuthenticationKeyAction + SearchThingsAction actionClass - SetThingsAuthenticationKeyAction + SearchThingsAction actionSelector - setAuthenticationKey: + searchFor: directTypes - NSStringPboardType + * - enabled - displaysResult - name - Set Things Authentication Key + enabled + icon com.culturedcode.ThingsMac + name + Search Things for... - SearchThingsAction + SetThingsAuthenticationKeyAction actionClass - SearchThingsAction + SetThingsAuthenticationKeyAction actionSelector - searchFor: + setAuthenticationKey: directTypes - * + NSStringPboardType - enabled - displaysResult - name - Search Things for... + enabled + icon com.culturedcode.ThingsMac + name + Set Things Authentication Key ShowInThingsAction @@ -179,14 +179,14 @@ things.tag things.task - enabled - displaysResult - name - Show in Things + enabled + icon com.culturedcode.ThingsMac + name + Show in Things QSPlugIn @@ -202,43 +202,6 @@ icon com.culturedcode.ThingsMac - QSRegistration - - QSFSParsers - - QSThingsAreasParser - QSThingsAreasParser - QSThingsProjectsParser - QSThingsProjectsParser - QSThingsTasksParser - QSThingsTasksParser - - QSActionProviders - - QSThingsPluginAction - QSThingsPluginAction - - QSObjectHandlers - - things.area - ThingsAreaHandler - things.project - ThingsTaskHandler - things.app-section - ThingsAppSectionHandler - things.tag - ThingsTagHandler - things.task - ThingsTaskHandler - - - QSRequirements - - version - 4023 - - QSResourceAdditions - QSPresetAdditions @@ -251,10 +214,10 @@ QSPresetThingsAppSections enabled - name - Things 3 (App Sections) icon com.culturedcode.ThingsMac + name + Things 3 (App Sections) requiresBundle com.culturedcode.ThingsMac requiresSettingsPath @@ -278,10 +241,10 @@ QSPresetThingsTags enabled - name - Things 3 (Tags) icon com.culturedcode.ThingsMac + name + Things 3 (Tags) requiresBundle com.culturedcode.ThingsMac requiresSettingsPath @@ -305,10 +268,10 @@ QSPresetThingsAreas enabled - name - Things 3 (Areas) icon com.culturedcode.ThingsMac + name + Things 3 (Areas) requiresBundle com.culturedcode.ThingsMac requiresSettingsPath @@ -332,10 +295,10 @@ QSPresetThingsProjects enabled - name - Things 3 (Projects) icon com.culturedcode.ThingsMac + name + Things 3 (Projects) requiresBundle com.culturedcode.ThingsMac requiresSettingsPath @@ -359,10 +322,10 @@ QSPresetThingsTasks enabled - name - Things 3 (Tasks) icon com.culturedcode.ThingsMac + name + Things 3 (Tasks) requiresBundle com.culturedcode.ThingsMac requiresSettingsPath @@ -390,5 +353,42 @@ QSGroupObjectSource + QSRegistration + + QSActionProviders + + QSThingsPluginAction + QSThingsPluginAction + + QSFSParsers + + QSThingsAreasParser + QSThingsAreasParser + QSThingsProjectsParser + QSThingsProjectsParser + QSThingsTasksParser + QSThingsTasksParser + + QSObjectHandlers + + things.app-section + ThingsAppSectionHandler + things.area + ThingsAreaHandler + things.project + ThingsTaskHandler + things.tag + ThingsTagHandler + things.task + ThingsTaskHandler + + + QSRequirements + + version + 4023 + + QSResourceAdditions + -- cgit