midilib 2.0.4 → 3.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (105) hide show
  1. checksums.yaml +7 -0
  2. data/ChangeLog +2 -1
  3. data/Credits +44 -2
  4. data/README.rdoc +13 -9
  5. data/Rakefile +36 -53
  6. data/TODO.rdoc +13 -2
  7. data/examples/from_scratch.rb +4 -6
  8. data/examples/measures_mbt.rb +11 -11
  9. data/examples/print_program_changes.rb +11 -11
  10. data/examples/reader2text.rb +191 -191
  11. data/examples/seq2text.rb +18 -18
  12. data/examples/split.rb +21 -20
  13. data/examples/strings.rb +15 -15
  14. data/examples/transpose.rb +41 -42
  15. data/html/MIDI/ActiveSense.html +89 -213
  16. data/html/MIDI/ChannelEvent.html +95 -224
  17. data/html/MIDI/ChannelPressure.html +103 -241
  18. data/html/MIDI/Clock.html +89 -213
  19. data/html/MIDI/Continue.html +89 -213
  20. data/html/MIDI/Controller.html +105 -246
  21. data/html/MIDI/Event.html +134 -358
  22. data/html/MIDI/IO/MIDIFile.html +544 -1148
  23. data/html/MIDI/IO/SeqReader.html +273 -577
  24. data/html/MIDI/IO/SeqWriter.html +233 -439
  25. data/html/MIDI/IO.html +48 -164
  26. data/html/MIDI/KeySig.html +148 -291
  27. data/html/MIDI/Marker.html +73 -192
  28. data/html/MIDI/Measure.html +104 -267
  29. data/html/MIDI/Measures.html +106 -259
  30. data/html/MIDI/MetaEvent.html +171 -352
  31. data/html/MIDI/NoteEvent.html +114 -276
  32. data/html/MIDI/NoteOff.html +95 -223
  33. data/html/MIDI/NoteOn.html +95 -223
  34. data/html/MIDI/PitchBend.html +104 -242
  35. data/html/MIDI/PolyPressure.html +102 -246
  36. data/html/MIDI/ProgramChange.html +103 -241
  37. data/html/MIDI/Realtime.html +96 -230
  38. data/html/MIDI/Sequence.html +256 -576
  39. data/html/MIDI/SongPointer.html +104 -242
  40. data/html/MIDI/SongSelect.html +103 -241
  41. data/html/MIDI/Start.html +89 -213
  42. data/html/MIDI/Stop.html +89 -213
  43. data/html/MIDI/SystemCommon.html +73 -192
  44. data/html/MIDI/SystemExclusive.html +106 -244
  45. data/html/MIDI/SystemReset.html +89 -213
  46. data/html/MIDI/Tempo.html +127 -309
  47. data/html/MIDI/TimeSig.html +119 -300
  48. data/html/MIDI/Track.html +214 -494
  49. data/html/MIDI/TuneRequest.html +96 -230
  50. data/html/MIDI/Utils.html +91 -233
  51. data/html/MIDI.html +142 -526
  52. data/html/Object.html +197 -0
  53. data/html/README_rdoc.html +280 -486
  54. data/html/TODO_rdoc.html +68 -145
  55. data/html/created.rid +15 -14
  56. data/html/css/fonts.css +167 -0
  57. data/html/css/rdoc.css +639 -0
  58. data/html/fonts/Lato-Light.ttf +0 -0
  59. data/html/fonts/Lato-LightItalic.ttf +0 -0
  60. data/html/fonts/Lato-Regular.ttf +0 -0
  61. data/html/fonts/Lato-RegularItalic.ttf +0 -0
  62. data/html/fonts/SourceCodePro-Bold.ttf +0 -0
  63. data/html/fonts/SourceCodePro-Regular.ttf +0 -0
  64. data/html/images/add.png +0 -0
  65. data/html/images/arrow_up.png +0 -0
  66. data/html/images/delete.png +0 -0
  67. data/html/images/tag_blue.png +0 -0
  68. data/html/index.html +230 -446
  69. data/html/js/darkfish.js +22 -91
  70. data/html/js/navigation.js +4 -41
  71. data/html/js/navigation.js.gz +0 -0
  72. data/html/js/search.js +41 -25
  73. data/html/js/search_index.js +1 -1
  74. data/html/js/search_index.js.gz +0 -0
  75. data/html/js/searcher.js +9 -8
  76. data/html/js/searcher.js.gz +0 -0
  77. data/html/table_of_contents.html +1111 -505
  78. data/install.rb +53 -34
  79. data/lib/midilib/consts.rb +406 -408
  80. data/lib/midilib/event.rb +335 -306
  81. data/lib/midilib/info.rb +5 -7
  82. data/lib/midilib/io/midifile.rb +424 -452
  83. data/lib/midilib/io/seqreader.rb +200 -192
  84. data/lib/midilib/io/seqwriter.rb +151 -147
  85. data/lib/midilib/measure.rb +78 -80
  86. data/lib/midilib/mergesort.rb +39 -0
  87. data/lib/midilib/sequence.rb +93 -87
  88. data/lib/midilib/track.rb +71 -118
  89. data/lib/midilib/utils.rb +17 -20
  90. data/lib/midilib.rb +5 -5
  91. data/test/event_equality.rb +50 -52
  92. data/test/test_event.rb +120 -124
  93. data/test/test_io.rb +118 -38
  94. data/test/test_mergesort.rb +37 -0
  95. data/test/test_midifile.rb +6 -19
  96. data/test/test_sequence.rb +62 -61
  97. data/test/test_track.rb +126 -155
  98. data/test/test_varlen.rb +23 -27
  99. metadata +67 -62
  100. data/html/IO.html +0 -259
  101. data/html/MIDI/MIDI/MIDI/Array.html +0 -353
  102. data/html/MIDI/MIDI/MIDI.html +0 -204
  103. data/html/MIDI/MIDI.html +0 -204
  104. data/html/js/jquery.js +0 -18
  105. data/html/rdoc.css +0 -543
