So, HERE's a way for Nikos to spend his copious free time

Discussion & Support for xplorer² professional

Moderators: fgagnon, nikos, Site Mods

Gary M. Mugford
Bronze Member
Bronze Member
Posts: 150
Joined: 2009 Oct 14, 00:54
Location: Brampton ON Canada

Re: So, HERE's a way for Nikos to spend his copious free tim

Post by Gary M. Mugford »

Kilmatead wrote:Everybody's a critic of my pop-culture quotes this week - ah well. :shrug: Nikos wouldn't pay attention to such things anyway, he only perks up when I use words like tyrannodidaskalos to describe him. :D He gets a kick out of that.
Gary M. Mugford wrote:I believe you have access to my details
I am neither moderator nor employee nor clairvoyant nor NSA flunky - minions like us are stuck with the PM system. Anyway, recompense for this sort of thing is not really necessary (men should be paid for real work, not this white-collar nonsense). I'm also not %100 happy with the results myself - the algorithm can still be spoofed by accident and is somewhat held together with sticky-tape: put a "." in a folder-name and you'll see what I mean - I haven't found a reliable workaround yet. It's going to stay as a beta-only option for a bit longer to work (at least) some of the kinks out. Just because something works under test conditions doesn't mean that it won't blow up a nuclear plant when you're not looking. :wink:

In the case of multi-extension objects, I decided to follow x2 (or the shell?) as it decides that the last one is pertinent (the Extension [S] column shows .manifest for .exe.manifest), so that's that. It could also do with an option to disable all such rules and just dependably select the "first" of any given set, but I was hoping not to have to add a configuration menu to x2Filter (the one in SetFolderColour is insane), and that sort of nonsense even I admit always gets over-engineered in the end. Also, it doesn't properly handle extensions defined with embedded wildcards. Not the end of the world, but I'm a stickler for esoteric details, and if you're going to over-engineer something... by God, do it right! :D
Gary M. Mugford wrote:Clicking that button (or Mark menu choice) would select all unique base names
Yeah, I sort of got fixated on the basename part, as that was always going to be the sticking point. Forest for the trees. (You also don't need to click "highlight" first as you keep intimating - the Select Uniques entry can only ever work that way (you don't have a choice) - it can't operate as a "real" filter. :sad: Blame nikos for not providing us with an API we can actually use.)

[As we watch the Google-Search hits for tyrannodidaskalos go through the roof... Rave On, John Donne...]

M'Lord,

Since I never showed you any 'pictures' of things here at the Castle of Confusion (THAT, is such an oblique reference that I'm not sure anybody gets, but it makes me laugh, and I am the most important person that has ever lived. So that is enough), but I'm camel-case crazy and consider things like punctuation in the name of both files and folders to be an anathema. NO PROBLEMS HERE in the regards of rampant use of periods. So test on with the others. You'll get perfect scores here.

As per the key sequence, once you train a monkey ...

I take it you were raised by straight-ruler equipped teachers with a heavy hand and a idée fixee on Latin ... and you're YOUNGER than me. How is that possible? I just BARELY escaped the last days of the Latin department at my high school, happily finding out the German was offered as a freshman year elective for languages, along with the Canadian government-mandated French. I was soon to discover that the German I'd learned as a pre-school lad didn't quite offer up the cruise-through class I'd assumed and by sophomore year only French remained. Then there were none. Too bad the Internet came along and proved what a terrible price my laziness had cost me along the way. (That and the need to keep my marks up in the race for valedictorian ... or rather salutatorian. I eventually finished a rather distant second up the track. Then I gave up my scholarship ... in journalism ... a month in and went to work ... as a journalist. The rest, as they say amongst we unedumacated (sic) bums, is history.)

Key factoid from the above blithering away? NEVER LEARNED LATIN.

So, perhaps I shouldn't involve myself once the 38 euro words start to get flung around.

Okay, said the program worked perfectly for me ... Quipped about the quip ... Rambled along about things from last century ... OH, THAT's what I'm forgetting. Perhaps you have a charity that has struck a chord. That hour a week and the eyestrain are not inconsiderable PITA's you have removed from my life. My doctors should do as well. I know you did this out of the kindness of your heart, but I'd feel a LOT better about this badinage and the time I TOOK away from you ... albeit with your acquiescence, I'd feel even BETTER if I did something, whoever small (and I'm not kidding, we are talking SMALL), to square the scales.

