After spending years working on my music collection and constantly seeing spelling errors in song titles, I decided to try and find a spell check for MM. Alas, I was shocked to find a few inquiries, but never a solution. So, I went about creating my own. Now, there are a few caveats:
1) I wrote this up in about an hour
2) You must have Microsoft Word installed.
3) It only does song titles that are selected. I've used it to do over 900 songs in a single batch. Worked great!
4) It only does song titles. It could be expanded to do Artist and Album.
5) I couldn't find an easy way to make the Word spell checker on top, so if you see Word open but can't see the spell checker, alt->tab until you see it. Apparently, there is a way using Window Handles. I'm not that good of a developer with vbscript. Someone care to help?
6) Until you see the message Spell Check is complete, it's still running.....
7) It is invoked by using Ctrl+Alt+C. Change the Scripts.Ini if you want to use something else. Don't use Ctrl+Shift+C, that's the hotkey for MM Converter
Save the following Script in the Script folder of MM:
Code: Select all
' A simple script that checks the spelling of a Song Title Sub SpellCheck ' Define variables Dim list, lstItm Dim objWord, objDoc Set objWord = CreateObject("Word.Application") objWord.Visible = True ' Get list of selected tracks from MediaMonkey Set list = SDB.CurrentSongList ' Process all selected tracks For i=0 To list.count-1 Set lstItem = list.Item(i) Set objDoc = objWord.Documents.Add objDoc.Activate objDoc.Content.Text = lstItem.Title objDoc.CheckSpelling 'remove the last character. Word graciously adds an extra character to the end. lstItem.Title = Left(objdoc.Content.Text, Len(objDoc.Content.Text) - 1) objDoc.Saved = False objDoc.Close (0) Set objDoc = nothing Next ' Write all back to DB and update tags list.UpdateAll objWord.Quit Set objWord = Nothing MsgBox "Spell Check is complete." End Sub
Code: Select all
[SpellCheck] FileName=SpellCheck.vbs ProcName=SpellCheck Order=31 DisplayName=Spell Check Title Description=Spell Check Title Language=VBScript ScriptType=0 Shortcut=Ctrl+Alt+C