4 ms·
It makes more sense if you consider the file format for iWorks used Document Packages ( https://developer.apple.com/library/archive/documentation/CoreFoundation
by dagmx 5y ago
It makes more sense if you consider the file format for iWorks used Document Packages ( https://developer.apple.com/library/archive/documentation/CoreFoundation/Conceptual/CFBundles/DocumentPackages/DocumentPackages.html https://developer.apple.com/library/archive/documentation/Co... )
So this single file setup is actually a conversion of how a multi file directory structure would have been.
The choice of a document package makes sense when you see how even a spreadsheet might embed media etc... But synchronization applications like Box fail to handle packages even today so moving to a single container file allows keeping a lot of the old parsing code intact while achieving better support for things that prefer single files.
- Telemakhos 5y ago> even a spreadsheet might embed media This is not the only thing wrong in the world, but it is one of the things wrong in the world.
- deleted 5y ago[deleted]
- AlotOfReading 5y agoThat includes things like graphs and charts, which seem pretty reasonable to have in a spreadsheet.
- dagmx 5y agoIt lets you create presentation materials with your dataset without exporting to a keynote etc.. https://images.app.goo.gl/eigVnbYKQXpyV5JP6 https://images.app.goo.gl/eigVnbYKQXpyV5JP6
- fnord123 5y agoThis seems really straight forward in sqlite. CREATE TABLE cells (sheet TEXT NOT NULL, x TEXT NOT NULL, y INTEGER NOT NULL, content TEXT, PRIMARY KEY (sheet, x, y)) Content can be text, numbers, formulas, or a reference to a media collection containing blobs. You can also pull the sheet out to a reference, etc. You could also do some cheeky stuff like making an rtree index to manage the visible cells so you only need to evaluate those in view for a quicker first paint.
- dagmx 5y agoYes, you could do it in any number of ways with a rewrite, but the point is that the format is likely as close to a 1:1 encoding of the document package.