Rated 5 stars at SnapFiles
   Shareware and Freeware



This Month's Donators J. Simmons C. Kuok (K. Scott -- last month's top donator $50) ... more PayPal

 

Use with caution.
These public beta programs contain new fixes and new features that haven't been fully tested. I need you to tell me if you find any problems with these program or even if the changes listed work as you expect.

joejoe Oct-19-09 11:45 PM UTC

A Moving Problem for Rename Master

One of the new renaming items I've been trying to design is a new Step to handle moving part of a filename. The big problem is defining a way for the user to tell the program what part to move.

For splitting a file into parts, a delimiter is defined. The delimiter is a single character or phrase that separates the name into individual parts. In English, the comma is a common delimiter for separating words or phrases. This, however, is a very conceptual step that doesn't have a very good visual representation.

A generic "find" seems a much more useful option. This would be a good replacement for a regular expression, but it would be much easier to understand. This option would have a "starts with", "contains", and "ends with" part - each optional. Each of these options would have one of several choices: a list of characters, or a phrase. Once the phrase is found, it can be deleted into a temporary variable to be used in any of the "Add" renaming steps.

An actual "move" item would be extremely limited. For example, there is an "add counter" step in the program for this very common operation, but it's no where near as flexible as using a meta-variable. In this case, it seems that a specialized "remove expression" step would be more effective and flexible. The problem here is that the user must understand meta-variables and its concept before the concept of "moving" can be done using a cut-and-paste style operation with the Remove and Add steps. Including example scripts, though, would make it much easier to understand and discover some of these more complex renaming operations.

As of now, I'm interested in created a "Remove Expression" step that will allow for creating a conditional regular expression style option without having to learn or understand actual regular expressions. It may be easier to think of this option as a "Find and Remove" step. An expression can be thought of as a way of describing by defining the beginning, middle, and end parts. For example, the phrase (texthere) starts with "(" has letters in the middle and ends with ")".

I'm unsure of creating a "Split" step because it doesn't sound very applicable to general situations. In the case of swapping words around a character, like a dash, the Remove Expression option can easily handle this type of operation.

joejoe Jun-01-09 9:23 PM UTC

Taking Inventory - ArsClip, Rename Master

One thing that's been added to the recent release of ArsClip and the latest public beta upload of Rename Master is a check for file permissions. Both programs require the abililty to create files (and folders) in the same folder as the program [note: ArsClip has an optional "-data" command line parameter to use the current user profile instead]. Even with correct permissions, UAC in Vista and Win7 can cause permissions to be denied to create files. The programs are designed to be portable for thumb drive usage, which means it must write any and all data in one spot. Newer versions of Windows know that the average "Program Files" program does not change and will virtualize any changes to protect the installation. When virtualization works, the average user will never know the difference when running a program that stores data with the program.

Both programs will create an empty file and delete the file and test for errors. Instead of just crashing, the program will display a friendly message so the problem can be fixed. If the optional setup program is used, errors won't likely occur but copying the folder won't copy all the program setting unless the virtual store files are also copied. As long as the program isn't installed in the "Program Files" folder, this isn't an issue.

---

I'm unsure when it changed, but when Rename Master created a new default script - it didn't create steps in a disabled state. This is very likely to create quite a bit of confusion because one of the step will replace the entire name with nothing when in the default state. This really screws autopreview because the "New Name" column will continue to be blank until the steps are deleted or disabled.

In the latest public beta upload, I detect when the default script is loaded with all step enabled and disabled them to work around the problem. Since the default script is only created once on the first run, this is needed for previous installs. This workaround is only applied if the default script has 10 or more steps that are all enabled, so it's not likely to interfere with custom default scripts.

I'm going to be pushing out v2.9.3 quicker with less features than normal because of this issue. Other ideas, like including example scripts, will have to wait until the next version. "Test 5" or RM will likely be the last test for v2.9.3 unless there are bugs to be addressed.

