MobileSheets Forums

Full Version: Creating classical library sorted by composer
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I have a collection of roughly 2000 pieces by60 composers as public domain PDF.

My paper library is sorted by composers first and covers 90% of my search, retrieve and use.

The PDF collection is sorted like:


I have not found a way of batch import all my scores in a way that the list is sorted by composers only in order to let me access the relevant sub-genre and then piece in the way it's sorted in the file system.

I looked through the forum, but I couldn't find something that provided a solution.

If you can batch import all of the tunes for each of the composers separately, you can specify a composer name to add them to. Then selecting the composer tab will list all the composers alphabetically. Selecting one of those will show all the music assigned to that composer.

You can also set MSPro to start with the Composer tab selected rather than the Songs tab. So you will start by seeing the list of composers.

Maybe not quite what you want, but may give you a workflow that provides what you need.


Unfortunately this does not work as expected.

I selected the folder with composer 'Albeniz' and wrote the name into the composer field in Batch Import.

All it did is list 10 songs (There are no songs in piano music, BTW, we call them 'pieces'', one of them being 'Composer'.

When I bought the software, the batch import with composers used to work. Now it doesn't and I am not happy.

It's frustrating to see that classical pianists are not anywhere close to the target group for the software, because I am sure that most of my colleagues would want to have handled their library the same ways.

And there is no Composer tab anyway, just Recent, Songs, Setlists, Collections, Artists, Albums and Genres.

None of those terms are used by classical musicians on a regular basis, which is really kind of frustrating.
You can change which tabs appear in settings. Go to Settings->Library and find Tab Order. there you can select which tabs appear and in what order.

If the batch import doesn't work, then I'm sure Mike will fix it. Give a detailed description of what you are doing, what you expect to happen and what does happen and Mike will either fix it or explain what you are doing wrong.

I haven't used the batch import stuff myself, so can't give much help, sorry.

If you check "Populate Metadata from Directories", set it to "%COMPOSERS%", then select /sdcard/Scores as the batch import folder, it should assign the composer correctly to every song that is created. As mentioned by Andy, if you go to Settings->Library Settings->Tab Order, you can enable the composers tab. Then you can view your songs categorized by composer. If you are entering values in the composer field during the import, that field should absolutely be populated. If it's not, that would definitely be a bug and I can look into it immediately. At the moment, you can rename the "Custom Group" to fit your needs, and you can change the tabs that are shown. Beyond that, I know there are some users that desire other options for controlling the names of things in the app, but it's not a simple thing when translations are done for 12+ languages. I'm always open to adding new options or features if they are going to be of huge benefit to a specific group of users so long as it doesn't negatively impact other users or require enormous of efforts for little gain.  If the default list of tabs is not useful to you, what list of tabs would you like to be the default for a classical pianist? One thing I was thinking of today is that it might be nice if a tab is long pressed for an option to come up that allows the tabs to be selected and ordered. That would probably be more intuitive to users, as most people don't seem to think to look in the settings for that.

First of all, thanks for taking the time to think this through and find a solution.

While I have got a step further, the result is still not what I wanted.

The directory structure is as follows:


and in this case, the result is as expected as desired, i.e. in the composer list Rachmaninoff turns up and tapping on it shows the list of pieces by Rachmaninoff. Perfect.



creates a new composer named "2-Pianos", so subdirectories with different categories are created as composers and I have no idea how to proceed.

The expected result would be to see both files directly under the composer as well as further subdirectories.

Any ideas?

Currently I have a list of 182 composers, including celebrities like Ballades, Nocturnes and 21 Hungarian Dances. :-)

Yes, your idea to arrange the tabs is really good and the current method is counterintuitive, at least in my work flow.

Let's talk about how you set up the batch import. If you selected "piano_music" as the folder to batch import, and then checked the option to "Scan all subdirectories for files", it shouldn't have used 2-Pianos as the composer name. It should have used Rachmaninoff (so long as your metadata format string was just %COMPOSERS%). However if you just selected "Rachmaninoff" as the folder to import, then it would use 2-Pianos as the composer name. If you selected piano_music as the folder, but it still used 2-pianos as the composers name, let me know, as that would be a bug and I will investigate it immediately. 

I am afraid it's a bug.

I started with a clean installation of MSPro i.e. deleted data and cache.

Accepted storage permissions, went to Settings --> Library Settings, Tab order, added composer and removed all the rest. Accpted that MSPro handles storage.

Hit Batch Import, remove all entries from metadata, added composers. Checked populate Metadata from directories, selected top level directory for import, i.e. the directory above the composers, in this case called "ultimate sheet piano music".

It imports stuff, says that a number of songs have been updated (?) and that 2087 files have been imported successfully.

The result is just that: 178 composers, including Bartok, Bagatelles, Barcarolles etc.

So the import definitely does not distinguish directory hierarchiy levels but takes every subdirectory as a composer.
I had time to dig into this, and it turns out it's not a bug. What is going on is that the metadata format string is applied to the folders at the end of each file path. The reason it's set up this way is for scenarios such as this:

1) A format string is specified such as %GENRE%/%ARTIST%/%KEY%
2) The user has one folder containing all of the subdirectories. The first set of folders is letter. Under each letter is the genre, then artist, then key, then the PDFs for each song.
3) In order to populate the fields correctly, the end of the path is processed and MobileSheetsPro works backward. So it looks at the last folder and uses that for key, then the one before is used for artist, then the one before is used for genre. This allows for parent folders to be ignored when processing the subdirectories.

I can't remember all of the history, but I know some users required it to work this way. Unfortunately this doesn't work well with what you need. So I'm going to have to add a new setting to control this. I'm thinking the setting will say something align the lines of, "Apply format string to folders at end of path", and it will be enabled by default (as that is the current behavior). In your case, you would uncheck this, and MobileSheets would only use the format string starting with the directories under the starting folder. I'll add this for the next update.

Hopefully that all made sense...

Wow, this is just great! Yes, it's a great explanation and I can see where it came from.

I'll patiently wait for an update and please let me thank you again for taking the time to dig into this and find a solution.

Great support, Mike!