data/html/TODO_rdoc.html CHANGED
@@ -2,199 +2,122 @@
2
2
 
3
3
  <html>
4
4
  <head>
5
- <meta content="text/html; charset=US-ASCII" http-equiv="Content-Type">
5
+ <meta charset="UTF-8">
6
6
 
7
7
  <title>TODO - midilib</title>
8
8
 
9
- <link type="text/css" media="screen" href="./rdoc.css" rel="stylesheet">
10
-
11
9
  <script type="text/javascript">
12
10
  var rdoc_rel_prefix = "./";
11
+ var index_rel_prefix = "./";
13
12
  </script>
14
13
 
15
- <script type="text/javascript" charset="utf-8" src="./js/jquery.js"></script>
16
- <script type="text/javascript" charset="utf-8" src="./js/navigation.js"></script>
17
- <script type="text/javascript" charset="utf-8" src="./js/search_index.js"></script>
18
- <script type="text/javascript" charset="utf-8" src="./js/search.js"></script>
19
- <script type="text/javascript" charset="utf-8" src="./js/searcher.js"></script>
20
- <script type="text/javascript" charset="utf-8" src="./js/darkfish.js"></script>
14
+ <script src="./js/navigation.js" defer></script>
15
+ <script src="./js/search.js" defer></script>
16
+ <script src="./js/search_index.js" defer></script>
17
+ <script src="./js/searcher.js" defer></script>
18
+ <script src="./js/darkfish.js" defer></script>
19
+
20
+ <link href="./css/fonts.css" rel="stylesheet">
21
+ <link href="./css/rdoc.css" rel="stylesheet">
22
+
21
23
 
24
+ <body id="top" role="document" class="file">
25
+ <nav role="navigation">
26
+ <div id="project-navigation">
27
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
28
+ <h2>
29
+ <a href="./index.html" rel="home">Home</a>
30
+ </h2>
22
31
 
23
- <body class="file">
24
- <nav id="metadata">
25
- <nav id="home-section" class="section">
26
- <h3 class="section-header">
27
- <a href="./index.html">Home</a>
32
+ <div id="table-of-contents-navigation">
33
+ <a href="./table_of_contents.html#pages">Pages</a>
28
34
  <a href="./table_of_contents.html#classes">Classes</a>
29
35
  <a href="./table_of_contents.html#methods">Methods</a>
