avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • May 23, 2018, 08:16 AM
  • Proudly celebrating 13 years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Nod5 [ switch to compact view ]

Pages: [1] 2 3 4 5 6 ... 36next
Find And Run Robot / Re: FARR - Use Hotstring not hotkey
« on: May 14, 2018, 06:05 AM »
Are you really sure the string "xap" will be easier to recall than a hotkey like Pause or Control+Space?

Anyway, I don't think FARR has an option to open through a hotstring. But you can make a hotstring script with AutoHotkey.

:*:xap:: {Pause}

For more details see this help page https://autohotkey.c.../docs/Hotstrings.htm

One trick to learn a new single key hotkey is to tape a small piece of paper to it on the keyboard so you'll recall it at a glance until you have it in muscle memory.

Today I had a hard drive crash.. Not fun.
Sorry to hear that. Glad you recovered the files. Thankful for the useful software suggestion!

reminded me how important having full drive images are to making recovery from a crash a painless process.  Because of that, I am going to increase the frequency of my full drive backups from once a month to once a week.
What tool do you use for full drive backups?

I have the same issue.
To reproduce it in Windows 10 create a link to any .exe in Program Files by holding Alt and click drag the .exe. Search the link in FARR.
For comparison temporarily copy the same .exe to somewhere in Program Files (x86) and make a link to it and search in FARR.

Icons are also incorrect when using #filecontents to display a text string (not a file path) in the way described here. What happens then is that the icon from the results row above it is reused for the #filecontents row.

Request: add option that makes the launch and stay open command retain focus on whatever the keyboard input was before, including selection of one item in the results list.

Ctrl+doubleclick currently does that already.

But ctrl+Enter and the context menu command "launch and stay open" doesn't. They force focus to the searchbox.

version 180509 released
change: require ctrl+Y as shortcut in Everything for Close File List (old: ctrl+L)
change: parse drive letter from second line of the .efu (old: parse drive from _C in filename)
clarified helpfile

I found some, but while researching the topic further, I discovered that Microsoft has a Computer Vision library built in to the UWP SDK.

Whatever works! :Thmbsup:

I dabble a bit in OpenCV and Python and have had most help from these three resources

A great tutorial and project site with detailed, stepwise explainers of the code. The site has in the last year or so turned more and more to advanced machine learning topics, but check older posts for more introductory examples and projects.

Adrian Rosebrock, the pyimagesearch guy, also has a companion book https://www.pyimages...ctical-python-opencv  that seem useful, though I haven't read it.

Explainers and examples for many basic OpenCV functions in Python.

3. and, of course, https://stackoverflo...tagged/opencv+python

One thing to keep in mind: there are some differences between Python 2 and 3 when it comes to using and installing OpenCV. Last time I checked the most up to date release of OpenCV didn't play nice with with Python 3 in Windows 10.

But if you're on Python 3 you can quickly install a more basic version of OpenCV like so
python -m pip install numpy --upgrade
python -m pip install opencv-python --upgrade

I don't know exactly what that version is missing (the package page is here, ) but it has worked well in all my use cases.

I'm a little wary of not showing any message if file is not found.  But I could put the error in the status bar, or i could make a #filecontentsi command that is similar but ignores error..
You're right that is probably better. A new #filecontentsifexist (or something like that) would be useful.

One thing I use #filecontents for is to add a status/notification text line in some alias results. For example imagine an alias with 3 alternative backup commands as result. We can with #filecontents add an extra result line that reads a textfile generated by one of those three commands last time it ran. So the results can look something like:

backup command b1
backup command b2
backup command b3
Last run: b1 2018-02-15 success

Find And Run Robot / Re: slenderFARR - a new skin for FARR
« on: April 17, 2018, 11:53 AM »
So you would like an option to hide status bar?
Since 2008! ;D FARR once had that option but it was removed due to some negative side effects IIRC. Still would be nice.

I know some don't want the more minimal look but it could appeal to new users who are used to the Windows 10 search UI style and other flat visual styles e.g. Android.

On the same minimalist visuals note: in my first screenshot above the border for the results box is visible. It would look cleaner if that border was visible only when there are any results. IIRC the skinning tool can be used to hide the border all the time or not at all. I'm not sure exactly when that border started appearing without any results. It wasn't there in 2009.