And don't forget that I am the most important person that has ever lived. It has been decided upon. The good captain said, "Make it so."
Kilmatead
Platinum Member
Platinum Member
Posts: 4842
Joined: 2008 Sep 30, 06:52
Location: Baile Átha Cliath

Re: So, HERE's a way for Nikos to spend his copious free tim

Post by Kilmatead »

Gary M. Mugford wrote:I take it you were raised by straight-ruler equipped teachers with a heavy hand and a idée fixee on Latin ... and you're YOUNGER than me. How is that possible?
As to education, we are wont to remember that Alexander the Great's tutor was the one and only Aristotle (when your father is King of Macedon you get the Rolling Stones to play at your birthday party if you want it), and the insurmountable and oft-mentioned [by me!] ever redoubtable Montaigne can never be forgotten...
Wikipedia wrote:The intellectual education of Montaigne was assigned to a German tutor (a doctor named Horstanus who could not speak French). His father hired only servants who could speak Latin and they also were given strict orders to always speak to the boy in Latin. The same rule applied to his mother, father, and servants, who were obliged to use only Latin words he himself employed, and thus acquired a knowledge of the very language his tutor taught him.
As you can see, the worst thing that ever happened to the world was the Victorian advance of the middle-classes. Such low standards they have. Tsk. Tsk. :D And tyrannodidaskalos is more Greek than Latin anyway, but who's counting...
Gary M. Mugford wrote:That hour a week and the eyestrain are not inconsiderable PITA's you have removed from my life.
Amazing that the things one puts enormous effort into are lost to the unappreciated sands of history, yet the off-the-cuff moments put bread upon the table. Fine. I will accept your monetary ablution, if only because when I was 10 years old I ate dinner in a McDonald's restaurant in - yep, you guessed it - Brampton Ontario (I had an Aunt and Uncle in Toronto and we oft forayed from the annual CNE) and that particular dinner did not sit well with my young (and not yet Latin-based) constitution. I reckon Brampton owes me. (Or, perhaps I owe the cleaning staff who were stuck with the oddly-coloured trail leading to the loo...) Never once did I get sick in Kitchener off the 401 there, so there's food for thought, so to speak. Always water your horses (and your scions) in Kitchener. :D

I did, however, always appreciate that the breakfast cereal boxes in Canada are bilingual, so when (as a kid) I was stuck munching away on my Frosted Flakes I could read the box - and when I finished with one side, I could just turn the box around and a whole new world would spring into existence. I taught myself (very bad) French that way - just by turning the box back and forth - but it was a start! :D If you can't have Aristotle as your tutor, you make due with what's around you. Which, ironically, is a most Aristotelian ideal unto itself.
pj
Gold Member
Gold Member
Posts: 516
Joined: 2006 Jan 26, 14:01
Location: Florida

Re: So, HERE's a way for Nikos to spend his copious free tim

Post by pj »

Gary M. Mugford wrote:... Thus, I BELIEVE I WAS explicit in my dreams and desires and wanton lust for a solution.
But I was obviously wrong...
Gary, I've been following this topic with askewed interest into what devilish creation K will come up for another obscure function, and I must say I understood what you requested from the start as I have some similar cases of duplicate basenames from various situations. What I failed to understand was K's initial solution that ignored orphans!!

How heartless that appeared to be, but, just like E. Scrooge's midnight conversion, K saw the light and brought orphans into the fold. And three ghosts weren't required, although we can't count the number of personal demons that may have been afoot.

Now all is well with the K-verse :D
----------------------------------------
PJ in (sunny, hot and MUGGY) FL
Gary M. Mugford
Bronze Member
Bronze Member
Posts: 150
Joined: 2009 Oct 14, 00:54
Location: Brampton ON Canada

