id3_tags 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
data/doc/index.html DELETED
@@ -1,102 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII" />
6
- <title>
7
- File: README
8
-
9
- &mdash; Documentation by YARD 0.8.6.1
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
14
-
15
- <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
16
-
17
- <script type="text/javascript" charset="utf-8">
18
- hasFrames = window.top.frames.main ? true : false;
19
- relpath = '';
20
- framesUrl = "frames.html#!" + escape(window.location.href);
21
- </script>
22
-
23
-
24
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
25
-
26
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
27
-
28
-
29
- </head>
30
- <body>
31
- <div id="header">
32
- <div id="menu">
33
-
34
- <a href="_index.html">Index</a> &raquo;
35
- <span class="title">File: README</span>
36
-
37
-
38
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
39
- </div>
40
-
41
- <div id="search">
42
-
43
- <a class="full_list_link" id="class_list_link"
44
- href="class_list.html">
45
- Class List
46
- </a>
47
-
48
- <a class="full_list_link" id="method_list_link"
49
- href="method_list.html">
50
- Method List
51
- </a>
52
-
53
- <a class="full_list_link" id="file_list_link"
54
- href="file_list.html">
55
- File List
56
- </a>
57
-
58
- </div>
59
- <div class="clear"></div>
60
- </div>
61
-
62
- <iframe id="search_frame"></iframe>
63
-
64
- <div id="content"><div id='filecontents'><h1>What is ID3 Tags</h1>
65
-
66
- <p>A ruby gem to read and write ID3 metadata from/to MP3 files}</p>
67
-
68
- <h1>Why ID3 Tags was born</h1>
69
-
70
- <p>At <a href="http://topspinmedia.com">Topspin</a> we provide <a href="http://artistlink.com">ArtistLink</a>, a platform for musician to upload and share their songs.
71
- Artistlink provides a form to read and edit the songs&#39; metadata and stores this information in the ID3 tags of a song.
72
- For this task, we created the ID3 Tags gem</p>
73
-
74
- <h1>How to install</h1>
75
-
76
- <p>Run <code>gem install id3_tags</code>.
77
- Alternatively, you can include <code>id3_tags</code> in the Gemfile of your bundled project.</p>
78
-
79
- <h1>How to use</h1>
80
-
81
- <ul>
82
- <li>To read metadata from a file, run <code>Id3Tags.read_from_file(file_path)</code></li>
83
- <li>To write metadata to a file, run <code>Id3Tags.write_to_file(file_path, metadata)</code></li>
84
- </ul>
85
-
86
- <p>For more details about the format of the metadata, check the <a href="http://github.com/topspin/id3_tags/specs/lib">specs</a> or the <a href="http://rubydoc.info/github/topspin/id3_tags/frames">documentation at RubyDoc.info</a>.</p>
87
-
88
- <h1>How to contribute</h1>
89
-
90
- <p>Make sure tests pass, then either submit a Pull Request.
91
- A list of <a href="http://github.com/topspin/id3_tags/TODO.md">nice TODOs</a> is provided.
92
- You can also build a new version of the gem and move it to your gem repository.</p>
93
- </div></div>
94
-
95
- <div id="footer">
96
- Generated on Fri Jun 14 11:03:18 2013 by
97
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
98
- 0.8.6.1 (ruby-1.9.2).
99
- </div>
100
-
101
- </body>
102
- </html>
data/doc/js/app.js DELETED
@@ -1,214 +0,0 @@
1
- function createSourceLinks() {
2
- $('.method_details_list .source_code').
3
- before("<span class='showSource'>[<a href='#' class='toggleSource'>View source</a>]</span>");
4
- $('.toggleSource').toggle(function() {
5
- $(this).parent().nextAll('.source_code').slideDown(100);
6
- $(this).text("Hide source");
7
- },
8
- function() {
9
- $(this).parent().nextAll('.source_code').slideUp(100);
10
- $(this).text("View source");
11
- });
12
- }
13
-
14
- function createDefineLinks() {
15
- var tHeight = 0;
16
- $('.defines').after(" <a href='#' class='toggleDefines'>more...</a>");
17
- $('.toggleDefines').toggle(function() {
18
- tHeight = $(this).parent().prev().height();
19
- $(this).prev().show();
20
- $(this).parent().prev().height($(this).parent().height());
21
- $(this).text("(less)");
22
- },
23
- function() {
24
- $(this).prev().hide();
25
- $(this).parent().prev().height(tHeight);
26
- $(this).text("more...");
27
- });
28
- }
29
-
30
- function createFullTreeLinks() {
31
- var tHeight = 0;
32
- $('.inheritanceTree').toggle(function() {
33
- tHeight = $(this).parent().prev().height();
34
- $(this).parent().toggleClass('showAll');
35
- $(this).text("(hide)");
36
- $(this).parent().prev().height($(this).parent().height());
37
- },
38
- function() {
39
- $(this).parent().toggleClass('showAll');
40
- $(this).parent().prev().height(tHeight);
41
- $(this).text("show all");
42
- });
43
- }
44
-
45
- function fixBoxInfoHeights() {
46
- $('dl.box dd.r1, dl.box dd.r2').each(function() {
47
- $(this).prev().height($(this).height());
48
- });
49
- }
50
-
51
- function searchFrameLinks() {
52
- $('.full_list_link').click(function() {
53
- toggleSearchFrame(this, $(this).attr('href'));
54
- return false;
55
- });
56
- }
57
-
58
- function toggleSearchFrame(id, link) {
59
- var frame = $('#search_frame');
60
- $('#search a').removeClass('active').addClass('inactive');
61
- if (frame.attr('src') == link && frame.css('display') != "none") {
62
- frame.slideUp(100);
63
- $('#search a').removeClass('active inactive');
64
- }
65
- else {
66
- $(id).addClass('active').removeClass('inactive');
67
- frame.attr('src', link).slideDown(100);
68
- }
69
- }
70
-
71
- function linkSummaries() {
72
- $('.summary_signature').click(function() {
73
- document.location = $(this).find('a').attr('href');
74
- });
75
- }
76
-
77
- function framesInit() {
78
- if (hasFrames) {
79
- document.body.className = 'frames';
80
- $('#menu .noframes a').attr('href', document.location);
81
- window.top.document.title = $('html head title').text();
82
- }
83
- else {
84
- $('#menu .noframes a').text('frames').attr('href', framesUrl);
85
- }
86
- }
87
-
88
- function keyboardShortcuts() {
89
- if (window.top.frames.main) return;
90
- $(document).keypress(function(evt) {
91
- if (evt.altKey || evt.ctrlKey || evt.metaKey || evt.shiftKey) return;
92
- if (typeof evt.target !== "undefined" &&
93
- (evt.target.nodeName == "INPUT" ||
94
- evt.target.nodeName == "TEXTAREA")) return;
95
- switch (evt.charCode) {
96
- case 67: case 99: $('#class_list_link').click(); break; // 'c'
97
- case 77: case 109: $('#method_list_link').click(); break; // 'm'
98
- case 70: case 102: $('#file_list_link').click(); break; // 'f'
99
- default: break;
100
- }
101
- });
102
- }
103
-
104
- function summaryToggle() {
105
- $('.summary_toggle').click(function() {
106
- if (localStorage) {
107
- localStorage.summaryCollapsed = $(this).text();
108
- }
109
- $('.summary_toggle').each(function() {
110
- $(this).text($(this).text() == "collapse" ? "expand" : "collapse");
111
- var next = $(this).parent().parent().nextAll('ul.summary').first();
112
- if (next.hasClass('compact')) {
113
- next.toggle();
114
- next.nextAll('ul.summary').first().toggle();
115
- }
116
- else if (next.hasClass('summary')) {
117
- var list = $('<ul class="summary compact" />');
118
- list.html(next.html());
119
- list.find('.summary_desc, .note').remove();
120
- list.find('a').each(function() {
121
- $(this).html($(this).find('strong').html());
122
- $(this).parent().html($(this)[0].outerHTML);
123
- });
124
- next.before(list);
125
- next.toggle();
126
- }
127
- });
128
- return false;
129
- });
130
- if (localStorage) {
131
- if (localStorage.summaryCollapsed == "collapse") {
132
- $('.summary_toggle').first().click();
133
- }
134
- else localStorage.summaryCollapsed = "expand";
135
- }
136
- }
137
-
138
- function fixOutsideWorldLinks() {
139
- $('a').each(function() {
140
- if (window.location.host != this.host) this.target = '_parent';
141
- });
142
- }
143
-
144
- function generateTOC() {
145
- if ($('#filecontents').length === 0) return;
146
- var _toc = $('<ol class="top"></ol>');
147
- var show = false;
148
- var toc = _toc;
149
- var counter = 0;
150
- var tags = ['h2', 'h3', 'h4', 'h5', 'h6'];
151
- var i;
152
- if ($('#filecontents h1').length > 1) tags.unshift('h1');
153
- for (i = 0; i < tags.length; i++) { tags[i] = '#filecontents ' + tags[i]; }
154
- var lastTag = parseInt(tags[0][1], 10);
155
- $(tags.join(', ')).each(function() {
156
- if ($(this).parents('.method_details .docstring').length != 0) return;
157
- if (this.id == "filecontents") return;
158
- show = true;
159
- var thisTag = parseInt(this.tagName[1], 10);
160
- if (this.id.length === 0) {
161
- var proposedId = $(this).attr('toc-id');
162
- if (typeof(proposedId) != "undefined") this.id = proposedId;
163
- else {
164
- var proposedId = $(this).text().replace(/[^a-z0-9-]/ig, '_');
165
- if ($('#' + proposedId).length > 0) { proposedId += counter; counter++; }
166
- this.id = proposedId;
167
- }
168
- }
169
- if (thisTag > lastTag) {
170
- for (i = 0; i < thisTag - lastTag; i++) {
171
- var tmp = $('<ol/>'); toc.append(tmp); toc = tmp;
172
- }
173
- }
174
- if (thisTag < lastTag) {
175
- for (i = 0; i < lastTag - thisTag; i++) toc = toc.parent();
176
- }
177
- var title = $(this).attr('toc-title');
178
- if (typeof(title) == "undefined") title = $(this).text();
179
- toc.append('<li><a href="#' + this.id + '">' + title + '</a></li>');
180
- lastTag = thisTag;
181
- });
182
- if (!show) return;
183
- html = '<div id="toc"><p class="title"><a class="hide_toc" href="#"><strong>Table of Contents</strong></a> <small>(<a href="#" class="float_toc">left</a>)</small></p></div>';
184
- $('#content').prepend(html);
185
- $('#toc').append(_toc);
186
- $('#toc .hide_toc').toggle(function() {
187
- $('#toc .top').slideUp('fast');
188
- $('#toc').toggleClass('hidden');
189
- $('#toc .title small').toggle();
190
- }, function() {
191
- $('#toc .top').slideDown('fast');
192
- $('#toc').toggleClass('hidden');
193
- $('#toc .title small').toggle();
194
- });
195
- $('#toc .float_toc').toggle(function() {
196
- $(this).text('float');
197
- $('#toc').toggleClass('nofloat');
198
- }, function() {
199
- $(this).text('left');
200
- $('#toc').toggleClass('nofloat');
201
- });
202
- }
203
-
204
- $(framesInit);
205
- $(createSourceLinks);
206
- $(createDefineLinks);
207
- $(createFullTreeLinks);
208
- $(fixBoxInfoHeights);
209
- $(searchFrameLinks);
210
- $(linkSummaries);
211
- $(keyboardShortcuts);
212
- $(summaryToggle);
213
- $(fixOutsideWorldLinks);
214
- $(generateTOC);
data/doc/js/full_list.js DELETED
@@ -1,178 +0,0 @@
1
- var inSearch = null;
2
- var searchIndex = 0;
3
- var searchCache = [];
4
- var searchString = '';
5
- var regexSearchString = '';
6
- var caseSensitiveMatch = false;
7
- var ignoreKeyCodeMin = 8;
8
- var ignoreKeyCodeMax = 46;
9
- var commandKey = 91;
10
-
11
- RegExp.escape = function(text) {
12
- return text.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, "\\$&");
13
- }
14
-
15
- function fullListSearch() {
16
- // generate cache
17
- searchCache = [];
18
- $('#full_list li').each(function() {
19
- var link = $(this).find('.object_link a');
20
- if (link.length === 0) return;
21
- var fullName = link.attr('title').split(' ')[0];
22
- searchCache.push({name:link.text(), fullName:fullName, node:$(this), link:link});
23
- });
24
-
25
- $('#search input').keyup(function(event) {
26
- if ((event.keyCode > ignoreKeyCodeMin && event.keyCode < ignoreKeyCodeMax)
27
- || event.keyCode == commandKey)
28
- return;
29
- searchString = this.value;
30
- caseSensitiveMatch = searchString.match(/[A-Z]/) != null;
31
- regexSearchString = RegExp.escape(searchString);
32
- if (caseSensitiveMatch) {
33
- regexSearchString += "|" +
34
- $.map(searchString.split(''), function(e) { return RegExp.escape(e); }).
35
- join('.+?');
36
- }
37
- if (searchString === "") {
38
- clearTimeout(inSearch);
39
- inSearch = null;
40
- $('ul .search_uncollapsed').removeClass('search_uncollapsed');
41
- $('#full_list, #content').removeClass('insearch');
42
- $('#full_list li').removeClass('found').each(function() {
43
-
44
- var link = $(this).find('.object_link a');
45
- if (link.length > 0) link.text(link.text());
46
- });
47
- if (clicked) {
48
- clicked.parents('ul').each(function() {
49
- $(this).removeClass('collapsed').prev().removeClass('collapsed');
50
- });
51
- }
52
- highlight();
53
- }
54
- else {
55
- if (inSearch) clearTimeout(inSearch);
56
- searchIndex = 0;
57
- lastRowClass = '';
58
- $('#full_list, #content').addClass('insearch');
59
- $('#noresults').text('');
60
- searchItem();
61
- }
62
- });
63
-
64
- $('#search input').focus();
65
- $('#full_list').after("<div id='noresults'></div>");
66
- }
67
-
68
- var lastRowClass = '';
69
- function searchItem() {
70
- for (var i = 0; i < searchCache.length / 50; i++) {
71
- var item = searchCache[searchIndex];
72
- var searchName = (searchString.indexOf('::') != -1 ? item.fullName : item.name);
73
- var matchString = regexSearchString;
74
- var matchRegexp = new RegExp(matchString, caseSensitiveMatch ? "" : "i");
75
- if (searchName.match(matchRegexp) == null) {
76
- item.node.removeClass('found');
77
- }
78
- else {
79
- item.node.css('padding-left', '10px').addClass('found');
80
- item.node.parents().addClass('search_uncollapsed');
81
- item.node.removeClass(lastRowClass).addClass(lastRowClass == 'r1' ? 'r2' : 'r1');
82
- lastRowClass = item.node.hasClass('r1') ? 'r1' : 'r2';
83
- item.link.html(item.name.replace(matchRegexp, "<strong>$&</strong>"));
84
- }
85
-
86
- if (searchCache.length === searchIndex + 1) {
87
- searchDone();
88
- return;
89
- }
90
- else {
91
- searchIndex++;
92
- }
93
- }
94
- inSearch = setTimeout('searchItem()', 0);
95
- }
96
-
97
- function searchDone() {
98
- highlight(true);
99
- if ($('#full_list li:visible').size() === 0) {
100
- $('#noresults').text('No results were found.').hide().fadeIn();
101
- }
102
- else {
103
- $('#noresults').text('');
104
- }
105
- $('#content').removeClass('insearch');
106
- clearTimeout(inSearch);
107
- inSearch = null;
108
- }
109
-
110
- clicked = null;
111
- function linkList() {
112
- $('#full_list li, #full_list li a:last').click(function(evt) {
113
- if ($(this).hasClass('toggle')) return true;
114
- if ($(this).find('.object_link a').length === 0) {
115
- $(this).children('a.toggle').click();
116
- return false;
117
- }
118
- if (this.tagName.toLowerCase() == "li") {
119
- var toggle = $(this).children('a.toggle');
120
- if (toggle.size() > 0 && evt.pageX < toggle.offset().left) {
121
- toggle.click();
122
- return false;
123
- }
124
- }
125
- if (clicked) clicked.removeClass('clicked');
126
- var win = window.top.frames.main ? window.top.frames.main : window.parent;
127
- if (this.tagName.toLowerCase() == "a") {
128
- clicked = $(this).parent('li').addClass('clicked');
129
- win.location = this.href;
130
- }
131
- else {
132
- clicked = $(this).addClass('clicked');
133
- win.location = $(this).find('a:last').attr('href');
134
- }
135
- return false;
136
- });
137
- }
138
-
139
- function collapse() {
140
- if (!$('#full_list').hasClass('class')) return;
141
- $('#full_list.class a.toggle').click(function() {
142
- $(this).parent().toggleClass('collapsed').next().toggleClass('collapsed');
143
- highlight();
144
- return false;
145
- });
146
- $('#full_list.class ul').each(function() {
147
- $(this).addClass('collapsed').prev().addClass('collapsed');
148
- });
149
- $('#full_list.class').children().removeClass('collapsed');
150
- highlight();
151
- }
152
-
153
- function highlight(no_padding) {
154
- var n = 1;
155
- $('#full_list li:visible').each(function() {
156
- var next = n == 1 ? 2 : 1;
157
- $(this).removeClass("r" + next).addClass("r" + n);
158
- if (!no_padding && $('#full_list').hasClass('class')) {
159
- $(this).css('padding-left', (10 + $(this).parents('ul').size() * 15) + 'px');
160
- }
161
- n = next;
162
- });
163
- }
164
-
165
- function escapeShortcut() {
166
- $(document).keydown(function(evt) {
167
- if (evt.which == 27) {
168
- $('#search_frame', window.top.document).slideUp(100);
169
- $('#search a', window.top.document).removeClass('active inactive');
170
- $(window.top).focus();
171
- }
172
- });
173
- }
174
-
175
- $(escapeShortcut);
176
- $(fullListSearch);
177
- $(linkList);
178
- $(collapse);