custom values csv questions

Discussion related to "Everything" 1.5 Alpha.
Post Reply
jimspoon
Posts: 187
Joined: Tue Apr 26, 2011 11:39 pm

custom values csv questions

Post by jimspoon »

I'm trying to understand how custom property values will work. I looked at the following page but still have questions: viewtopic.php?f=12&t=9788#customproperties

It appears that custom properties are stored in a CSV file, only one for the whole database, at a location specified in Everything-1.5a.ini.

It looks like multiple properties can be named in the CSV header line, each one separated by a comma.

It also looks like custom property can have multiple values, each separated by a semicolon.

It also seems that you can't add custom properties this way, rather, you can only specify custom values for already existing properties (properties either native to Everything, or in the Windows Property System). And any value you specify in the CSV file simply overrides the value that would otherwise appear.

Am I right on these points?
void
Developer
Posts: 16753
Joined: Fri Oct 16, 2009 11:31 pm

Re: custom values csv questions

Post by void »

It appears that custom properties are stored in a CSV file, only one for the whole database, at a location specified in Everything-1.5a.ini.
You can have as many CSV files as you like (you are not limited to one).
You might like one CSV to specify Tags, and another to specify Comments.
It looks like multiple properties can be named in the CSV header line, each one separated by a comma.
Correct.
It also looks like custom property can have multiple values, each separated by a semicolon.
It's up to the property class, tags support ; for multiple values.
Other properties such as Width or Length will only support a single value.
It also seems that you can't add custom properties this way, rather, you can only specify custom values for already existing properties (properties either native to Everything, or in the Windows Property System). And any value you specify in the CSV file simply overrides the value that would otherwise appear.
Correct.
Everything will need to have some understanding of what the property is (eg: is it a string, a number, a date)?

I will consider support for custom properties.
eg: customdate1..12, customstring1..12, customnumber1..12
and allow you to give these custom properties a name.

A UI to manage custom values is in development.
jimspoon
Posts: 187
Joined: Tue Apr 26, 2011 11:39 pm

Re: custom values csv questions

Post by jimspoon »

Is it possible that values could be editable in place in the Everything results list? Maybe property values could be changed for all selected items.

If custom properties could be included in a CSV file, that would open up great possibilities even before there is a UI to edit values etc - we could use Excel to set values for the custom properties, or custom values for non-custom properties.

But what if a file with custom properties and custom values is moved? The file location would have to be changed in the CSV file for the custom properties and custom values to continue to be associated with that file.

I guess Everything routinely scans the applicable CSV file(s) for new custom values and incorporates these values into its index?
void
Developer
Posts: 16753
Joined: Fri Oct 16, 2009 11:31 pm

Re: custom values csv questions

Post by void »

Is it possible that values could be editable in place in the Everything results list? Maybe property values could be changed for all selected items.
Possibly in a future release.

For now, you can set some properties from Right click file -> Properties -> Details.

I also have on my TODO list to add a property manager.


If custom properties could be included in a CSV file, that would open up great possibilities even before there is a UI to edit values etc - we could use Excel to set values for the custom properties, or custom values for non-custom properties.
Custom values for properties


But what if a file with custom properties and custom values is moved? The file location would have to be changed in the CSV file for the custom properties and custom values to continue to be associated with that file.
I have plans for an Everything Property Server.
The Everything Property Server would handle file operations.

For now, please consider:
Storing properties in the file.
Storing properties in sidecar files.
storing properties in alternate data streams.

Storing properties in Everything without modifying files.


I guess Everything routinely scans the applicable CSV file(s) for new custom values and incorporates these values into its index?
Currently, only on startup.
I'll look into making Everything detect external changes to your CSV file with custom property values.

Thank you for the suggestions.
brandySnake
Posts: 10
Joined: Fri Sep 24, 2021 3:00 pm

Re: custom values csv questions

Post by brandySnake »

This is an interesting topic!
You can have as many CSV files as you like (you are not limited to one).
You might like one CSV to specify Tags, and another to specify Comments.
Does this refer to the possibility of specifying multiple property definition files, as in the sample below?
If the same column name exists in two(some) files, will they be merged? Or does the file at the tail(Other.csv in the sample below) take precedence?

sample-setting:

Code: Select all