30
- </h3>
31
- </nav>
32
-
36
+ </div>
37
+ </div>
33
38
 
34
- <nav id="search-section" class="section project-section" class="initially-hidden">
39
+ <div id="search-section" role="search" class="project-section initially-hidden">
35
40
  <form action="#" method="get" accept-charset="utf-8">
36
- <h3 class="section-header">
37
- <input type="text" name="search" placeholder="Search" id="search-field"
41
+ <div id="search-field-wrapper">
42
+ <input id="search-field" role="combobox" aria-label="Search"
43
+ aria-autocomplete="list" aria-controls="search-results"
44
+ type="text" name="search" placeholder="Search" spellcheck="false"
38
45
  title="Type to search, Up and Down to navigate, Enter to load">
39
- </h3>
40
- </form>
41
-
42
- <ul id="search-results" class="initially-hidden"></ul>
43
- </nav>
46
+ </div>
44
47
 
48
+ <ul id="search-results" aria-label="Search Results"
49
+ aria-busy="false" aria-expanded="false"
50
+ aria-atomic="false" class="initially-hidden"></ul>
51
+ </form>
52
+ </div>
45
53
 
46
- <div id="project-metadata">
47
- <nav id="fileindex-section" class="section project-section">
48
- <h3 class="section-header">Pages</h3>
54
+ </div>
49
55
 
50
- <ul>
51
-
52
- <li class="file"><a href="./README_rdoc.html">README</a>
53
-
54
- <li class="file"><a href="./TODO_rdoc.html">TODO</a>
55
56
 
57
+ <div class="nav-section">
58
+ <h3>Table of Contents</h3>
59
+
60
+ <ul class="link-list" role="directory">
61
+ <li><a href="#label-Bugs">Bugs</a>
62
+ <li><a href="#label-Features">Features</a>
63
+ <li><a href="#label-Documentation">Documentation</a>
64
+ <li><a href="#label-Tests">Tests</a>
56
65
  </ul>
57
- </nav>
66
+ </div>
67
+
58
68
 
59
- <nav id="classindex-section" class="section project-section">
60
- <h3 class="section-header">Class and Module Index</h3>
69
+ <div id="project-metadata">
70
+
71
+ <div id="fileindex-section" class="nav-section">
72
+ <h3>Pages</h3>
61
73
 
62
74
  <ul class="link-list">