Find And Run Robot / Re: slenderFARR - a new skin for FARR
« on: April 15, 2018, 05:30 PM »
I recently updated my version of the slenderFARR skin to use the default, flat Windows 10 style scrollbars. I'm attaching it to this post.

SHA256 hash: 153c2995ee281fbb1f956a9187caaf82e7c6cbabe89493ea94be6f2c98cb0d60

The skin can still be used to give FARR a minimal look, like this



Other settings to combine with the skin to get the look in the screenshots above:

The two buttons that FARR by default show to the right of the searchbox can be hidden by dragging them out of view to the right. Hover mouse near the left icon to see where to click and drag.

The font style used in the screenshots above are as follows. (Though you might need to tweak the values depending in the screen resolution.)

Options > Display Options > Results Display Style: Large Icon Slides

Options > Font Overrides >
- Editbox height 40
- Editbox Arial bold 16
- Result text font MS Sans Serif regular 10
- Result text line height 20
- Large Slide results line height 11

Two background notes:

The Skin Builder tool from 2006 still works for editing FARR skins. Filename is on that page, nothing else is needed. Though the tool is not very intuitive to use.

There is still no built in FARR option to hide/disable the statusbar. But I've made this AutoHotkey function that hides it

Code: Autohotkey [Select]
  1. ;function: hide FARR statusbar text
  2. ;- lasts until next FARR restart
  3. ;- FARR must have been opened once this session already
  4. hide_FARR_statusbar(){
  5. Control, Hide,, TPanel1, ahk_class TMainForm
  6. ControlSetText, TPanel3, %A_Space%, ahk_class TMainForm
  7. }

There is some discrepancy between http://www.donationc...ftware/friends-of-dc (linked to in Software menu in DonationCoder header's)

Oh and feel free to move me from the inactive to active list on dcmembers.

FARR has the special string that lets us import one or more alias results line from a file. For example an alias can put the below string in the alias results setup and whatever is in C:\a.txt will be included in the results when a matching search is done.

Code: Text [Select]
  1. #filecontents C:\a.txt

But if the file is not found FARR instead shows this error message
Code: Text [Select]
  1. a.txt) --> file not found
  2. Error processing alias contents: C:\a.txt(C:\

Request: if the file isn't found FARR should simply ignore that line in the alias results instruction.

DC Member Programs and Projects / BigTimer
« on: April 15, 2018, 04:29 PM »
This is the new discussion/feedback thread for BigTimer


Interesting read, thanks mouser. The Wordpress system at dcmembers is very easy to use. Much quicker to manage now from a users POV compared to the old way of .html edits and FTP uploading.

Ok, I think I've tracked it down now.

The problem
An unwanted scrollbar appears and hides part of the result text only when
(1) the search matches a regex alias and
(2) the regex alias has only one result and
(3) the search before the last entered character had no such one-result regex match

For example with the alias regex ^(b|ba)$ the problem appears for searchstring "b" and disappears when we type the next character to search "ba"

The cause
Resizing the FARR window to have too small width.

The tricky thing though is that the issue doesn't appear directly after resizing. So the user will not directly see any problem with the resize. No unwanted scrollbar is shown even in case (1)(2)(3) above.

Until, that is, the FARR process is restarted. Next time FARR exits it updates the .ini with values that, on next run, will generate the problem. So a user might notice the problem only the next day after Windows has rebooted and FARR restarted.

Reproduce the problem via the GUI: Open FARR. Do a click and drag resize from the bottom right window corner and make the window very small in width (drag it to the left). Exit FARR via the tray menu. Run FARR again. The bug should now appear.

Under the hood the resize to small width makes FARR on next exit update these three keys in the .ini
MainWidth , ResultMode_Width_1 , ResultMode_Height_2

Reproduce the problem by editing FindAndRunRobot.ini
Set these values while FARR is not running

Solve the problem by editing FindAndRunRobot.ini
Set these values while FARR is not running

The exact numbers needed might vary depending on what skin and what visual settings the user has.


These .ini variables also affect the issue.
Code: Text [Select]
  1. CaptionWidth
  2. IconWidth
Set them lower and the value 400 can be set lower without the problem appearing.

An unwanted scrollbar appear for regex aliases with only one result. The scrollbar shows only for the first matching character and disappears after the next character.


Reproduce the issue with this alias (temporary disable any other alias with the same regex pattern)

alias:      bar
regex:    ^(ba|bar)$
results:   test | C:\

The issue only occurs for single result aliases. If we update the alias with a second result line then the scrollbar never shows

Tested in FARR v2.233.01 and v2.229.01 in Windows 10. I tested changing some visual settings (disable skin, resize fonts, ...) but the issue persists. I might have missed something though.

goareload (reload all aliases), so you could call farr commandline and tell it to run that.
Yes, but even when we run that on the command line like this "FindAndRunRobot.exe -search goareload" FARR afterwards forces a load of the additional search string "agroups" which lists all aliases in the results window. So it isn't silent. It would make sense to change "goareload" to not do that extra step since users can already call "agroup" separately if they want it.

Now as for reloading the INI file.. that might be trickier without existing and restarting FARR, but I might be able to add a commandline option to tell it to do that.

Or a command to reload aliases and read .alias <Disabled> elements and use the read data to overwrite the Disabled/Enabled status in FARR's working memory (assuming FARR doesn't read from ini to memory each time options open). Then on FARR shutdown (or whenever it writes to .ini) the data would have passed from .alias to memory to .ini.