/property_user_values=C:\Propertys\Tags.csv,C:\Propertys\Other.csv
void
Developer
Posts: 16753
Joined: Fri Oct 16, 2009 11:31 pm

Re: custom values csv questions

Post by void »

Does this refer to the possibility of specifying multiple property definition files, as in the sample below?
Yes.
You can specify more than one CSV filename.


If the same column name exists in two(some) files, will they be merged? Or does the file at the tail(Other.csv in the sample below) take precedence?
Yes, the last file will take precedence.
Files are loaded from left to right.
New property values will overwrite existing property values.
brandySnake
Posts: 10
Joined: Fri Sep 24, 2021 3:00 pm

Re: custom values csv questions

Post by brandySnake »

Thank you for your reply.
I now understand more about the custom property file specification.

Thanks again.
jimspoon
Posts: 187
Joined: Tue Apr 26, 2011 11:39 pm

Re: custom values csv questions

Post by jimspoon »

void wrote: Sun Jun 18, 2023 11:34 pm For now, please consider:
Storing properties in the file.
Storing properties in sidecar files.
storing properties in alternate data streams.
Can Everything find a file based on the contents of its sidecar file? That would open up some interesting possibilities. I found that Everything seems to be able to find a file based on the contents of a .sha256 sidecar file, but I'm wondering if there is also a more generalized capability to find files based on other sidecar files.

I am interested in this because ADS are easily lost and don't survive transfer to or through a non-NTFS destination (e.g. NAS, cloud synchronization, email etc).
void
Developer
Posts: 16753
Joined: Fri Oct 16, 2009 11:31 pm

Re: custom values csv questions

Post by void »

Can Everything find a file based on the contents of its sidecar file?
Everything currently has support for the following sidecar files:
.sfv (CRC32)
.md5
.sha1
.sha256
.sha512
Desktop.ini



Properties from Summary Information Alternate Data Stream


I'm wondering if there is also a more generalized capability to find files based on other sidecar files.
Currently, no.
I may add something in a future release that is Everything specific to do this..
Do you have a sidecar file you would like to see supported in Everything?



Custom values for properties
jimspoon
Posts: 187
Joined: Tue Apr 26, 2011 11:39 pm

Re: custom values csv questions

Post by jimspoon »

I didn't have a specific sidecar file in mind; I was just looking for a place to store custom property:value pairs robustly, in such a way that Everything could display the custom properties in columns. A number of programs, including file managers, store such metadata in ADS. But lately I've realized how such ADS aren't preserved "through the cloud", and wouldn't be preserved when the files are backed up to a NAS. Sidecar metadata doesn't automatically travel with files like ADS travel with files on NTFS disks, but at least they would not be lost like the ADS can be. They would always be available to be reconnected with their corresponding files. And, it would be easy enough to hide them in Everything when searching.

It seems that Exiftool can be used to create custom properties:
https://exiftool.org/config.html
And Exiftool can be used to write metadata to sidecar files:
https://exiftool.org/metafiles.html
The Exiftool author developed a sidecar file specification called MIE - I don't know if it's used much.
https://exiftool.org/MIE1.1-20070121.pdf
While Exiftool primarily works with image file metadata, my understanding is that Exiftool also works with non-image file metadata, for example PDF files.
Together these things might make it possible for a user to put custom properties and their values in sidecar files.
Then, ideally, these properties and values could be indexed and displayed in columns; and also edited in a spreadsheet-style interface.
void
Developer
Posts: 16753
Joined: Fri Oct 16, 2009 11:31 pm

Re: custom values csv questions

Post by void »

I will consider support for MIE sidebar files.

Thank you for the suggestion.



I am also considering a simple human-readable/editable Metadata.csv sidecar file.
jimspoon
Posts: 187
Joined: Tue Apr 26, 2011 11:39 pm

Re: custom values csv questions

Post by jimspoon »

That would be great! Another thing I'm looking for is a program or Windows service that would back up all ADS to an .ads sidecar file, perhaps automatically? That would alleviate the problem of lost ADS. My usual file manager, xplorer2, has an option to "bundle" a file's ADS to a separate file; a "bundle" can later be "unpacked" which I think is probably a way of restoring the ADS to a file that has lost them? It prompts for a name for the ADS "bundle" file and the default name is "bundle". IMO Would be better if the name were simply the name of the file with an .ads extension appended.

Image
Post Reply