I have updated one function (ConvertFileTimeToString) in:
CPP\Windows\PropVariantConversions.cpp
to display dates and times in the local date/time format. It was really annoying how 7-Zip displayed the date/time displayed differently from every other Windows application. Date/times should be localized for the same reason you offer 7-Zip in different languages.
Notes:
-I only performed limited testing, but I didn't find any problems.
-To avoid changing the function interface, the code assumes the output is a char array of 32 chars. However, it would be best if the code were written with string objects instead of any char arrays.
-Consequently, I had to use strcpy to convert from an AString to a char array. This produces a warning in newer versions of Visual Studio, but I wanted to maintain compatibility with VS 6.0 per your readme.txt.
Actually I don't like local date formats.
So I'll use international standard for date representation.
If you like ISO 8601 date/time format, you can tell your copy of Windows to use it under Control Panel >> Regional Options.
I and probably the *majority* of 7-Zip users have local settings that differ from ISO 8601. When I try to compare a file with Windows Explorer, this is what I see:
Explorer: 1/9/2011 9:41 PM
7-Zip FM: 2011-01-09 21:41
Trying to compare just this one file requires several mental computations. Now imagine trying to compare 10 or 100 files, and you can understand why I don't like it. It is a big usability issue.
I kindly request that you reconsider. I hope you wouldn't make 7-Zip less convenient for your users because you like a certain setting but won't tell your copy of Windows to use it. It would be like removing the English translation of 7-Zip because you didn't want to tell your copy of Windows to use Russian.
- I and probably the *majority* of 7-Zip users have local settings that
differ from ISO 8601.
Why do you like non ISO 8601 in your Windows?
Why don't you change Control Panel >> Regional Options to ISO 8601?
> Why do you like non ISO 8601 in your Windows?
For same reason I speak in English: because that's what I've done my entire life. I think it's more reasonable for software to conform to its users rather than its users to conform to the software. That's precisely why Microsoft developed its local date/time system, which provides the vast majority of users with the formats they are comfortable with. Unfortunately, technically advanced people like yourself don't always like the default of the majority, but that's why it is configurable.
> Why don't you change Control Panel >> Regional Options to ISO 8601?
To be honest, I actually like ISO 8601 and often use it for my dates. For me, the problem is the *time*. I just can't get comfortable with a 24 hour clock, which is not used in my country. However, I recognize that everyone has their own preferred format, which is what Windows allows.
Here is a neat Wikipedia article showing the distribution of date formats throughout the world:
http://en.wikipedia.org/wiki/Date_format_by_country
P.S. I'm sorry if I sound argumentative. I really appreciate all the work you've put into 7-Zip.
Whatever you decide, you should consider setting your Windows Regional Options to ISO 8601 regardless. That way, Windows Explorer and all other conforming applications will be in your preferred format, which is nice.
I suppose that
1) most people understand ISO date/time.
2) ISO date/time is simple and good represenation.
So there is no big reason to support something else.
If there will be some new language with such properties:
1) 99.9% of users understand that language.
2) There is objective reasons why it's better that other languages.
then I'll remove all translations from 7-zip, and 7-Zip will use only that new language.
I agree that ISO is simple and understandable. I think the issue is comfort/ease of use (the purpose of a GUI). ISO definitely works, but I want it to be better. And I've already done the work and implemented it for you. Just because the current way is good enough, it doesn't mean it can't be better (especially if there is no cost!).
It's like adding a language that:
1) 100% of people understand (versus 99%)
2) It is objectively easier for people to use (because it conforms to their experience)
But I understand that you disagree on the benefit. Maybe I'll just post a thread about it in the forum to see if anyone thinks like me, or if I'm just crazy :)
Thanks.
I have to say this thread has done more for my understanding of the current state of 7-zip than I ever imagined when I clicked on it in the list.