Skip to content

Documentation

thesamim edited this page Mar 6, 2024 · 10 revisions

TickTickSync Documentation

Configuration

  1. Open Obsidian's Settings window
  2. Select the Community plugins tab on the left
  3. Under Installed plugins, click the gear icon next to the TickTickSync plugin
  4. Click Login to get started.

Settings

Access Control

  1. TickTick/Dida: Choose your home server
  2. Login: on changing the home server, or if you are notified to login:
    1. Click on the Login button
    2. In the browser window: Login to your home server
    3. Close the browser window

Sync Control

  1. Default folder location:
    By default, TickTickSync saves files created to hold Ticktick tasks to the root folder ("/"). To choose an alternative directory, search for or type in the new folder name.
  2. Default project:
    New tasks will be added to the default project, and you can change the default project in the settings.

Limit Synchronization

To limit the tasks TickTickSync will synchronize from TickTick to Obsidian you can select a tag or project(list). If a tag is entered, only tasks with that tag will be synchronized. If a project(list) is selected, only tasks in that project will be synchronized. If both are chosen only tasks with that tag in that project will be synchronized.")

When limiting project is chosen, only tasks in the file with the project default will be synchronized. All other tasks will be ignored.

When a limiting Tag any Task created in Obsidian with the tag #TickTick and the limiting tag, it will be added to TickTick.

Examples:

Limiting Tag Limiting Project Task Tagged with Task Location Result
#ticktick N/A Tasks can be updated from Obsidian or TickTick
#onlySync #ticktick N/A Task can only be updated from Obsidian.
#onlySync #ticktick #onlySync N/A Task can be updated from Obsidian and TickTick
ThisListOnly #ticktick File who's default project is ThisListOnly Task can be updated from Obsidian and TickTick
ThisListOnly #ticktick Any other file Task can only be updated from Obsidian.
#onlySync ThisListOnly #ticktick #onlySync File that has default project of ThisListOnly Task can be updated from Obsidian and TickTick
#onlySync ThisListOnly #ticktick Any other file Task can only be updated from Obsidian.
#onlySync ThisListOnly #ticktick #onlySync Any other file Task can only be updated from Obsidian.
  1. Project:
    The Project/List containing tasks in order to be synchronized

  2. Tag:
    The tag tasks must have in order to be synchronized.

  3. Automatic synchronization interval time:
    The time interval for automatic synchronization is set to 300 seconds by default, which means it runs every 5 minutes. You can modify it yourself.

  4. Full vault sync
    By enabling this option, the plugin will automatically add #ticktick to all tasks, which will modify all files in the vault. NOTE: This includes all tasks that are currently Items of a task.

Manual Operations

Manual Sync

Click "Sync" button to force syncrhronization

Check Database

Click "Check Database" to check for possible synchronization errors.

Debug Mode

Turn on for additional debug logging. Useful for troubleshooting.

Backup TickTick Data

Click "Backup" to backup TickTick data, The backed-up files will be stored in the root directory of the Obsidian vault as CSV files compatible with TickTick's "Import Backup".

Note: TickTick limits backups to 4 backups a day through the APO. Please use judiciously.

Usage

Task format

Please see Task Examples

Syntax Description Example
#ticktick Tasks marked with #ticktick will be synced to TickTick. Tasks without the #ticktick tag, but are one line below a #ticktick task and indented will be treated as Task Items (See Example Below). If you have enabled Full vault sync in the settings, #ticktick will be added automatically to ALL Tasks. UnTagged Tasks are ignored. Please see Task Examples - [ ] task #ticktick
📅YYYY-MM-DD The date format is 📅YYYY-MM-DD, indicating the due date of a task. - [ ] task content 📅2025-02-05 #ticktick
Supports the following calendar emojis.📅📆🗓🗓️
#projectTag New tasks will be added to the default project(For example, inbox .), and you can change the default project in the settings or use a tag with the same name to specify a particular project. - [ ] taskA #ticktick will be added to inbox.
- [ ] taskB #tag #testProject #ticktick will be added to testProject.
#tag Note that all tags without a project of the same name are treated as normal tags - [ ] task #tagA #tagB #tagC #ticktick
Priority

TickTick only has three priority levels. They are mapped as follows.

TickTick Obsidian
0 null
0 '⏬'
1 '🔽'
3 '🔼'
5 '⏫'
5 '🔺'
- [ ] task ⏫ #ticktick

Task examples

Task with Sub Tasks Task with Items Task ignored
  • Task with Sub Tasks #ticktick
    • Sub Task 1 #ticktick
    • Sub Task 2 #ticktick
  • Task with Items #ticktick
    • Item 1
    • Item 2
  • This task will be ignored. It does not have a ticktick tag.

Set a default project for each file separately

The default project in the setting applies to all files. You can set a separate default project for each file using command.

Set Default Project Set Default Project Modal

You can see the current file's default project in the status bar at the bottom right corner.

Status Bar

Moving Tasks

Moving a Task in TickTick:

Drag and drop the task between projects.

Moving a Task in Obsidian:

Cut and Paste the task between files.

  • If the target file has a default project, the task will be moved to the same project in TickTick
  • If the target file does not have a default project, the task will be moved to the designated default project in TickTick
  • If the target file does not have a default project, and not default project for TickTickSync is assigned, the task will be moved to the Inbox in TickTick

Changing Task hierarchy

All Task hierarchy changes are reflected after a synchronization cycle.

Warnings and Cautions

Inbox Task Handling

If you set a default folder in TickTickSync, and it is NOT the Inbox, and you do not have a default file for the Inbox, tasks created in the Inbox will be moved to the default folder and file.

New date handling

Please note: In addition to the date handling improvements, it is now possible to use the Scheduled date emoji as the due date. As a side effect: If there are multiple dates on the task that can be interpreted as a due date, only the last date will be used. The others will be deleted. If you prefer different handling of dates, please either open an issue or start a discussion with your thoughts.

⚠️

CAUTION! Issues 16 and 31 referring to the inability to use the Tasks plugin query functionality have been resolved. BUT the Tasks plugin does not handle time in due date.

Please see the following issues in Tasks for details:

https://github.com/obsidian-tasks-group/obsidian-tasks/issues/1505 https://github.com/obsidian-tasks-group/obsidian-tasks/issues/2444 https://github.com/obsidian-tasks-group/obsidian-tasks/issues/1505 As of now:

If you add a time element to a due date (eg: 📅 2024-01-25 15:00) from Obsidian, the due date and time will be set correctly in TickTick. The time should be preserved across synchronizations.

Of course, if Tasks is updated to deal with this issue, TickTickSync will be updated to not mess with the time element anymore.

⚠️