Re: So, HERE's a way for Nikos to spend his copious free tim

Post by Gary M. Mugford »

pj wrote:
Gary M. Mugford wrote:... Thus, I BELIEVE I WAS explicit in my dreams and desires and wanton lust for a solution.
But I was obviously wrong...
Gary, I've been following this topic with askewed interest into what devilish creation K will come up for another obscure function, and I must say I understood what you requested from the start as I have some similar cases of duplicate basenames from various situations. What I failed to understand was K's initial solution that ignored orphans!!

How heartless that appeared to be, but, just like E. Scrooge's midnight conversion, K saw the light and brought orphans into the fold. And three ghosts weren't required, although we can't count the number of personal demons that may have been afoot.

Now all is well with the K-verse :D
----------------------------------------
PJ in (sunny, hot and MUGGY) FL
PJ,

We duked it out in PM and I must say the Lord was wrought with remorse and offered all kinds of apologies for the oversight, up to, and including, his first born in indentured servitude for a decade. As a magnanimous gesture (I was getting the custom-written piece of software ANYWAY out of the deal), I let him off the hook. He promises to keep watching this space and immediately, if not before, solve any oversight of software capabilities he thinks Nikos has been guilty of [G]. The Lord is a gentleman and we are no longer at cross-purposes.

By the way, we've have now entered into an agreement to form the Society of the Frosted Flake, formed specifically for the purpose of bedeviling Nikos. Applications are being accepted. In what manner has yet to be decided. But it will be AWESOME.

GM
Kilmatead
Platinum Member
Platinum Member
Posts: 4842
Joined: 2008 Sep 30, 06:52
Location: Baile Átha Cliath

Re: So, HERE's a way for Nikos to spend his copious free tim

Post by Kilmatead »

pj wrote:What I failed to understand was K's initial solution that ignored orphans!!
I did, however, later state "...orphans screw everything up, as is the way with orphans - Fagin deserves our pity, not our scorn." Kinda says it all, doesn't it? :D

I would also like to point out (for the hundredth time) that I am just the gardener around here. My (real) life revolves around picking weeds and shovelling horse-shite all day (literally!). It's my lot in life. So remember that when you request things I'm just the equivalent of the spotty kid at the drive-thru who spills mayonnaise on your overpriced luxury vehicle - what used to be called "a Gentleman Coder" - not a professional. Thus, I'm allowed to play loose and fast with the facts, prerequisites, and "expected results". :wink: In fact, it's those very aspects that make things worth doing!
pj wrote:...with askewed interest...
That's all I ever ask of anyone! :wink:
Gary M. Mugford wrote:I must say the Lord was wrought with remorse and offered all kinds of apologies for the oversight, up to, and including, his first born in indentured servitude for a decade.
Not entirely certain I remember it quite like that - and I might have the (doctored) e-mails to prove it!

Which reminds me, I'm going to rethink how objects-sans-extensions are handled - doesn't seem right to just ignore them blanketedly.

("Blanketedly-blank-blankly-blank-blank..." - don't mind me, I'm just easily amused... :roll:)
Kilmatead
Platinum Member
Platinum Member
Posts: 4842
Joined: 2008 Sep 30, 06:52
Location: Baile Átha Cliath

Re: So, HERE's a way for Nikos to spend his copious free tim

Post by Kilmatead »

Since simple over-engineering just isn't good enough, when I'm given time enough for comfort, I can usually come up with something that would make Christopher Wren blush.

Thus, x2Filter_Beta3 is up (outdated link removed, see x2Filter proper for update). Lots of bug-fixes, a few small additions, and so on. Changelog is long and boring, but for those who like that sort of thing, enjoy. :wink:

