QUOTE (Aero @ Apr 14 2004, 08:18 PM)
When I got to the 4kB limit portion of the Notes documentation, it really took the wind out of my sails. Without the limitation, it would be easy to completely customize the iPod GUI and do whatever you wanted with it. With the 4kB, that pretty much rules out most really useful GUI replacement features. Who would want to browse a directory structure, and have to press Select to go to the next page? Once you add in the pseudo-HTML overhead, I doubt that you could get more than 30-40 directories in a single Notes file.
If you just want a folder type structure, then you don't necessarily have to do it entirely in that fakish HTML method. That's what the ".link" and ".linx" file type is all about. It'll support an actual folder structure that way.
If you put actual folders inside the notes folder, they show up with the arrow on the right side, like a subfolder. Then you can have subdirectories of things.
If you have a file ending in .link, then it goes directly to the first link inside that file. Consider it to be like a symbolic link on a unix-like system.
If you have a file ending in .linx, then it *appears* to be a folder, with the right arrow and everything, and that folder contains the links in the linx file itself.
So if you want to do a folder hierarchy, you can use a combination of these. The limitation here is that you have a maximum of 1000 entries on any folder or linx file.
Look, try it yourself. It's easy to work out. Just create your files in the Notes folder on the iPod. You can create any entire interface you like and never create one actual .txt file, sort of thing. Just link files and folders or linx files. The only disadvantage of this method is that it's displayed in the big font (just like all the other iPod screens) and not in the smaller font that it uses for displaying text files.
Example:
The Notes folder contains the folders Adam and April.
Adam contains Bob.link and Bill.linx.
Bob.link just contains:
<title>Play the Bob Playlist</title>
<a href="ipod:music?playlist=Bob">foo</a>
Bill.linx contains:
<title>Songs by Bill</title>
<a href="ipod:music?song=Bill's First Song">Bill's First Song</a>
<a href="ipod:music?song=Bill's Second Song>Bill's Second Song</a>
April contains a bunch of .link files, each pointing to one song, similar to Bob.link above, except pointing to a song and not a playlist.
When you look at this on the iPod, you can easily see the differences. The First screen has two choices: Adam and April. Both are folders.
Enter April and you see all the Songs by April. Select any of them, and hear that song. The thing is that you can have up to 1000 link files in there in this manner, and thus have up to 1000 entries under that folder.
Enter Adam, and you see "Play the Bob Playlist" and "Songs By Bill". "Songs by Bill" looks like a folder, "Play the Bob Playlist" does not. Select "Songs by Bill" and get a list of songs by Bill. Unfortunately, this is limited to the 4k limit, as it's a single linx file. But this would be fine for, say, a single album. It'd be preferable, in fact, because it loads a bit quicker than a folder with a lot of files in it. It'll also cache for quicker access on the second try. The "Play the Bob Playlist" just starts up a playlist.
Note that all of these, when they start playing songs, go to the Now Playing screen. Hitting the menu button goes back into the notes where you just came from, while it continues to play. It's just like the Browse interface in that manner. But you do have some control. Don't want a particular link to go to the Now Playing Screen? Add <meta name="Now Playing" content="false"> to any link file and voila, it won't go there anymore.
You really can create a nice interface. You do have to work around the limitations somewhat, but the 4k limit is not as limited as you might think, because you can get around it.
Additional:
Want to replicate an existing folder structure to the Notes exactly? Do this:
-Create the exact same folder structure on the iPod, in the Notes folder.
-For every song (MP3, AAC, WAV, AIFF), create a .link file with the following in it:
<title>%songname%</title>
<a href="ipod:music?song=%songname%">%songname%</a>
Want to speed that up a bit? Drop back a folder from the actual songs and create a .linx file instead, where it'll fit into a 4k structure.