Is it possible to separate volume config from Everything.ini ?

General discussion related to "Everything".
Post Reply
MandraK
Posts: 21
Joined: Mon Jan 06, 2020 4:45 pm

Is it possible to separate volume config from Everything.ini ?

Post by MandraK »

I'm interested in sharing the same configuration file between several computers by sharing it in a folder in the cloud (OneDrive). This would allow to have the same configuration, keyboard shortcuts, and filters on each. However, the .ini file contains "ntfs_volume" entries that are unique to every computer, thus preventing this feature.

Is there a way to separate volume configuration from the main configuration file?

I ask this question in the "General" board in case there's an answer. I've gotten very useful solutions in this forum in the past. But in case is not possible please consider this suggestion to add as a feature. I'm sure it would be very useful for many users to be able to use the same configuration file among different computers.
raccoon
Posts: 1017
Joined: Thu Oct 18, 2018 1:24 am

Re: Is it possible to separate volume config from Everything.ini ?

Post by raccoon »

I feel the same. An attempt should be made to separate volume settings from the config. We already have separated other "session incidentals" like Bookmarks.csv, Macros.csv, Run History.csv and Search History.csv. There might be room for Volume Settings.csv
harryray2
Posts: 1104
Joined: Sat Oct 15, 2016 9:56 am

Re: Is it possible to separate volume config from Everything.ini ?

Post by harryray2 »

This is different I know, but on the subject of separation, not sure if it's possible but it would be nice if property indexing was separate from everything else. I find properties indexing painfully slow, and if I make a minor change to exclusions (for example), Everything re-indexes everything from scratch.

Not sure this is even possible....
MandraK
Posts: 21
Joined: Mon Jan 06, 2020 4:45 pm

Re: Is it possible to separate volume config from Everything.ini ?

Post by MandraK »

Now that I think about it.. To share the same Everything.ini among several computers, besides a separate volume configuration, it would also be useful to separate window sizing and positioning. This would allow to better share the configuration between computers and mobile devices (laptops) which have different screen sizes and quantities.
NotNull
Posts: 5461
Joined: Wed May 24, 2017 9:22 pm

Re: Is it possible to separate volume config from Everything.ini ?

Post by NotNull »

I think there are possibilities to create a DIY solution to make this work.

But when I started thinking about it, a couple of possible issues came to mind:
  • There might be timing issues when Everything is configured to run at startup: When Everything starts and your "cloud-drive" has yet to be initialized (and therefor is not yet available), the settings can not be read.
  • (Not sure, but I suspect) Everything keeps a lot of it's settings in memory, without writing them to disk. The settings are written to disk when exiting.
    So when you keep Everything running in the background, your common settings will not be updated to the cloud-drive.
    Evern when the settings are written to disk immediately, 'the other Everythings' will not pick them up as they don't read the ini anymore after startup.
    Which means that a second computer - which also might have Everything running in the background - will not receive these new settings, even when the other computer exits.
    Furthermore: when multiple computers exit, only the common settings of the last one will be saved to disk. The settings of the other ones will be overwritten.
  • There are quite a few settings that are machine-bound:
    • All settings that are configured under Indexes in the Options (FAT, NTFS, Folder ..., Content, Properties,..)
    • All screen-settings: monitor setup, window sizes, but also column sizes, ..
    • CPU related multi-threading settings
    • Mouse settings (button configuration)
    • Even some keyboard shortcuts might differ between systems (laptop keyboard layout vs desktop keyboard)
I like your idea, but at the moment I think this is not something you should want.
But as said: I think it can be done (largely) through some DIY tinkering.
MandraK
Posts: 21
Joined: Mon Jan 06, 2020 4:45 pm

Re: Is it possible to separate volume config from Everything.ini ?

Post by MandraK »

Thank you for your response...
NotNull wrote: Sun Apr 17, 2022 9:45 pm There might be timing issues when Everything is configured to run at startup: When Everything starts and your "cloud-drive" has yet to be initialized (and therefor is not yet available), the settings can not be read.
This won't be an issue. The cloud-drive doesn't have to be initialize, the folder exists locally. OneDrive syncs everything once it starts. Even if that were (which is not) the case I believe is one of the first things Windows starts. I wouldn't say it would have to be a perfect solution, but currently, with the volume configuration in the same config file, I'd say is not possible at all.
NotNull wrote: Sun Apr 17, 2022 9:45 pm (Not sure, but I suspect) Everything keeps a lot of it's settings in memory, without writing them to disk. The settings are written to disk when exiting. So when you keep Everything running in the background, your common settings will not be updated to the cloud-drive.
Evern when the settings are written to disk immediately, 'the other Everythings' will not pick them up as they don't read the ini anymore after startup.