63
-
64
- <li><a href="./MIDI.html">MIDI</a>
65
-
66
- <li><a href="./MIDI/ActiveSense.html">MIDI::ActiveSense</a>
67
-
68
- <li><a href="./MIDI/ChannelEvent.html">MIDI::ChannelEvent</a>
69
-
70
- <li><a href="./MIDI/ChannelPressure.html">MIDI::ChannelPressure</a>
71
-
72
- <li><a href="./MIDI/Clock.html">MIDI::Clock</a>
73
-
74
- <li><a href="./MIDI/Continue.html">MIDI::Continue</a>
75
-
76
- <li><a href="./MIDI/Controller.html">MIDI::Controller</a>
77
-
78
- <li><a href="./MIDI/Event.html">MIDI::Event</a>
79
-
80
- <li><a href="./MIDI/IO.html">MIDI::IO</a>
81
-
82
- <li><a href="./MIDI/IO/MIDIFile.html">MIDI::IO::MIDIFile</a>
83
-
84
- <li><a href="./MIDI/IO/SeqReader.html">MIDI::IO::SeqReader</a>
85
-
86
- <li><a href="./MIDI/IO/SeqWriter.html">MIDI::IO::SeqWriter</a>
87
-
88
- <li><a href="./MIDI/KeySig.html">MIDI::KeySig</a>
89
-
90
- <li><a href="./MIDI/MIDI.html">MIDI::MIDI</a>
91
-
92
- <li><a href="./MIDI/MIDI/MIDI.html">MIDI::MIDI::MIDI</a>
93
-
94
- <li><a href="./MIDI/MIDI/MIDI/Array.html">MIDI::MIDI::MIDI::Array</a>
95
-
96
- <li><a href="./MIDI/Marker.html">MIDI::Marker</a>
97
-
98
- <li><a href="./MIDI/Measure.html">MIDI::Measure</a>
99
-
100
- <li><a href="./MIDI/Measures.html">MIDI::Measures</a>
101
-
102
- <li><a href="./MIDI/MetaEvent.html">MIDI::MetaEvent</a>
103
-
104
- <li><a href="./MIDI/NoteEvent.html">MIDI::NoteEvent</a>
105
-
106
- <li><a href="./MIDI/NoteOff.html">MIDI::NoteOff</a>
107
-
108
- <li><a href="./MIDI/NoteOff.html">MIDI::NoteOffEvent</a>
109
-
110
- <li><a href="./MIDI/NoteOn.html">MIDI::NoteOn</a>
111
-
112
- <li><a href="./MIDI/NoteOn.html">MIDI::NoteOnEvent</a>
113
-
114
- <li><a href="./MIDI/PitchBend.html">MIDI::PitchBend</a>
115
-
116
- <li><a href="./MIDI/PolyPressure.html">MIDI::PolyPressure</a>
117
-
118
- <li><a href="./MIDI/ProgramChange.html">MIDI::ProgramChange</a>
119
-
120
- <li><a href="./MIDI/Realtime.html">MIDI::Realtime</a>
121
-
122
- <li><a href="./MIDI/Sequence.html">MIDI::Sequence</a>
123
-
124
- <li><a href="./MIDI/SongPointer.html">MIDI::SongPointer</a>
125
-
126
- <li><a href="./MIDI/SongSelect.html">MIDI::SongSelect</a>
127
-
128
- <li><a href="./MIDI/Start.html">MIDI::Start</a>
129
-
130
- <li><a href="./MIDI/Stop.html">MIDI::Stop</a>
131
-
132
- <li><a href="./MIDI/SystemCommon.html">MIDI::SystemCommon</a>
133
-
134
- <li><a href="./MIDI/SystemExclusive.html">MIDI::SystemExclusive</a>
135
-
136
- <li><a href="./MIDI/SystemReset.html">MIDI::SystemReset</a>
137
-
138
- <li><a href="./MIDI/Tempo.html">MIDI::Tempo</a>
139
-
140
- <li><a href="./MIDI/TimeSig.html">MIDI::TimeSig</a>
141
-
142
- <li><a href="./MIDI/Track.html">MIDI::Track</a>
143
-
144
- <li><a href="./MIDI/TuneRequest.html">MIDI::TuneRequest</a>
145
-
146
- <li><a href="./MIDI/Utils.html">MIDI::Utils</a>
147
-
148
- <li><a href="./IO.html">IO</a>
149
-
75
+ <li><a href="./README_rdoc.html">README</a>
76
+ <li><a href="./TODO_rdoc.html">TODO</a>
150
77
  </ul>
151
- </nav>
78
+ </div>
152
79
 
153
80
  </div>
154
81
  </nav>
155
82
 
156
- <div id="documentation" class="description">
157
-
158
- <h2 id="label-Bugs">Bugs</h2>
83
+ <main role="main" aria-label="Page TODO.rdoc">
159
84
 
160
- <p>No known bugs. (If that's not a challenge, I don't know what is.)</p>
85
+ <h2 id="label-Bugs">Bugs<span><a href="#label-Bugs">&para;</a> <a href="#top">&uarr;</a></span></h2>
161
86
 
162
- <h2 id="label-Features">Features</h2>
87
+ <p>midilib does not handle tempo changes when calculating <code>beats_per_minute</code>. The tempo events are correctly handled when reading/writing/moving them around, it’s just the functions that answer questions about the current tempo that are wrong. See <a href="https://github.com/jimm/midilib/issues/8">github.com/jimm/midilib/issues/8</a>. The method <code>beats_per_minute</code> and related methods like <code>pulses_to_seconds</code> will have to take into account the possibility of more than one tempo event. They will probably have to take new arguments specifying where in the sequence the beats or pulses are being requested. For example we could have +beats_per_minute(at_seconds: 0.0, at_beat: 0.0)+ (where the two keyword args are mutually exclusive). Perhaps there should be separately named public methods like <code>beats_per_minute_at_seconds</code> and <code>beats_per_minute_at_beat</code> as well.</p>
88
+
89
+ <h2 id="label-Features">Features<span><a href="#label-Features">&para;</a> <a href="#top">&uarr;</a></span></h2>
163
90
  <ul><li>