Image
Changelog for 0.3.0.9 Beta wrote:"Unique Basenames" related changes:
Added: Entry has a settings dialog, opened automatically or via <Shift+Filtername> selection if auto-open is disabled
Added: Dialog has a "quick" virtual file-group which can override extension priorities otherwise defined in x2 (this is just for quick-editing, the "real" filter-groups are still the primary source)
Added: Optional case-sensitivity in basename and/or extension-group comparisons
Added: Literal text "Basenames" may be passed via /Filter as a command-line argument (to bypass the popup menu)
Added: Optional item-verification (distinguishes folder-objects), requires literal text /Path="$P" $A appended to x2Filter user-command (of limited value, so completely optional)
Fixed: Menu item for the filter was not disabled even when the process bit-type was mismatched or "Known Filetypes" were hidden (very very bad things could happen)
Fixed: Basename processing could return unexpected results if display was pre-sorted by any column other than Name - now preliminary sort order is irrelevant so all columns work
Fixed: Extension masks containing wildcards would fail to match groups
Fixed: Extension masks could return inconsistent priority results
Fixed: Existing-selections were ignored, now they may optionally define the scope (i.e., unselected files are ignored, unless there are less than 2 selections, then the whole pane is used by default)
Fixed: Statusbar post-processing report was complete gobbledegook
Fixed: Possible crash if listview was disturbed during lengthy updates (processing may be cancelled prematurely using <Esc> if necessary [sRetireWorker determines hotkey]
Changed: Menu item name reverted back to "Unique Basenames [S]" (and moved up in menu) to reflect that it's now essentially a stock filter (including consistent Mark/Select functionality)

General changes:
Added: General persistence settings are stored in an INI
Added: Mark/Select status in the popup is now sticky by default (enable/disable via bSelectIsSticky)
Fixed: /INI didn't follow x2's order priority when self-determining the settings file location ( see http://forum.zabkat.com/viewtopic.php?f=18&t=9820&p=60589 )
Fixed: Mark/Select would clear an existing filter before highlighting the new one (now the action is complementary rather than exclusive) [bSelectIsExclusive]
Fixed: Modifier-keys wouldn't properly apply when filters were assigned directly from the CLI
Changed: Menu item name Highlight/Select changed to Mark/Select for consistency
Changed: /Filter=<Name> is now used to pass named filters/commands directly (no menu popup)
We're still in beta because I just won't be happy until they bring back the original Godzilla films in all their black-and-white glory to Saturday-afternoon telly. These things vex me so.
Kilmatead
Platinum Member
Platinum Member
Posts: 4842
Joined: 2008 Sep 30, 06:52
Location: Baile Átha Cliath

Re: So, HERE's a way for Nikos to spend his copious free tim

Post by Kilmatead »

Unique Basenames has now been properly added to x2Filter as a stock filter and is out of beta. For those interested, the updates included since the last update (relating to the basenames filter) are:
Added: All members of non-unique basename-sets will be highlighted when both orphans and precedence-rules are disabled [bShowOrphans=0, bPrecedenceRule=0]
Added: Option to only promote items from initial group - i.e., all extensions in a set must belong to the same group, and that group is determined by the first "known" extension [bGangMembership]
Added: Dialog window position can be remembered [sDorianGray] (disabled by default)
Added: Option to ignore all whitespace and/or numerical digits (basenames only, neither applies to extensions)
Added: Progress percentages in dialog titlebar for filtering > 500 items
Fixed: Dialog now only closes after all processing is completed (not before) so user has a chance to use the <Abort>/<Cancel> buttons to terminate lengthy processing
Fixed: Possible crash issues if original x2 window handle is corrupted or the script unexpectedly terminated of its own course
Fixed: Scrap and Mini-scrap focused-pane classname detection could conflict and skew results in regular panes
Fixed: Potential z-order window displacement on active forms
Fixed: Default-states in INI creation settings
Fixed: Modifier-keys could produce unexpected results contextually
Fixed: Soft-filtering didn't obey [bSelectIsExclusive] setting
Fixed: Proper distinguishing of folders from files (previous verification method [/Path, etc] removed as being unnecessary)
Changed: Files without extensions are now always included (and no longer tied to folder-inclusion)
Changed: If orphans are displayed, but precedence-rules are disabled, NONE of the non-unique names found (if any) will be selected (as, by definition, they are not unique)
Any suggestions, comments, requests, bug-reports or general vitriol about this filter should be redirected to the x2Filter thread from now on please.