Which means that a second computer - which also might have Everything running in the background - will not receive these new settings, even when the other computer exits.

Furthermore: when multiple computers exit, only the common settings of the last one will be saved to disk. The settings of the other ones will be overwritten.
This is true. EV writes settings to Everything.ini every time an EV window is closed. If there were 10 EV windows opened, it writes to the file every time one of those is closed. This could also work the same way with different computers. The last one to close a window always writes to the config file. Yes, it could be an issue with some things like filters, if they get overwritten (aren't they on a separate file already?). In such cases they'd have to be constantly backed up. But.. If the computers don't use EV at the same time it could work, given that other issues (like volume config and window size/pos) could be overcome. I wouldn't be at home or work at the same time, but the laptop could be an issue.
NotNull wrote: Sun Apr 17, 2022 9:45 pm [*]There are quite a few settings that are machine-bound:
  • All settings that are configured under Indexes in the Options (FAT, NTFS, Folder ..., Content, Properties,..)
  • All screen-settings: monitor setup, window sizes, but also column sizes, ..
  • CPU related multi-threading settings
  • Mouse settings (button configuration)
  • Even some keyboard shortcuts might differ between systems (laptop keyboard layout vs desktop keyboard)
[/list]
I like your idea, but at the moment I think this is not something you should want.
Perhaps it could be a good idea to split machine bound settings from other settings..

But I do want it.. I just can't have it.. :)
NotNull
Posts: 5461
Joined: Wed May 24, 2017 9:22 pm

Re: Is it possible to separate volume config from Everything.ini ?

Post by NotNull »

Here is a POC (Proof Of Concept):
WARNING: Not tested. (so not much Proof after all .. ;))

Assuming you are running Everything 1.4.
  • Make sure your current Everything isn't running on PC1 as well as PC2 (check the system tray).
  • Copy Everything.exe and StartEverything.cmd to a folder on your OneDrive.
  • Run StartEverything.cmd on PC1
  • Configure Everything and make some easily visible changes, like colour
  • Also create a new filter or bookmark
  • Exit Everything on PC1 (check the system tray).
  • Run StartEverything.cmd on PC2
  • Configure Indexing settings for PC2
  • Check if the changes made on PC1 are visible on PC2. Is the new filter/bookmark available?
  • Exit Everything on PC2 (check the system tray).
  • Run StartEverything.cmd on PC1
  • Check if the Indexing settings for PC1 are preserved.
  • Exit Everything on PC1 (check the system tray).


@void:
Is there a conceptual difference between _high vs. _height and _wide vs _width INI-settings? Or just legacy?




StartEverything.cmd

Code: Select all

@echo off & setlocal
pushd "%~dp0"

set "DB_location=%LOCALAPPDATA%\Everything\%COMPUTERNAME%.db"}
set "INI-name=Central.ini"


copy "%INI-name%" + "%COMPUTERNAME%.ini"

start /w "" Everything.exe -config "%INI-name%" -db "%DB_location%"


(
:: Indexing
   findstr /i /B "fat_volume  refs_volume  ntfs_volume_  folders  folders_  exclude_folders=  exclude_files=    " central.ini

:: CPU
   findstr /i " thread " central.ini


:: Screen layout
   findstr /i " dpi=  _wide=  _width=  _high=  _height=  _x=  _y=  " central.ini


:: Context menu
   findstr /i /B "open_" central.ini
) > "%COMPUTERNAME%.ini"

void
Developer
Posts: 16770
Joined: Fri Oct 16, 2009 11:31 pm

Re: Is it possible to separate volume config from Everything.ini ?

Post by void »

@void:
Is there a conceptual difference between _high vs. _height and _wide vs _width INI-settings? Or just legacy?
They are the same.
I use wide/high internally (easier to type)
Some settings ended up with the same names instead of width/height.
Post Reply