164
- <p><code>print_decimal_numbers</code> and
165
- <code>print_channel_numbers_from_one</code> should be associated with
166
- sequence, or perhaps track, not event.</p>
91
+ <p><code>print_decimal_numbers</code> and <code>print_channel_numbers_from_one</code> should be associated with sequence, or perhaps track, not event.</p>
167
92
  </li><li>
168
- <p>Method to translate event's time_from_start to number of milliseconds from
169
- start.</p>
93
+ <p>Method to translate events time_from_start to number of milliseconds from start.</p>
170
94
  </li><li>
171
- <p>Swing quantizing. (Implied by list email from Carl Youngblood &lt;gmail at
172
- carl.youngblood.com&gt;)</p>
95
+ <p>Swing quantizing. (Implied by list email from Carl Youngblood &lt;carl.youngblood@gmail.com&gt;)</p>
173
96
  </li><li>
174
97
  <p>Implement key signature in SeqReader.</p>
175
98
  </li><li>
176
- <p>Format 0 files.</p>
99
+ <p>Ignore unknown chunks in <a href="MIDI.html"><code>MIDI</code></a> files. See the <a href="MIDI.html"><code>MIDI</code></a> file spec.</p>
177
100
  </li><li>
178
101
  <p>Format 2 files(?).</p>
179
102
  </li></ul>
180
103
 
181
- <h2 id="label-Documentation">Documentation</h2>
104
+ <h2 id="label-Documentation">Documentation<span><a href="#label-Documentation">&para;</a> <a href="#top">&uarr;</a></span></h2>
182
105
  <ul><li>
183
106
  <p>Write better docs.</p>
184
107
  </li></ul>
185
108
 
186
- <h2 id="label-Tests">Tests</h2>
109
+ <h2 id="label-Tests">Tests<span><a href="#label-Tests">&para;</a> <a href="#top">&uarr;</a></span></h2>
187
110
  <ul><li>
188
- <p>Tests for Noah Thorp's midilib bug fixes.</p>
111
+ <p>Tests for Noah Thorps midilib bug fixes.</p>
189
112
  </li></ul>
190
113
 
191
- </div>
114
+ </main>
192
115
 
193
116
 
194
117
 
195
- <footer id="validator-badges">
196
- <p><a href="http://validator.w3.org/check/referer">[Validate]</a>
197
- <p>Generated by <a href="https://github.com/rdoc/rdoc">RDoc</a> 3.12.
198
- <p>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish Rdoc Generator</a> 3.
118
+ <footer id="validator-badges" role="contentinfo">
119
+ <p><a href="https://validator.w3.org/check/referer">Validate</a>
120
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.4.0.
121
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
199
122
  </footer>
200
123
 
