Before the illegal filename ? character would get replaced with nothing.
Now it's getting replaced with an underscore.
Is this permanent or a bug that's just slipped in?
It appears the something has changed with illegal characters. I haven't changed my file op formatting is ages (2 years) but it's now picking up on things it wasn't before.
It's meant to be replaced with an underscore if in mid-text and removed if trailing. But point noted, it will be changed to work like old versions did for the sake of consistency.
Thanks. I think the pipe character has changed to an underscore. It was changed before to a hyphen I believe.
It's meant to be replaced with an underscore if in mid-text and removed if trailing. But point noted, it will be changed to work like old versions did for the sake of consistency.
In the recent builds you would also get an underscore for trailing illegal characters, i.e. the cases I witnessed affected the "?" character. How about making it togglable, perhaps with an option to define the replacing character?
Thanks. I think the pipe character has changed to an underscore. It was changed before to a hyphen I believe.
Can confirm. Change still present in v1.6 final.
Make sure that the advanced setting is disabled accordingly (screenshot).
Make sure that the advanced setting is disabled accordingly (screenshot).
This is for the converter. The issue is with file ops.
Make sure that the advanced setting is disabled accordingly (screenshot).
This is for the converter. The issue is with file ops.
There is also an identical option under 'Advanced/Tools/File Operations'
Thanks, silly me. Updated to v1.6.
Although when it's unchecked the pipe character is getting replaced with an underscore whereas before it was getting replaced with a hyphen AFAIK.
Although when it's unchecked the pipe character is getting replaced with an underscore whereas before it was getting replaced with a hyphen AFAIK.
The change in pipe character replacement threw me for a loop because I thought new files weren't synching to my devices correctly, as many of my genre tags use a pipe. I tried to get around it by changing my pattern to explicitly replace | with - but it looks like the automatic replacement is done before the pattern matching. Is all of this intended and if so is there any way for a user to replace | with -?
.. is there any way for a user to replace | with -?
You're going to have to wrap your existing format and use something like so:
$replace(yourexistingformathere,|,-)
You're going to have to wrap your existing format and use something like so:
$replace(yourexistingformathere,|,-)
Unfortunately, this doesn't work - the replacement of | to _ seems to be impossible to override currently. I wonder if this is intended or not, as it seems inconsistent.
It works for me in the latest beta.
Ran a simplified test case in 1.6.1 beta 6, screenshot in attachment.
Ran a simplified test case in 1.6.1 beta 6, screenshot in attachment.
You're right. What I actually did was: (Not ideal I know but this mimics the behaviour I had before)
$replace('a_string',_,-)
That's a damn good workaround, thank you for the suggestion. Files with artist or album tags that include a pipe are still going to be updated but that's a handful vs tens of thousands, so calling it a good solution.
That's a damn good workaround, thank you for the suggestion. Files with artist or album tags that include a pipe are still going to be updated but that's a handful vs tens of thousands, so calling it a good solution.
You also could do this:
$replace($replace($replace('a_string',_,mytempunderscorefix),_,-),mytempunderscorefix,_)
This way you retain any underscores.
You're right. What I actually did was: (Not ideal I know but this mimics the behaviour I had before)
$replace('a_string',_,-)
Thanks for this. Simple, but it never occurred to me this would work on illegal character replacements.
Scrambles, I just wrapped the $replace around the whole file name pattern and it addressed artist and album tags just fine.
You also could do this:
$replace($replace($replace('a_string',_,mytempunderscorefix),_,-),mytempunderscorefix,_)
This way you retain any underscores.
I thought this was brilliant but it actually doesn't work, as the pipes are replaced with underscores before the pattern is even matched.
Not much that can be done then, I didn't test that but thought it may work.
Pity there's no character set that the user could use for the replacement of each illegal character.
Regarding ? replacements, the SDK function pfc::io::path::charReplaceDefault could do with updating as it currently falls through to using an underscore which doesn't match the behaviour of file operations/converter.