Whichever is least work I suppose. And if both ways would take much work then do neither. I mean this is a niche use case and now that I figured out how to script the shutdown/edit/restart steps quickly and reliably the extra benefit of doing it "restartless" would be small.

In fact if you only have one chunk of time to spend on any of this consider instead making FARR work while options are open (specifically the Edit Group Alias window). I simply cannot be the only one tripped up by that time and time again. That was the main reason I wanted to code my own alternative FARR alias editor. You know, it takes a special kind of evil genius to make a program so intuitive, great, useful and versatile as FARR, a program that users quickly learn to use all the time and extend through the powerful alias features to become almost like an extension of your thinking that you trust can be used while in any and all programs... except its own options! ;D Cruelty! :D A bit like making the best car in the world that can drive absolutely anywhere... except into its own garage. There you have to get out and push it. (All this said tongue in cheek of course. FARR is great!  :) )

After some more tests and a better test script this method actually is consistently quite fast:

1. exit FARR: FindAndRunRobot.exe -exit
2. edit .alias / .ini
3. start FARR: FindAndRunRobot.exe -hide

Takes less than a second with the right script. The requested features would still be nice to have though, but this workaround is reliable enough for use in scripts. So I've now made a replacement FARR alias editor prototype that starts off with the filter_alias script. Will test it some more and release later if good enough.

The improvements are alias filtering, sorting the alias list and, the big one, being able to use FARR while editing FARR aliases.

I suppose for your purposes you don't mind if I add a more esoteric hotkey that won't conflict with anything else (the way Ctrl+O would)... So if I make it like Ctrl+Shift+E something silly that would still be ok for your purposes?

Any hotkey however weird would do just fine. I'll just remap it with AutoHotkey.

Request 1: add a method to silently reload all aliases from .alias files

Request 2: add a FARR alias reload method that also updates the disabled/enabled status for each alias based on if it has the Disabled element in the .alias file.

These changes would enable users to script changes directly to .alias files and then quickly and silently apply them.

The FARR special search string "goareload" reloads/updates aliases from .alias files. But not silently since after the reload it forces the "agroups" command that show all aliases as a list in FARR results. For request 1 make a new special search string "goareload_silent" that differ only in that it does not force "agroups".

The least visible workaround I've found to reload aliases from file:
1. FindAndRunRobot.exe -search goareload
2. FindAndRunRobot.exe -hide
But the FARR window still flickers briefly and sometimes the -hide command fail when scripting these steps (timing issues)

We can also reload aliases from file with the exit and restart method:
1. FindAndRunRobot.exe -exit
2. script changes to .alias file
3. FindAndRunRobot.exe -hide
Advantage over "goareload": No results window flickering. Drawback: FARR restart can make this method slower.
Edit end

Request 2 is because FARR's "goareload" command ignores "<Disabled>" elements in the .alias files. Disabled/enabled status is instead ruled by the FindAndRunRobot.ini line DisabledAliasStrings . In other words having a script add the line "<Disabled>true</Disabled>" to an .alias file AliasEntry section has no effect even though all other changes to .alias file elements are applied by "goareload".