data/html/created.rid CHANGED
@@ -1,14 +1,15 @@
1
- Tue, 19 Feb 2013 12:46:05 -0500
2
- README.rdoc Sun, 16 Dec 2012 17:42:23 -0500
3
- TODO.rdoc Tue, 19 Feb 2013 12:29:15 -0500
4
- lib/midilib/consts.rb Wed, 10 Dec 2008 15:46:21 -0500
5
- lib/midilib/event.rb Tue, 19 Feb 2013 12:38:33 -0500
6
- lib/midilib/info.rb Tue, 19 Feb 2013 12:44:58 -0500
7
- lib/midilib/io/midifile.rb Sun, 04 Jan 2009 21:27:10 -0500
8
- lib/midilib/io/seqreader.rb Tue, 19 Feb 2013 12:41:40 -0500
9
- lib/midilib/io/seqwriter.rb Sun, 31 Oct 2010 19:35:55 -0400
10
- lib/midilib/measure.rb Wed, 10 Dec 2008 15:46:21 -0500
11
- lib/midilib/sequence.rb Fri, 07 Sep 2012 08:28:53 -0400
12
- lib/midilib/track.rb Thu, 02 Aug 2012 21:27:02 -0400
13
- lib/midilib/utils.rb Sat, 03 Jan 2009 15:59:43 -0500
14
- lib/midilib.rb Sun, 28 Dec 2008 11:22:14 -0500
1
+ Sun, 04 Sep 2022 17:10:12 -0400
2
+ README.rdoc Sun, 30 May 2021 10:18:10 -0400
3
+ TODO.rdoc Thu, 08 Apr 2021 17:34:00 -0400
4
+ lib/midilib.rb Sun, 30 May 2021 10:14:52 -0400
5
+ lib/midilib/consts.rb Sat, 30 Apr 2022 10:15:17 -0400
6
+ lib/midilib/event.rb Sun, 30 May 2021 10:18:10 -0400
7
+ lib/midilib/info.rb Sun, 04 Sep 2022 17:09:33 -0400
8
+ lib/midilib/io/midifile.rb Sun, 30 May 2021 10:18:10 -0400
9
+ lib/midilib/io/seqreader.rb Sun, 04 Sep 2022 17:07:46 -0400
10
+ lib/midilib/io/seqwriter.rb Sun, 30 May 2021 10:18:10 -0400
11
+ lib/midilib/measure.rb Sun, 30 May 2021 10:18:10 -0400
12
+ lib/midilib/mergesort.rb Sun, 30 May 2021 10:18:10 -0400
13
+ lib/midilib/sequence.rb Wed, 11 Aug 2021 12:16:42 -0400
14
+ lib/midilib/track.rb Sun, 30 May 2021 10:18:10 -0400
15
+ lib/midilib/utils.rb Sun, 30 May 2021 10:18:10 -0400
@@ -0,0 +1,167 @@
1
+ /*
2
+ * Copyright 2010, 2012 Adobe Systems Incorporated (http://www.adobe.com/),
3
+ * with Reserved Font Name "Source". All Rights Reserved. Source is a
4
+ * trademark of Adobe Systems Incorporated in the United States and/or other
5
+ * countries.
6
+ *
7
+ * This Font Software is licensed under the SIL Open Font License, Version
8
+ * 1.1.
9
+ *
10
+ * This license is copied below, and is also available with a FAQ at:
11
+ * http://scripts.sil.org/OFL
12
+ */
13
+
14
+ @font-face {
15
+ font-family: "Source Code Pro";
16
+ font-style: normal;
17
+ font-weight: 400;
18
+ src: local("Source Code Pro"),
19
+ local("SourceCodePro-Regular"),
20
+ url("../fonts/SourceCodePro-Regular.ttf") format("truetype");
21
+ }
22
+
23
+ @font-face {
24
+ font-family: "Source Code Pro";
25
+ font-style: normal;
26
+ font-weight: 700;
27
+ src: local("Source Code Pro Bold"),
28
+ local("SourceCodePro-Bold"),
29
+ url("../fonts/SourceCodePro-Bold.ttf") format("truetype");
30
+ }
31
+
32
+ /*
33
+ * Copyright (c) 2010, Łukasz Dziedzic (dziedzic@typoland.com),
34
+ * with Reserved Font Name Lato.
35
+ *
36
+ * This Font Software is licensed under the SIL Open Font License, Version
37
+ * 1.1.
38
+ *
39
+ * This license is copied below, and is also available with a FAQ at:
40
+ * http://scripts.sil.org/OFL
41
+ */
42
+
43
+ @font-face {
44
+ font-family: "Lato";
45
+ font-style: normal;
46
+ font-weight: 300;
47
+ src: local("Lato Light"),
48
+ local("Lato-Light"),
49
+ url("../fonts/Lato-Light.ttf") format("truetype");
50
+ }
51
+
52
+ @font-face {
53
+ font-family: "Lato";
54
+ font-style: italic;
55
+ font-weight: 300;
56
+ src: local("Lato Light Italic"),
57
+ local("Lato-LightItalic"),
58
+ url("../fonts/Lato-LightItalic.ttf") format("truetype");
59
+ }
60
+
61
+ @font-face {
62
+ font-family: "Lato";
63
+ font-style: normal;
64
+ font-weight: 700;
65
+ src: local("Lato Regular"),
66
+ local("Lato-Regular"),
67
+ url("../fonts/Lato-Regular.ttf") format("truetype");
68
+ }
69
+
70
+ @font-face {
71
+ font-family: "Lato";
72
+ font-style: italic;
73
+ font-weight: 700;
74
+ src: local("Lato Italic"),
75
+ local("Lato-Italic"),
76
+ url("../fonts/Lato-RegularItalic.ttf") format("truetype");
77
+ }
78
+
79
+ /*
80
+ * -----------------------------------------------------------
81
+ * SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
82
+ * -----------------------------------------------------------
83
+ *
84
+ * PREAMBLE
85
+ * The goals of the Open Font License (OFL) are to stimulate worldwide
86
+ * development of collaborative font projects, to support the font creation
87
+ * efforts of academic and linguistic communities, and to provide a free and
88
+ * open framework in which fonts may be shared and improved in partnership
89
+ * with others.
90
+ *
91
+ * The OFL allows the licensed fonts to be used, studied, modified and
92
+ * redistributed freely as long as they are not sold by themselves. The
93
+ * fonts, including any derivative works, can be bundled, embedded,
94
+ * redistributed and/or sold with any software provided that any reserved
95
+ * names are not used by derivative works. The fonts and derivatives,
96
+ * however, cannot be released under any other type of license. The
97
+ * requirement for fonts to remain under this license does not apply
98
+ * to any document created using the fonts or their derivatives.
99
+ *
100
+ * DEFINITIONS
101
+ * "Font Software" refers to the set of files released by the Copyright
102
+ * Holder(s) under this license and clearly marked as such. This may
103
+ * include source files, build scripts and documentation.
104
+ *
105
+ * "Reserved Font Name" refers to any names specified as such after the
106
+ * copyright statement(s).
107
+ *
108
+ * "Original Version" refers to the collection of Font Software components as
109
+ * distributed by the Copyright Holder(s).
110
+ *
111
+ * "Modified Version" refers to any derivative made by adding to, deleting,
112
+ * or substituting -- in part or in whole -- any of the components of the
113
+ * Original Version, by changing formats or by porting the Font Software to a
114
+ * new environment.
115
+ *
116
+ * "Author" refers to any designer, engineer, programmer, technical
117
+ * writer or other person who contributed to the Font Software.
118
+ *
119
+ * PERMISSION & CONDITIONS
120
+ * Permission is hereby granted, free of charge, to any person obtaining
121
+ * a copy of the Font Software, to use, study, copy, merge, embed, modify,
122
+ * redistribute, and sell modified and unmodified copies of the Font
123
+ * Software, subject to the following conditions:
124
+ *
125
+ * 1) Neither the Font Software nor any of its individual components,
126
+ * in Original or Modified Versions, may be sold by itself.
127
+ *
128
+ * 2) Original or Modified Versions of the Font Software may be bundled,
129
+ * redistributed and/or sold with any software, provided that each copy
130
+ * contains the above copyright notice and this license. These can be
131
+ * included either as stand-alone text files, human-readable headers or
132
+ * in the appropriate machine-readable metadata fields within text or
133
+ * binary files as long as those fields can be easily viewed by the user.
134
+ *
135
+ * 3) No Modified Version of the Font Software may use the Reserved Font
136
+ * Name(s) unless explicit written permission is granted by the corresponding
137
+ * Copyright Holder. This restriction only applies to the primary font name as
138
+ * presented to the users.
139
+ *
140
+ * 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
141
+ * Software shall not be used to promote, endorse or advertise any
142
+ * Modified Version, except to acknowledge the contribution(s) of the
143
+ * Copyright Holder(s) and the Author(s) or with their explicit written
144
+ * permission.
145
+ *
146
+ * 5) The Font Software, modified or unmodified, in part or in whole,
147
+ * must be distributed entirely under this license, and must not be
148
+ * distributed under any other license. The requirement for fonts to
149
+ * remain under this license does not apply to any document created
150
+ * using the Font Software.
151
+ *
152
+ * TERMINATION
153
+ * This license becomes null and void if any of the above conditions are
154
+ * not met.
155
+ *
156
+ * DISCLAIMER
157
+ * THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
158
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
159
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
160
+ * OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
161
+ * COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
162
+ * INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
163
+ * DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
164
+ * FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
165
+ * OTHER DEALINGS IN THE FONT SOFTWARE.
166
+ */
167
+