joejoe May-31-09 9:49 AM UTC

Taking Inventory - ArsClip, Rename Master

In ArsClip, one thing I've noticed is the word "item" is used quite a bit in the program. The word "item" is rather generic, especially when many users are used to the term "clip" when related to items on the "clipboard".

I'm thinking that the following items need to be renamed: Permanent Items, Removed Items, Text Items, Non-Text Items. These names, obviously, would become the following: Permanent Clips, Removed Clips, Text Clips, Non-Text Clips.

---

In the latest public beta upload of Rename Master, the items in the post below have been implemented. The new Save Script dialog will eventually completely replace the "File->Script Options" but will stay for now until I can figure a way to deal with older scripts that don't include new flags that tell the program to preserve the current Path and Filter settings.

I'm also thinking about including a "Move Step", very similar to the new "Add Counter" step. The step isn't meant to replace the current "?temp?" variable, but will add a way for new users to get exposed to moving parts of the filename.

What I haven't figured out is a very common operation to implement. A common request I get is a way to change "Part1 - Part2" into "Part2 - Part1", like swapping the "Artist" and "Song" parts of an audio files. Currently, the operation to produce this effect is to "Remove everything before the phrase '-' and store in ?temp? variable" then "Add '- ?temp?' to the Name at the Beginning". Something like "Move everything in front of '-' to the End of the filename" would be close, but there would need to be a way to state that the phrase '-' itself would remain in the middle. This, however, doesn't teach the new user anything about using the ?temp? variable.

What might be a better way to teach about more advanced operations is to just create a few example scripts and either include them with the download or place them for download on the website. This way, the user can alter the script to fit their needs without having to experiment too much.

joejoe May-26-09 9:35 PM UTC

Taking Inventory - Rename Master

Here are some first ideas that are on the TODO list for Rename Master:

- A new Save Script dialog

There are options that just aren't really shown for saving a script. Currently, the Path, the Filter, and all renaming options are saved in the script. There's a somewhat hidden "Script Options" menu item, but those options should really be part of the actual script file itself.

- A new Add Counter renaming step

Using counters is a very common renaming operation, but it requires a bit of learning and experimentation to get one working. My idea is to create a step to add a counter to a filename that makes it easy for a new user to get started working with a counter. The old style counter system will still be available in other steps and will still be more flexible.

There's also an option that I'd like to add for resetting the counter so that the program will automatically create 1 thru X numbers for files with the same name. The option to automatically generate file sequences is, still, hard to explain. While I'll experiment with this option, it may not become a feature.

- Update command line help/Recursive Scan

One thing that's been missing for a while is an explanation of the S, XI, XU directly in the "-?" help screen. First, I plan on replacing the popup dialog with console output to better support batch style operations. Second, an option to perform the rename recursively has been missing for a while. Also, the term "Recursive Scan" isn't as well known as a "Subfolder Scan" on the "View" menu, so I plan on changing the name to something like "Subfolder Scan (recursive)".

- Remove Clutter

There are several options and menu items that just don't really fit the program anymore. Some items are duplicates, some are obsolete. Many of these items can safely be removed to make things less complicated.

joejoe May-01-09 4:16 AM UTC

Next task, taking inventory

After so many years of working on this programs, there are features and dialogs I've not even looked at in months and years. My next task for Rename Master and ArsClip [once I've released version 3.1.3], is to go back and look at each program's options and see what needs to change, what needs to be reworded, and what needs to be removed.

Here's an example. There's an option in ArsClip (AC) to define how non-text items are pasted. This option hasn't actually done anything for years. Now that text and non-text items are combined into a single list [by default], the option doesn't seem to be even needed anymore.

Even though I use AC every day, I barely use 10% of what AC can do. I'm going to re-introduce myself to my programs and do some housekeeping. So, if there's a feature or option in a program that you think is confusing or just not intuitive, let me know so I can put it on the top of my todo list.

joejoe Apr-03-09 4:48 AM UTC