The least visible workaround I've found to modify Disabled/Enabled status of aliases:
1. FindAndRunRobot.exe -exit
2. have a script read, modify and overwrite the string for DisabledAliasStrings in FindAndRunRobot.ini
3. FindAndRunRobot.exe -hide

But that can take several seconds and is sensitive to timing issues.

Request 2 could be done as a separate special search string. Or a FARR setting to toggle authority over disabled/enabled status between .ini and .alias files. Or a combo special search string that for both request 1 and 2, e.g. "goareload_silent_alsodisabledstatus".

Request: add a keyboard shortcut to run the context menu "Explore here" command that opens the selected file's folder in Explorer. I suggest ctrl+o as in Open. The context menu's "Explore here" works on all files including local .url files.

With AutoHotkey we can achieve this for most files by using FARR's control+C shortcut to copy a file's full path.
But that does not work on local .url files since for them FARR's ctrl+C copies the URL rather than the full path to the local file.
A non perfect workaround sends keys to open the context menu.

Code: Autohotkey [Select]
  1. ;control+o to open folder for selected file in FARR
  2. #IfWinActive, ahk_exe FindAndRunRobot.exe
  3. ^o::
  4. ControlGetFocus, cFocus, A
  5. if (cFocus == "TNextGrid1")
  6. {
  7.   send ^c
  8.   SplitPath, clipboard, , dir
  9.   If InStr( FileExist(dir) , "D")
  10.     Run % dir
  11.   ;workaround for .url files where FARR's ctrl+C return the URL
  12.   ;limitation: the context menu briefly flashes and send keys may fail
  13.   Else If InStr(clipboard, "://")
  14.   {
  15.     send +{AppsKey}
  16.     send e
  17.   }
  18. }
  19. return

edit: clarified and added workaround in the AutoHotkey script

I need to rename a file photo.jpg using the contents of a text file "whose.txt". 
In all cases, the text file will only contain one word with no special characters or spaces only normal alphabetic letters. 

Do each txt filename have some pattern that link them to a unique original jpg filename? For example the new name for photo.jpg is in photo.txt , the new name for another_picture.jpg in another_picture.txt and so on. Then it would be very easy to make a batch script to handle the renaming.

But if the txt and jpg files have no such matching pattern, like in your whose.txt and photo.jpg example, then I guess the only option is a script that accept two files (the txt and jpg) as input. You'd then manually run that on each txt/jpg pair you have. If you can remember which txt belongs to which jpg that is  ;D

I was dealing with images that went back as far as the 1880's, most though were 1950 to 1980. So a lot of it was guess-work i.e. no definite date for majority of the images.
Then using Lintalist's script, I renamed (numbered) the files based on their new sequence.

Ok, what I meant more specifically is that if the filenames have some consistent date strings, for example "20161001183503.jpg", "2016-10-01.jpg" or "161001 tag tag.jpg" or some such then it would be easy to with a script copy those date strings to each file's EXIF.

I use the YYYYMMDDHHMMSS format for all photos because then you see the date directly in the filename and the files are automatically sorted by date when you sort them by filename. You can always put descriptive tags at the end of the filename to make it easy to find them when searching.

For scans of very old photos where the date is not exactly known one can make a rough estimate and pad with "01" patterns as a reminder that the date isn't exactly known. For example a photo from sometime in the 1950s could be named "19500101010101.jpg".

I went to a lot of effort (to be described below: with the help of dc user Lintalist) to manually sort the scans, and rename them according to a correct timeline. You upload your images to gphoto and they are only sorted by date, so you need a workaround. You can manually move an image in gphotos, but it is not a particularly user friendly process, and not really feasible for hundreds of pics anyway.
The workaround is to change the date field to the same date-time on all relevant files

Isn't there a lot of manual work involved to shift/edit dates for many files in Google Photos? If you already have the images locally with datestrings in the filenames then an alternative approach would be to change the exif metadata date strings to match those in the filename and then reupload in bulk to Google Photos. If the datestring in the filename has the same format for all files then a pretty simple script could do the trick.

Hi Nod5,
Your tool seems to be missing from your site.
Any chance to upload it again?
Thanks in advance,
Fixed now, see first post

Pages: [1] 2 3 4 5 6 ... 36next