imdone Kanban docs
Advanced Topics
Imdone supports a custom URI protocol imdone:// which can be used to open imdone to a specific card in a project.
Installing Imdone URI
To make sure your operating system redirect imdone:// URIs to the Imdone app, there may be additional steps you need to perform.
- On Windows, running the app once should be sufficient. This will register for the
imdone://custom protocol handler in the Windows registry. - On MacOS, running the app once should be sufficient.
- On Linux, there’s a more involved process:
- First, ensure you create a
imdone.desktopfile. See here for details - Ensure that your desktop file specifies the
Execfield asExec=executable %u. The%uis used to pass theimdone://URIs to the app. - If you’re using the AppImage installer, you may have to unpack it using
imdone-x.y.z.AppImage --appimage-extract. Then make sure theExecdirective points to the unpacked executable.
- First, ensure you create a
Using Imdone URIs
Imdone URIs are in this format:
imdone://[path to file or project]?[param]=[value]&[param]=[value]
Open a project
imdone://[path to project]
Examples:
-
imdone:///Users/jesse/projects/imdoneOn mac or linux, if the
imdonefolder contains an.imdone/config.ymlfile, this opens imdone to the imdone project. -
imdone://C:/Users/jesse/projects/imdoneOn windows if the
imdonefolder contains an.imdone\config.ymlfile, this opens imdone to the imdone project.
Open a project with a card selected
imdone://[path to file]?line=[line #]
Examples:
-
imdone:///Users/jesse/projects/imdone/imdone-notes/2021-03/2021-03-16.md?line=15On mac or linux, if the
imdonefolder contains an.imdone/config.ymlfile, this opens imdone to the imdone project with the card inimdone-notes/2021-03/2021-03-16.mdat line 15 selected. -
imdone://C:/Users/jesse/projects/imdone/imdone-notes/2021-03/2021-03-16.md?line=15On windows if the
imdonefolder contains an.imdone\config.ymlfile, this opens imdone to the imdone project with the card inimdone-notes\2021-03\2021-03-16.mdat line 15 selected.
Open the active project with a filter applied
imdone://active.board/?filter=meta.group = "Ungrouped Tasks" "or tags = story
Open a project with a filter applied
imdone://[path to project]?filter=[filter query]
Examples:
-
imdone:///Users/jesse/projects/imdone?filter=allTags%20%3D%20%221.15.0%22On mac or linux, if the
imdonefolder contains an.imdone/config.ymlfile, this opens imdone to the imdone project with theallTags = "1.15.0"filter applied. -
imdone://C:/Users/jesse/projects/imdone?filter=allTags%20%3D%20%221.15.0%22On windows if the
imdonefolder contains an.imdone\config.ymlfile, this opens imdone to the imdone project with theallTags = "1.15.0"filter applied.
Open a project with a filter applied and a card selected
imdone://[path to file]?filter=[filter query]&line=[line #]
Examples:
-
imdone:///Users/jesse/projects/imdone/imdone-notes/2021-03/2021-03-16.md?filter=allTags%20%3D%20%221.15.0%22&line=15On mac or linux, if the
imdonefolder contains an.imdone/config.ymlfile, this opens imdone to the imdone project with theallTags = "1.15.0"filter applied and the card inimdone-notes/2021-03/2021-03-16.mdat line 15 selected. -
imdone://C:/Users/jesse/projects/imdone/imdone-notes/2021-03/2021-03-16.md?filter=allTags%20%3D%20%221.15.0%22&line=15On windows if the
imdonefolder contains an.imdone\config.ymlfile, this opens imdone to the imdone project with theallTags = "1.15.0"filter applied and the card inimdone-notes\2021-03\2021-03-16.mdat line 15 selected.
Run a board action
imdone://board.action/[plugin]/[action-name]/[file-path]?line=[line #]
Examples:
-
imdone://board.action/ExtensionPlugin/Open in vscode//Users/jesse/imdone-tutorial/imdone-readme.md?line=299This will run the
Open in vscodeaction from theExtensionPluginplugin on the file/Users/jesse/imdone-tutorial/imdone-readme.mdat line 299.
Custom css (beta feature)
To apply custom css to your project board, add a style.css in your .imdone folder. Close and reopen the project for the style.css to be applied.
To help find the right selectors for your css, open developer tools.
You can also apply custom css by adding a <style></style> element to a card. This allows you to toggle css on or off if the style element is on a line greater than the Number of lines to show in cards setting.