Unbundle file engine binaries from plugin
Instead making users download 4 file engine binaries (3 of which they will never use or even all 4 if their OS+arch doesn't match any of them), it makes more sense to use a post install script to download only the binary applicable to their system.
Additional minor improvements:
-
[x] currently, the script gets triggered on all plugin updates even if the binaries themselves are unchanged. Proposed solution: add checksums for all fine engine binaries, then only re-download if checksums differ from user's existing binary in their vim-
ctrlspace/bin -
[ ] add powershell/batch script to provide auto-download of
file_engine_windows_amd64.exefor Windows users
@Konfekt I added a MD5 checksum check, and added some more details to the README. Lmk what you think; I think it's probably more or less good to be merged.
Although I'm not too sure if we should just remove those 4 binaries from tracking immediately. Since if that's done, next time people pull the update, it'll be deleted from their plugin, but if the script didn't work correctly, then they might get confused. But without removing the binaries from git tracking, then it defeats the whole point of this PR. What you think?
Well, this change is abrupt, but for the better. The spell download vimscript file
https://github.com/vim/vim/blob/master/runtime/autoload/spellfile.vim
serves as a template to implement it without any need for vim-plug on every OS.