New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
added Advanced Slides #682
Conversation
|
Great plugin idea! A couple notes:
|
|
Added the branch and link. Thx for the fast feedback! |
|
@nothingislost |
|
Nothing particular, I think. You will have to wait until Licat have time to do code reviews. (I've been in the waiting list for a month or so, btw, so just be patient |
|
Thank you for your constructive feedback. I have taken into account all your points and I have already implemented them in my code. As for the point with debounce. I noticed that obsidian only saves the active document every 3 seconds or so. This means that a debounce has already been implemented there, which is why it does not make sense to implement a second debounce here. What I'm going to do, however, is debounce the rendering process itself, so that the preview gets only rendered once per second. not on every change event. |
We do, but only in the editor. Plugins can save files as many time as they wish. Obsidian Sync, for example, may trigger hundreds of change events when another device comes online and syncs all of the remote changes. There are also cases like file renames, which can trigger a link update on dozens of files at the same time. You're also not filtering for file changes that aren't related to your current file, which would make your code refresh more often than necessary. Either way, since you already debounce the rendering, it's already a massive improvement. The rest is just a nit. https://github.com/MSzturc/obsidian-advanced-slides/blob/0f3dc28530fc56e7da86330cca0c3298ff99c2d9/src/obsidianUtils.ts#L36 |
I am submitting a new Community Plugin
Repo URL
Link to my plugin: Advanced Slides
Release Checklist
main.jsmanifest.jsonstyles.css(optional)v)idin mymanifest.jsonmatches theidin thecommunity-plugins.jsonfile.