Case & Leading Zero Fixer 1.4.2 (2008-04-15)
Hi!
I noticed a problem when trying to correct the case on some songse with small words like vs. even if they are in the small words list they still get uppercased since there is no vowel. This happens also for ft.
Is this supposed to be so? What is little words supposed to do?
On the original case.vbs i used little words exactly to keep vs, ft and others lowercase.
Thx,
Red
I noticed a problem when trying to correct the case on some songse with small words like vs. even if they are in the small words list they still get uppercased since there is no vowel. This happens also for ft.
Is this supposed to be so? What is little words supposed to do?
On the original case.vbs i used little words exactly to keep vs, ft and others lowercase.
Thx,
Red
Yeah, I noticed that myself. But checking up on it in MM2, I had vs in my forced cap list. Doing the same in MM3 solves the problem.
I haven't changed anything in the script regarding how the update of the case is done so that should work exactly as in the original script. i have also wondered why there are two lists. Shouldn't one be sufficient? The main differens i found between the lists are that words in the littlewordlist gets uppercased if they start a "sentence" while forced case words never gets its case changed.
I haven't changed anything in the script regarding how the update of the case is done so that should work exactly as in the original script. i have also wondered why there are two lists. Shouldn't one be sufficient? The main differens i found between the lists are that words in the littlewordlist gets uppercased if they start a "sentence" while forced case words never gets its case changed.
Advanced Duplicate Find & Fix Find More From Same - Custom Search. | Transfer PlayStat & Copy-Paste Tags/AlbumArt between any tracks.
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
Hmm I take it all back was also in my forced Cap. list...Bex wrote:Yeah, I noticed that myself. But checking up on it in MM2, I had vs in my forced cap list. Doing the same in MM3 solves the problem.
I haven't changed anything in the script regarding how the update of the case is done so that should work exactly as in the original script. i have also wondered why there are two lists. Shouldn't one be sufficient? The main differens i found between the lists are that words in the littlewordlist gets uppercased if they start a "sentence" while forced case words never gets its case changed.
Maybe you should add them by default
Here is my list from original case.vbs with a few things modded (only ft and vs are lowercase in my collection) and more Artist names added in fforced caps:
Code: Select all
Dim littleWordString
'Maybe ft should also cover ft. and vs also vs.
littleWordString = "ft|vs"
Dim forceCapStringforceCapString = "AC|EBN|OZN|MCs|MC's|DJs|DJ's|JBs|JB's|10cc|Mr|Mrs|Dr|Jr|Sr|Pt|St.|St"& _
"|vs|ft|feat|aka|vol|w/|ABC|ABCs|AC/|ASCII|ASCIII|ATV|BTO|ELO|ELP|EMI|DuShon" & _
"|FYC|INXS|MacArthur|OMC|OMD|OMPS|PSI|PTA|REM|REO|Sgt|UB40|UK|USA|USMC|UTFO|" & _
"silence]|T's|OK|USSR|Hz|AC/|NOFX|KoRn|AFI|Talla2XLC|AR-15|50Cent|http|www|ftp"
Red
Ps:
Could you please eventually add the options <blank> and <keep> to the fields?
Because I'd like to be able to keep my filenames as they are and eventually blank out album artist.
Something else i noticed:
And here is a small update with a progressbar:
helper functions
Code: Select all
'put these two at the beginning of the file
Const BarObject = "CaseM"
Dim statbar : statbar = true
'this goes anywhere
Sub BarText(text,curVal)
If StatBar Then
Dim bar : Set bar = sdb.objects(BarObject)
If bar Is Nothing Then
'logme " Call initbar first"
Exit Sub
End If
bar.text = text
If curval > bar.maxvalue Then
bar.value = bar.maxvalue
ElseIf curVal > -1 Then
bar.value = curVal
End If
End If
End Sub
Sub InitBar(cur,max)
If StatBar Then
Dim bar : Set bar = SDB.objects(BarObject)
If bar Is Nothing Then
Set bar = sdb.Progress
End If
If max <1 Then
'logme " max < 1"
Exit Sub
End If
bar.maxvalue = max
If cur > max Then
bar.value = max
Else
bar.value = cur
End If
sdb.objects(BarObject) = bar
End If
End Sub
Sub killBar()
Dim bar : Set bar = SDB.objects(BarObject)
If Not bar Is Nothing Then
'bar.visible = False
SDB.objects(BarObject) = Nothing
End If
End Sub
Code: Select all
Sub TitleCase(o)
Dim UI, Form, Foot, Top, BtnOk, BtnCancel, Edt, WB, HTML,ini
Dim trackList
Dim writeChanges
Dim DlgWidth
Set ini = SDB.IniFile
Set trackList = SDB.CurrentSongList
If trackList.count=0 Then
res = SDB.MessageBox("Select tracks to be updated", mtError, Array(mbOk))
Exit Sub
End If
Set UI = SDB.UI
DlgWidth = 700
' Create the window to be shown
Set Form = UI.NewForm
Form.Common.SetRect 50, 50, DlgWidth, 400
Form.Common.MinWidth = 585
Form.Common.MinHeight = 150
Form.FormPosition = mmFormScreenCenter
Form.Caption = SDB.Localize("Case Checker")
Form.StayOnTop = True
' Create a panel at the bottom of the window
Set Foot = UI.NewPanel(Form)
Foot.Common.Align = 2 'mmAlignBottom
Foot.Common.Height = 55
' Create a web browser component
Set WB = UI.NewActiveX(Form, "Shell.Explorer")
WB.Common.Align = mmAlignClient ' Fill all client rectangle
WB.Common.ControlName = "WB"
' Create a button that saves the report
Set BtnOk = UI.NewButton(Foot)
BtnOk.Caption = SDB.Localize("&Ok")
BtnOk.Common.SetRect DlgWidth - 208, 25, 85, 25
BtnOk.Common.Anchors = mmAnchorRight + mmAnchorBottom
BtnOk.UseScript = Script.Scriptpath
BtnOk.OnClickFunc = "OnOK"
BtnOk.Default = True
BtnOk.Common.enabled = False
' Create a button that closes the window
Set BtnCancel = UI.NewButton(Foot)
BtnCancel.Caption = SDB.Localize("&Cancel")
BtnCancel.Common.SetRect DlgWidth - 108, 25, 85, 25
BtnCancel.Common.Anchors = mmAnchorRight + mmAnchorBottom
BtnCancel.UseScript = Script.Scriptpath
BtnCancel.OnClickFunc = "OnCancel"
BtnCancel.Cancel = True
BtnCancel.common.enabled = false
'-------------------------------------------------------------------
CreateNewEdit Foot, 5, 5, 80,20,"","LittleWord","To add a word, that always should be in lowercase,"& vbNewLine &_
"enter it into this box and press Add!"
CreateButton Foot, 88, 4, 75,23,"--> Add -->","","AddLittleWord","",True
CreateDropDown Foot,166, 5,120,20,"DDLittleWords", 0,"LittleWords",LittleWords,""
CreateButton Foot,289, 4, 75,23,"<-- Delete","RemLittleWord","RemLittleWord","To delete a 'Little word', select it in"&_
vbNewLine & "the dropdown-list and press Delete",True
CreateNewEdit Foot, 5, 28, 80,20,"","ForceCaseWord","To add a word, that always should be as entered,"&_
vbNewLine & "enter it into this box and press Add!"
CreateButton Foot, 88, 27, 75,23,"--> Add -->","","AddForceCaseWord","",True
CreateDropDown Foot,166, 28,120,20,"DDForceCaseWords", 0,"ForceCaseWords",ForceCaseWords,""
CreateButton Foot,289, 27, 75,23,"<-- Delete","RemForceCaseWord","RemForceCaseWord","To delete a 'Forced Case Word', select it in"& vbNewLine &_
"the dropdown-list and press Delete",True
CreateButton Foot,375, 4,100,47,"Refresh","","RefreshTitleCase","",True
Form.SavePositionName = "CaseWindow"
'Form.Common.Visible = True ' Only show the form, don't wait for user input
SDB.Objects("CaseThingy") = Form ' Save reference to the form somewhere, otherwise it would simply disappear
HTML = "<!DOCTYPE HTML PUBLIC ""-//W3C//DTD HTML 4.0 Transitional//EN"">" & vbcrlf
HTML = HTML & "<html>" & vbcrlf
HTML = HTML & " <head>" & vbcrlf
HTML = HTML & " <title>" & SDB.Localize("Case Checker") & "</title>" & vbcrlf
HTML = HTML & " </head>" & vbcrlf
HTML = HTML & "<STYLE TYPE=text/css>" & vbcrlf
HTML = HTML & "body{font-family:'Verdana',sans-serif; background-color:#FFFFFF; font-size:9pt; color:#000000;}" & vbcrlf
HTML = HTML & "H1{font-family:'Verdana',sans-serif; font-size:13pt; font-weight:bold; color:#AAAAAA; text-align:left}" & vbcrlf
HTML = HTML & "P{font-family:'Verdana',sans-serif; font-size:8pt; color:#000000;}" & vbcrlf
HTML = HTML & "TH{font-family:'Verdana',sans-serif; font-size:9pt; font-weight:bold; color:#000000; border-color:#000000; border-style: solid; border-left-width:0px; border-right-width:0px; border-top-width:0px; border-bottom-width:3px;}" & vbcrlf
HTML = HTML & "TD{font-family:'Verdana',sans-serif; font-size:8pt; color:#000000; border-color:#000000; border-style: solid; border-left-width:0px; border-right-width:0px; border-top-width:0px; border-bottom-width:1px;}" & vbcrlf
HTML = HTML & "TD.highlight{font-family:'Verdana',sans-serif; font-size:8pt; background-color:#FFFF77; color:#000000; border-color:#000000; border-style: solid; border-left-width:0px; border-right-width:0px; border-top-width:0px; border-bottom-width:1px;}" & vbcrlf
HTML = HTML & "TR.dark{background-color:#EEEEEE}" & VbCrLf
HTML = HTML & "TR.aleft TH{text-align:left}" & vbcrlf
HTML = HTML & "</STYLE>" & vbcrlf
HTML = HTML & " <body>" & vbcrlf
HTML = HTML & " <H1>" & SDB.Localize("Recommended changes to capitalization:") & "</H1>" & vbcrlf
HTML = HTML & " <table border=""0"" cellspacing=""0"" cellpadding=""4"" width=""100%"">" & vbcrlf
HTML = HTML & " <tr class=""aleft"">" & vbcrlf
If ini.BoolValue("CaseModify","CbxDiscnr") Then HTML = HTML & " <th>" & SDB.Localize("Disc #") & "</th>" & vbcrlf
If ini.BoolValue("CaseModify","CbxTracknr") Then HTML = HTML & " <th>" & SDB.Localize("Track #") & "</th>" & vbcrlf
If ini.BoolValue("CaseModify","CbxArtist") Then HTML = HTML & " <th>" & SDB.Localize("Artist") & "</th>" & vbcrlf
If ini.BoolValue("CaseModify","CbxTitle") Then HTML = HTML & " <th>" & SDB.Localize("Title") & "</th>" & vbcrlf
If ini.BoolValue("CaseModify","CbxAlbum") Then HTML = HTML & " <th>" & SDB.Localize("Album") & "</th>" & vbcrlf
If ini.BoolValue("CaseModify","CbxAlbumArtist") Then HTML = HTML & " <th>" & SDB.Localize("Album Artist") & "</th>" & VbCrLf
If ini.BoolValue("CaseModify","CbxComposer") Then HTML = HTML & " <th>" & SDB.Localize("Composer") & "</th>" & VbCrLf
If ini.BoolValue("CaseModify","CbxConductor") Then HTML = HTML & " <th>" & SDB.Localize("Conductor") & "</th>" & VbCrLf
If ini.BoolValue("CaseModify","CbxLyricist") Then HTML = HTML & " <th>" & SDB.Localize("Lyricist") & "</th>" & VbCrLf
If ini.BoolValue("CaseModify","CbxFileName") Then HTML = HTML & " <th>" & SDB.Localize("Filename") & "</th>" & VbCrLf
HTML = HTML & " </tr>" & vbcrlf
Call CreateDropDownItems("LittleWords")
Call CreateDropDownItems("ForceCaseWords")
Dim i, itm, dispHTML, disp, SkipCount
Dim Discnr, Tracknr, artist, album, title, albumArtist, Composer, Conductor, Lyricist, FileName, RealFileName
SkipCount=0
InitBar 0,trackList.count-1
For i=0 to trackList.count-1
BarText "Case modify: Checking file "& i &" of "& trackList.count-1,i
disp = 0
dispHTML = " <tr" & Style() & ">" & vbcrlf
Set itm = trackList.Item(i)
If ini.BoolValue("CaseModify","CbxDiscnr") Then
Discnr = GetFixLeadZero("Discnr",itm.DiscNumberStr)
dispHTML = dispHTML & outField(Discnr, itm.DiscNumberStr)
If Discnr <> itm.DiscNumberStr Then disp = disp+1
If Discnr <> "" And Discnr <> itm.DiscNumberStr Then
holdDiscnr.add itm, Discnr
End If
End If
If ini.BoolValue("CaseModify","CbxTracknr") Then
Tracknr = GetFixLeadZero("Tracknr",itm.TrackOrderStr)
dispHTML = dispHTML & outField(Tracknr, itm.TrackOrderStr)
If Tracknr <> itm.TrackOrderStr Then disp = disp+1
If Tracknr <> "" And Tracknr <> itm.TrackOrderStr Then
holdTracknr.add itm, Tracknr
End If
End If
If ini.BoolValue("CaseModify","CbxArtist") Then
artist = GetFixCase("Artist",itm.artistName)
dispHTML = dispHTML & outField(artist, itm.artistName)
If artist <> itm.artistName Then disp = disp+1
If artist <> "" And artist <> itm.artistName Then
holdArtist.add itm, artist
End If
End If
If ini.BoolValue("CaseModify","CbxTitle") Then
title = GetFixCase("Title",itm.title)
dispHTML = dispHTML & outField(title, itm.title)
If title <> itm.title Then disp = disp+1
If title <> "" And title <> itm.title Then
holdTitle.add itm, title
End If
End If
If ini.BoolValue("CaseModify","CbxAlbum") Then
album = GetFixCase("Album",itm.albumName)
dispHTML = dispHTML & outField(album, itm.albumName)
If album <> itm.albumName Then disp = disp+1
If album <> "" And album <> itm.albumName Then
holdAlbum.add itm, album
End If
End If
If ini.BoolValue("CaseModify","CbxAlbumArtist") Then
albumArtist = GetFixCase("AlbumArtist",itm.albumArtistName)
dispHTML = dispHTML & outField(albumArtist, itm.albumArtistName)
If albumArtist <> itm.albumArtistName Then disp = disp+1
If albumArtist <> "" And albumArtist <> itm.albumArtistName Then
holdAlbumArtist.add itm, albumArtist
End If
End If
If ini.BoolValue("CaseModify","CbxComposer") Then
Composer = GetFixCase("Composer",itm.Author)
dispHTML = dispHTML & outField(Composer, itm.Author)
If Composer <> itm.Author Then disp = disp+1
If Composer <> "" And Composer <> itm.Author Then
holdComposer.add itm, Composer
End If
End If
If ini.BoolValue("CaseModify","CbxConductor") Then
Conductor = GetFixCase("Conductor",itm.Conductor)
dispHTML = dispHTML & outField(Conductor, itm.Conductor)
If Conductor <> itm.Conductor Then disp = disp+1
If Conductor <> "" And Conductor <> itm.Conductor Then
holdConductor.add itm, Conductor
End If
End If
If ini.BoolValue("CaseModify","CbxLyricist") Then
Lyricist = GetFixCase("Lyricist",itm.Lyricist)
dispHTML = dispHTML & outField(Lyricist, itm.Lyricist)
If Lyricist <> itm.Lyricist Then disp = disp+1
If Lyricist <> "" And Lyricist <> itm.Lyricist Then
holdLyricist.add itm, Lyricist
End If
End If
If ini.BoolValue ("CaseModify","CbxFileName") Then
RealFileName = Mid(itm.path,(InStrRev(itm.path,"")+1))
FileName = GetFixCase("FileName",(Mid(itm.path,InStrRev(itm.path,"")+1,InStrRev(itm.path,".")-InStrRev(itm.path,"")-1))) &_
GetFixCase("Extension",Mid(itm.path,InStrRev(itm.path,".")))
dispHTML = dispHTML & outField(FileName, RealFileName)
If FileName <> RealFileName Then disp = disp+1
If FileName <> "" And FileName <> RealFileName Then
holdFileName.add itm, FileName
End If
End If
dispHTML = dispHTML & " </tr>" & vbcrlf
If ini.BoolValue("CaseModify","CbxDispOnlyDiff") And disp=0 Then
dispHTML = ""
SkipCount=SkipCount+1
End If
HTML = HTML & dispHTML
SDB.ProcessMessages
Next
If SkipCount = trackList.count Then HTML = HTML & "<td>Nothing To Change</td>"
HTML = HTML & " </table>" & vbcrlf
HTML = HTML & " </body>" & vbcrlf
HTML = HTML & "</html>" & vbcrlf
WB.SetHTMLDocument( HTML)
SDB.Objects("holdDiscnr") = holdDiscnr
SDB.Objects("holdTracknr") = holdTracknr
SDB.Objects("holdArtist") = holdArtist
SDB.Objects("holdAlbumArtist") = holdAlbumArtist
SDB.Objects("holdAlbum") = holdAlbum
SDB.Objects("holdTitle") = holdTitle
SDB.Objects("holdComposer") = holdComposer
SDB.Objects("holdConductor") = holdConductor
SDB.Objects("holdLyricist") = holdLyricist
SDB.Objects("holdFileName") = holdFileName
Form.Common.Visible = True ' Only show the form, don't wait for user input
BtnCancel.common.enabled = True
BtnOk.common.enabled = True
killBar
End Sub
Red
I don't think the Little Words list is being used.
When the script loads for the first time the PopulateTmpWordSmall function deletes and then populates the tmpCaseWords table with the little words and then the table is deleted and populated again when the PopulateTmpWordForced function runs.
You need to remove the DELETE SQL command from the PopulateTmpWordForced function.
When the script loads for the first time the PopulateTmpWordSmall function deletes and then populates the tmpCaseWords table with the little words and then the table is deleted and populated again when the PopulateTmpWordForced function runs.
You need to remove the DELETE SQL command from the PopulateTmpWordForced function.
@dex,
Yeah, you're right. I forgot to add "WHERE TmpType=?" to the sql. It'll be fixed in the next release. Which also will get a "Restore Default Values"- function.
@RedX,
Thanks for progressbar it'll be implemented in the next release.
What do you mean with <blank> and <keep>?
Where do you want them and what should they do where and when?
Regarding the 10.000HZ. Isn't that to be expected?
Change the title to 10.000 HZ or add 10,000hz to the forced list.
Yeah, you're right. I forgot to add "WHERE TmpType=?" to the sql. It'll be fixed in the next release. Which also will get a "Restore Default Values"- function.
@RedX,
Thanks for progressbar it'll be implemented in the next release.
What do you mean with <blank> and <keep>?
Where do you want them and what should they do where and when?
Regarding the 10.000HZ. Isn't that to be expected?
Change the title to 10.000 HZ or add 10,000hz to the forced list.
Advanced Duplicate Find & Fix Find More From Same - Custom Search. | Transfer PlayStat & Copy-Paste Tags/AlbumArt between any tracks.
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
I'd expect Hz to be set. But you are right according to the rules the result is correct...Bex wrote: @RedX,
Thanks for progressbar it'll be implemented in the next release.
What do you mean with <blank> and <keep>?
Where do you want them and what should they do where and when?
Regarding the 10.000HZ. Isn't that to be expected?
Change the title to 10.000 HZ or add 10,000hz to the forced list.
I mean <blank> and <keep> to go here:
Where you can choose between ToUpper, ToLower or script.
Regerds,
Red
I see, but I don't understand why you want it?
To delete the album artist simply do it manually and to not change the filename simply deselect it in the options.
Or am I missing something?
To delete the album artist simply do it manually and to not change the filename simply deselect it in the options.
Or am I missing something?
Advanced Duplicate Find & Fix Find More From Same - Custom Search. | Transfer PlayStat & Copy-Paste Tags/AlbumArt between any tracks.
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
Script is updated
Ver 1.4 (2007-12-31) (MM3 only)
- Fixed 'Little Word' list was deleted upon upgrade
- Added safety precaution when installing/upgrading the script so now are the lists only populated if it is a first install and both lists are empty
- Added Manage Lists (Button in Option sheet)
-- Following actions can be made on 'Little List' or 'Forced Case List' independently
--- Delete List
--- Restore Defaults (deletes existing list and restore the defaults)
--- Add Defaults (merge defaults with your existing list)
- Added progressbar (Thanks to RedX)
Sorry if the last update destroyed your 'Little Word' list you had manually updated.
I hope the new functionality will help you out fixing them again.
Enjoy!
/Bex
Ver 1.4 (2007-12-31) (MM3 only)
- Fixed 'Little Word' list was deleted upon upgrade
- Added safety precaution when installing/upgrading the script so now are the lists only populated if it is a first install and both lists are empty
- Added Manage Lists (Button in Option sheet)
-- Following actions can be made on 'Little List' or 'Forced Case List' independently
--- Delete List
--- Restore Defaults (deletes existing list and restore the defaults)
--- Add Defaults (merge defaults with your existing list)
- Added progressbar (Thanks to RedX)
Sorry if the last update destroyed your 'Little Word' list you had manually updated.
I hope the new functionality will help you out fixing them again.
Enjoy!
/Bex
Advanced Duplicate Find & Fix Find More From Same - Custom Search. | Transfer PlayStat & Copy-Paste Tags/AlbumArt between any tracks.
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
Damn forgot something on the code i gave you.
This function:
and add this to line 699 (right after the processmessages)
This checks if the user has clicked terminate on the status bar
Regards,
Red
And HAPPY NEW YEAR!!
This function:
Code: Select all
Function terminate()
Dim bar : Set bar = sdb.objects(BarObject)
If bar Is Nothing Then
terminate = False
Exit Function
End If
terminate = bar.terminate
End Function
Code: Select all
If terminate Then
Exit For
End If
Regards,
Red
And HAPPY NEW YEAR!!
Could you maybe consider incorporating the PersonalTagEnhancer into your script? This would eliminate the need of having to execute both.
http://www.mediamonkey.com/forum/viewtopic.php?t=8044
Thx and happy new year,
Red
http://www.mediamonkey.com/forum/viewtopic.php?t=8044
Thx and happy new year,
Red
Thanks, the terminate code will make it into the next release.
To merge this script with PersonalTagEnhancer (and possibly others) has crossed my mind. I'll check with Steegy how we can do it!
To merge this script with PersonalTagEnhancer (and possibly others) has crossed my mind. I'll check with Steegy how we can do it!
Advanced Duplicate Find & Fix Find More From Same - Custom Search. | Transfer PlayStat & Copy-Paste Tags/AlbumArt between any tracks.
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
Bugfix release
Ver 1.4.1 (2008-01-01) (MM3 only)
- Fixed a sql thread bug in 'Fix all Track#'s in one go'
- Added progressbar to 'Fix all Track#'s in one go'
- Added script is stopped if progressbar is terminated
Enjoy!
/Bex
Ver 1.4.1 (2008-01-01) (MM3 only)
- Fixed a sql thread bug in 'Fix all Track#'s in one go'
- Added progressbar to 'Fix all Track#'s in one go'
- Added script is stopped if progressbar is terminated
Enjoy!
/Bex
Advanced Duplicate Find & Fix Find More From Same - Custom Search. | Transfer PlayStat & Copy-Paste Tags/AlbumArt between any tracks.
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
-
- Posts: 2
- Joined: Thu Jan 03, 2008 4:34 pm
- Location: USA
You find it in: Tools->Options->Library->Case & Leading Zero Fixer
Advanced Duplicate Find & Fix Find More From Same - Custom Search. | Transfer PlayStat & Copy-Paste Tags/AlbumArt between any tracks.
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts
Tagging Inconsistencies Do you think you have your tags in order? Think again...
Play History & Stats Node Like having your Last-FM account stored locally, but more advanced.
Case & Leading Zero Fixer Works on filenames too!
All My Scripts