A substantial update (to v2.0.0.1) for the plugin to coincide with the release of x2 v6.0.0.1. The download in the first post of this thread has been updated. The explanations of how it works are going to be a work in progress as I decide how to rewrite the original post, but all the salient points are there now.
In a rare case of Nikosian-Glasnost,
this plugin now has full integration with x2!
Yes kids, really!
Code: Select all
Changelog for 2.0.0.1
Added: Automatic integration with the Size [S] column in x2 v6.0.0.1 or above
- No column selection is necessary, just use the native x2 'Size' column
- The legacy Size.ES column has been replaced with Status.ES which reports this plugin's functional integration with x2 on a folder-by-folder basis
- The legacy Weight.ES column has been deprecated (Still available in the v0.0.0.3 download), replaced with Reserved.ES (same as Status.ES for now)
- There is now a third column uint64_t.ES which provides the raw byte-count for Size [S] - there is no need to activate this column
- If an INI from a prior installation is found, it will be overwritten to enforce the new changes
Added: x86 build for users of 32-bit xplorer2
Added: INI option 'EnableIntegration[=1]' to enable/disable integrating this plugin with x2's Size [S] column
Added: INI option 'OnErrorDeferRootFolders[=0]' to protect against unnecessary x2 processing of roots if ES fails or is not configured properly
- For example, instead of accidentally trying to calculate C:\Windows et al, it will simply return 0 bytes instead, indicating a misconfiguration fault
Added: INI option 'OnErrorDeferNonRootFolders[=1]' (as Above)
- Disabling this shows all folder sizes as 0 bytes which makes an ES misconfiguration fault more obvious without needing the Status.ES column
Fixed: If the plugin was renamed (and would thus fail to work), Status.ES didn't report the correct cause of the dysfunction
Fixed: Status.ES didn't report error when run on x2 versions below 6.0.0.1
Fixed: Deference test for FolderIndexing optimised by only polling when zero, not every iteration
And yes, it really does work seamlessly. It may take a few extra steps to setup, but not many, and once done you'll forget it's there. And it even works with the portable version of Everything, so trying it is painless.
I've been testing/rewriting this v2 of the plugin for a while now, but any feedback about the more obscure things like network indexing which I can't really test will be most welcome. All of that sort of thing is handled in the extensive Everything options, but if it works there, it should work here. (Famous last words.)
It should also be pointed out that this version will only work with x2 v6.0.0.1 or above. The old plugin still has a download link and will continue to work with any x2 version which supports plugins.
One of the nice things about how the IPC (Inter-Process Communication) of ES works is that you won't need to restart x2 each time you change or experiment with a setting in ES related to indexing - in virtually all situations things will be picked up immediately in x2 with a simple refresh. x2 won't crash or hang or otherwise whine and complain when you modify ES's settings - you can even update ES while it's running (and vice versa), and you won't even notice anything happened, it'll all just keep working.
