I use the built-in Prism every day in my DEVONthink
markdown documents to improve their appearance. I would like to customize the implementation for my needs, such as expanding the syntax highlighting. It would be possible today for me to manually link all my
markdown document to my own Prism implementation. I have tried this. It works but has challenges.
Challenges without the proposed solution
- It requires a special location for my Prism implementation.
In a database This is would work and work across upgrades but only for the database where the implementation is stored. This requires that I link out from each
In a neutral location on my local filesystem This would work across upgrades and would be consistent for all databases. This requires that I link out from each
- In a database This is would work and work across upgrades but only for the database where the implementation is stored. This requires that I link out from each
Application Support folder This is a better location but DEVONthink would need to be modified to implement this. It would work across upgrades. It would work for all databases. It would not require that I alter any existing or future
markdown documents. It would permit near complete flexibility.
The proposed solution addresses these key challenges because
- It would permit greater flexibility for
markdownrendering customization because changes would be made in one place and existing document would not be modified.
- It would permit a location that is both resistant to upgrades and accessible from any database.
- It would permit a consistent user experience for those that wish to customize their
markdownrendering. This means it could be described in the DEVONthink manual.
- It would prevent the need for users to alter their existing and future
markdowndocuments. (This is a big deal for me because I have many markdown documents and plan to have many more.)
- It would permit users who do not wish to alter the
markdownrendering, to continue to use DEVONthink exactly as they do today without noticing any changes.
Have a file in the
Application Support folder that is always included when a markdown file is rendered by DEVONthink.
The file would be empty by default. This would ensure it would not alter the behavior of the
markdown rendering unless action was taken by the user.
A user who wished to customize the rendering of their
markdown documents could include links or other content in that file to their own
prism.css. Those custom Prism files could reside in this same location in
Application Support as the include file. This would permit the customizations to persist over upgrades, much like they would if they were stored in a DEVONthink database.
It would also permit users to share the markdown rendering experience across many DEVONthink databases since the files are equally available to all the open DEVONthink databases.
I am a software developer and I am happy to do (some) of the work, but would obviously need permission and direction from DEVONtechnologies. I do not know how this is handled with DEVONthink.
Please consider this proposal.