TestExternalFiles by Richard J. Otter is a new Windows utility that helps identify these issues:
- A file on disk may get renamed, or moved, breaking the link
from the database. - A file may be added to the media folder on disk but then not attached to the
desired database element. - A file may be added to RM, but then detached from all sources, facts etc , leaving it
“un-tagged”. - A file may be added to the database more than once.
That #media is one of the largest tags in the cloud in the sidebar says something about needed improvements in RootsMagic’s media management over its lifetime to date. Previously published scripts or apps may also have addressed one or more of these issues but what is novel or different about TestExternalFiles is:
- Developed in the Python programming language
- Executable either from the Python script (.py) if you have Python installed or as a standalone command line utility (.exe) for which #Python need not be installed
- Optional exclusion of specified folders and/or files from the directory listing to be compared with the database’s collection of media items
- Outputs a .txt file listing the results of its queries under these headings:
- Files Not Found
- Unreferenced Files
- Referenced Folders
- Files with no Tags
- Duplicated Files
TestExternalFiles has no user interface. One edits a .ini file to specify paths to the database file under test, the root folder for the media files and the output file along with setting which options are to be run and listing the exclusions. Double-clicking on the .py or .exe in the File Manager (or otherwise launching the utility) results in a brief flash of a blank window and it’s done. It is fast! Look for and open the output file to see the results of its analysis and act on as wanted.
Download the latest release from Richard’s github server ricko2001/Genealogy-scripts where you will also find fuller documentation and a bunch of other tools he has developed for his own use. The quality of his coding reflects his professional career in software development.
I assume this is Windows only? Or at least the exe version. If so, maybe add some reference that it isn’t for ‘native’ Mac users.
If one goes to Richard’s repository and reads the information that he has put up in regards to his work, they will encounter a block of text that reads as follows:
======================================================================
Compatibility
Tested with RootsMagic v7.6.5 and v8.2.0.0 (RM ver 7.6, 8.0 OK)
Python for Windows v3.10.5 64bit (ver 3.9 OK)
unifuzz64.dll (file has no version number defined. see MD5 and file size in accompanying file Hash.txt)
Operating system Window 11, 64bit (Windows 10 OK)
The exe file is Windows only, probably Windows 10 and later.
The py file could probably be modified to work on MacOS with Python ver 3+ is installed.
This would seem to address your concerns.
I’m probably missing something obvious, but I don’t see how to “download the zip file” to get started. I have read the directions a couple of times, and it all seems simple and straightforward, except that I can’t seem to find the zip file to get it downloaded. Any advice would be much appreciated.
I, too, unfamiliar with github, completely missed where it was for a while. On the root page https://github.com/ricko2001/Genealogy-scripts, look in the sidebar below About for the heading “Releases” and click on TestExternalFiles v1.2.1.0. On that page scroll down to Assets and click on TestExternalFiles.v1.2.1.0.zip.
I have been able to Run the TestExternalFiles. Any chance of getting the RM -Switch source template Released.
Regards Wayne b
Just saw your message.
RM -Switch source template is pretty close right now, but I haven’t made a release due to lack of interest.
Can you describe your goal? I’d like to be sure the script will do what you want.
There is a discussion tab at GitHub. I’d see messages much sooner there.
Richard, thank you for sharing this utility. I just successfully used it on RM7 on 64bit Win10. After reviewing the result, I found no reason to doubt that it is correct, but it’s going to take me a while to clean up!
John N.