Bhikkhu Pesala wrote:
I think you should organise your font collection so that MainType only has to refresh those folders that are likely to change.
My font library is tightly organized, it consist of OTF files only, structured like so:
Code: Select all
+ FONT LIBRARY
| + FoundryName
| | + FamilyName
| | | FontName-bold.otf
| | | FontName-light.otf
| | | FontName-regular.otf
| | | ...
| | - FamilyName
| | - ...
| - FoundryName
| - ...
Whenever I add a new font family it naturally goes into this structure.
Changing the way I store and manage incoming fonts to work around how the refresh works, (like having a separate incoming structure that gets flushed and integrated into the main structure periodically) doesn't sound like a practical solution (extra work, delayed duplicate management, etc..)
Just to clarify (I noticed the subject line is missleading) I'm not suggesting there are performance issues in the refresh routine itself (I suppose it's indeed quite fast for what it does- though I still have to make some test because I suspect something fishy here as the scaling isn't linear 4k/10sec & 100k/420sec

) but rather questioning the way the refresh works by forcing an entire re-scan of the library.
Erwin Denissen wrote:The sync feature will be applied to the whole folder and during that process it has to read all font resources to ensure they aren't changed. 7 minutes sounds pretty fast to me.
Why is this so ?
Are there any technical reason/limitation why the refresh is not operated on the selected folder only ?
Having a action that says "synchronize the selected font folder" update the whole library instead of the selected folder looks like a bug from a user perspective.
Would you consider a more optimized solution that would rely on some sort of directory change notification from the filesystem for a future Maintype version perhaps ?