ArsClip Fix

The latest Public Beta fixes a long standing problem where non-text duplicates were not detected. To support this, the file format for clips (.ACZ) has been altered, but only new clips written to disk support this feature.

This new change will allow for a feature that I've been wanting to add - the ability to show both text and non-text items in a single list. I may actually add this feature before officially releasing 3.1.3, even though I already claimed it in "Feature Freeze". The current beta just doesn't seem to have many new features for a new release without it.

I, earlier, looked into supporting the CLP (Windows Clipboard Format) for saving clips, but the new MS OSes don't even have CLIPBRD.EXE any more and it's not a documented format either. I've decided to skip adding support for it because of this - there's no longer a default association for CLP files in Vista (and Windows 7).

joejoe Mar-10-09 11:53 PM UTC

Renaming with Textfiles

As stated on the main page, I've added textfile support to the Rename Master. While the current implemenation is simplified to just 3 options, there's a visualization problem with the implementation. There's no visual link between loading the textfile into meta-variables and further more there's no visual link between the Scripting Steps and inserting the new ?textN? style meta-variables.

The first plan is to visually display a row of the data. This will help with 2 visual problems and show how the data is separated and the names of each of the meta-variables used for each field. This will also show if the effect of the "skipped lines".

The second plan is to add a new "Textfile" popup item for the insert popup menu to automatically insert ?textN? meta-variables.

joejoe Mar-04-09 1:53 AM UTC

MouseWrangler, under the hood

For a peek at how MouseWrangler works, hold shift and click the main form in an empty area. The top/left 2 values represent the change in X and Y direction since the last sample. These X and Y values are changed to percents of the monitor's width and height and changed to a resolution independant value - these represent mouse speed. The 4 following values represent the number of times the same direction is detected sequentially when the X/Y speed is over a threshold value. The bottom center number represent the detected angle of movement (from 0 to 360) and the top center numbers represents the current mouse position and the last position since a direction change was detected.

The X and Y deltas and the counters use exponential smoothing, that is to say, they don't increase or decrease immediately. They work similar to how an estimated download time works using a history of values to present a current value. These numbers are represented by the "Speed required" and "Distance required" configuration settings for Gestures. Lower values means the current value is used much more than historical values and higher values means that historical data is used much more that current values. The "Slower" and "Shorter" values trigger much sooner, but are less accurate.

The counters and X/Y deltas detect direction changes and store important mouse positions, but ultimately direction is determined by comparing the last important stored mouse point and the current mouse point. Using good old trigonometry and right triangles, the length and angle of the movement is calculated. If mouse movement becomes long, but the movement is slow enough not to cross thresholds, the direction will be calculated no matter the X/Y deltas and counters. This "slow" movement uses a multiple of the "Minimum length" configuration setting to trigger.

Things get more complicated when Diagonals are enabled. I've already explained below about the dead zone used to ignore angles that aren't unique enough to be conclusive, but once these are long enough the movement will no longer be ignored. Certain angle combinations are not legal and are ignored to remove the most common errors. For example, a Down cannot be followed by a SouthEast or SouthWest movement. When changing from Down to Left, for example, it's very easy to move at a diagonal of SouthWest instead of making a very clean right angle change.

Once the Right-Click is released, the series of movements is reported and the gesture lookup begins. At first, exact matches are found but when diagonals are enabled and no exact matches are found, similar gestures are found and ordered by similarity. A similar gesture has 1 direction different than the performed gesture, or is missing 1 direction. Gestures that begin the same are considered more-similar and placed first in the suggestions list. When the Suggestions Popup is enabled, this list is shown and the user can close or select the correct gesture. When Auto-corrections are enabled, the program will search the suggestion list and find one incorrect direction that is neighboring the correct direction and automatically execute the first very similar correct gesture.

Older Items






Got an idea for improvement, a bug to report? Just want to say hello? Send me your feedback.
I can be contacted at jackass.joejoe@gmail.com English only please.