|
159 | 159 | font-family: monospace;
|
160 | 160 | }
|
161 | 161 | </style>
|
| 162 | + <noscript> |
| 163 | + <style> |
| 164 | + .javaScriptOnly { |
| 165 | + display: none; |
| 166 | + } |
| 167 | + </style> |
| 168 | + </noscript> |
162 | 169 | </head>
|
163 | 170 | <body>
|
164 | 171 | $hackagePageHeader()$
|
165 | 172 | <div id=content>
|
166 | 173 | <h1>$heading$</h1>
|
167 |
| - $content$ |
168 |
| - <div id=fatalError></div> |
169 |
| - <form onsubmit="javascript: submitSearch(event)"> |
170 |
| - <input type=text id=searchQuery /> |
171 |
| - <input type=submit value="Search" /> |
172 |
| - </form> |
173 |
| - <h3 id=toggleAdvanced> |
174 |
| - <a aria-expanded=false aria-controls=advancedForm href="javascript: toggleAdvanced();"> |
175 |
| - <span id=chevron>▸</span> |
176 |
| - Advanced options |
177 |
| - </a> |
178 |
| - </h3> |
179 |
| - <div id=advancedForm> |
180 |
| - <form class=filterSuggestion onsubmit="javascript:appendDeprecated(event);"><input type=submit value=Append> <div>Also show deprecated packages</div></form> |
181 |
| - <form class=filterSuggestion onsubmit="javascript:appendAgeOfLastUL(event);"><input type=submit value=Append><div><span>Last uploaded version younger than</span><input placeholder="e.g. 2y for 2 years" id=advAgeLastUL oninput="validateAgeOfLastUL();"></div></form> |
182 |
| - <form class=filterSuggestion onsubmit="javascript:appendTag(event);"><input type=submit value=Append> <div><span>Only show packages with tag</span><input id=advTag placeholder="e.g. bsd3" oninput="validateTag();"></div></form> |
183 |
| - <form class=filterSuggestion onsubmit="javascript:appendRating(event);"><input type=submit value=Append> <div><span>Rating greater than, or equal to</span><span id=sliderAndOutput><input id=advRatingSlider type=range min=0 max=3 step=.1 oninput="this.nextElementSibling.value = this.value" value=2><output>2</output></span></div></form> |
184 |
| - <h5>Usage</h5> |
185 |
| - <p>Apart from just writing words to search everywhere in package metadata, |
186 |
| - you can also use filters in the search query string input field above. |
187 |
| - Filters are surrounded by parentheses. |
188 |
| - All filters have to pass for every package shown in the result, |
189 |
| - that is, it is a |
190 |
| - <a href="https://en.wikipedia.org/wiki/Logical_conjunction" target=_blank> |
191 |
| - logical conjunction</a>. |
192 |
| - </p> |
193 |
| - <dl> |
194 |
| - <dt>(downloads > 1000)</dt> |
195 |
| - <dd>Only show packages with more than 1000 downloads within the last 30 days. The download count is inexact because Hackage uses a <a href="https://en.wikipedia.org/wiki/Content_delivery_network" target=_blank>content delivery network</a>.</dd> |
196 |
| - <dt>(lastUpload < 2021-10-29)</dt> |
197 |
| - <dd>Only show packages for which the last upload was before (i.e. excluding) the given UTC date in <a target=_blank href="https://www.w3.org/TR/NOTE-datetime">the 'complete date' format as specified using ISO 8601</a>.</dd> |
198 |
| - <dt>(lastUpload = 2021-10-29)</dt> |
199 |
| - <dd>Only show packages for which the last upload was within the 24 hours of the given UTC date.</dd> |
200 |
| - <dt>(maintainer:SimonMarlow)</dt> |
201 |
| - <dd>Only show packages for which the maintainers list includes the user name <a target=_blank href="/user/SimonMarlow">SimonMarlow</a>.</dd> |
202 |
| - <dt>(tag:bsd3)</dt> |
203 |
| - <dd>Only show packages with the <code><a target=_blank href="/packages/tag/bsd3">bsd3</a></code> tag.</dd> |
204 |
| - <dt>(not tag:network)</dt> |
205 |
| - <dd>Do not show packages with the <code><a target=_blank href="/packages/tag/network">network</a></code> tag. The <code>not</code> operator can also be used with other filters.</dd> |
206 |
| - <dt>(ageOfLastUpload > 5d)</dt> |
207 |
| - <dd>Only show packages uploaded more than five days ago.</dd> |
208 |
| - <dt>(ageOfLastUpload > 4w)</dt> |
209 |
| - <dd>Only show packages uploaded more than four weeks ago. A week has seven days.</dd> |
210 |
| - <dt>(ageOfLastUpload < 1m)</dt> |
211 |
| - <dd>Only show packages last uploaded less than one month ago. A month is considered to have 30.437 days.</dd> |
212 |
| - <dt>(ageOfLastUpload < 2.5y)</dt> |
213 |
| - <dd>Only show packages last uploaded less than 2.5 years ago. A year is considered to be 365.25 days.</dd> |
214 |
| - <dt>(rating > 2.5)</dt> |
215 |
| - <dd>Only show packages with a rating of more than 2.5. The dot is the only accepted decimal separator.</dd> |
216 |
| - <dt>(rating /= 0)</dt> |
217 |
| - <dd>Only show packages with a rating unequal to zero.</dd> |
218 |
| - <dt>(deprecated:any)</dt> |
219 |
| - <dd>Do not filter out deprecated packages. This must be explicitly added if desired.</dd> |
220 |
| - <dt>(deprecated:true)</dt> |
221 |
| - <dd>Only show deprecated packages.</dd> |
222 |
| - <dt>(deprecated:false)</dt> |
223 |
| - <dd>Only show packages that are not deprecated. If no other deprecation filter is given, this filter is automatically added.</dd> |
224 |
| - <dt>(distro:Debian)</dt> |
225 |
| - <dd>Only show packages that are available in the Debian distribution. See the <a href="/distros">full list of available distributions</a>.</dd> |
226 |
| - </dl> |
227 |
| - </div> |
228 |
| - <table id=browseTable class=fancy> |
229 |
| - <thead> |
230 |
| - <tr> |
231 |
| - <th id=arrow-name><a href="javascript: sort('name')">Name</a></th> |
232 |
| - <th id=arrow-downloads title="Over the last 30 days"><a href="javascript: sort('downloads')">DLs</a></th> |
233 |
| - <th id=arrow-rating title="Ranges from 0 to 3"><a href="javascript: sort('rating')">Rating</a></th> |
234 |
| - <th id=arrow-description><a href="javascript: sort('description')">Description</a></th> |
235 |
| - <th id=arrow-tags><a href="javascript: sort('tags')">Tags</a></th> |
236 |
| - <th id=arrow-lastUpload><a href="javascript: sort('lastUpload')">Last U/L</a></th> |
237 |
| - <th id=arrow-maintainers><a href="javascript: sort('maintainers')">Maintainers</a></th> |
238 |
| - </tr> |
239 |
| - </thead> |
240 |
| - <tbody id="listing"></tbody> |
241 |
| - </table> |
242 |
| - <script type=module> |
243 |
| - import { sort, submitSearch, toggleAdvanced, appendDeprecated, appendAgeOfLastUL, |
244 |
| - appendTag, appendRating, validateAgeOfLastUL, validateTag } |
245 |
| - from "/static/browse.js"; |
246 |
| - window.sort = sort; |
247 |
| - window.submitSearch = submitSearch; |
248 |
| - window.toggleAdvanced = toggleAdvanced; |
249 |
| - window.appendDeprecated = appendDeprecated; |
250 |
| - window.appendAgeOfLastUL = appendAgeOfLastUL; |
251 |
| - window.appendTag = appendTag; |
252 |
| - window.appendRating = appendRating; |
253 |
| - window.validateAgeOfLastUL = validateAgeOfLastUL; |
254 |
| - window.validateTag = validateTag; |
255 |
| - </script> |
256 |
| - <div id=paginatorContainer> |
257 |
| - </div> |
258 |
| - <div id=browseFooter> |
259 |
| - Alternatively, if you are looking for a particular function then try <a href="#" id=hoogleLink target=_blank>Hoogle</a>. |
| 174 | + <noscript> |
| 175 | + $formFragment$ |
| 176 | + <!-- Elinks does not understand CSS, so it will show the full page. |
| 177 | + We add this warning such that users will not use the wrong form. |
| 178 | + The class attribute hides the notice for Firefox/Chrome users. |
| 179 | + --> |
| 180 | + <p class=javaScriptOnly>Please disregard the following form, it only works with JavaScript.</p> |
| 181 | + </noscript> |
| 182 | + <div class=javaScriptOnly> |
| 183 | + <div id=fatalError></div> |
| 184 | + <form onsubmit="javascript: submitSearch(event)"> |
| 185 | + <input type=text id=searchQuery /> |
| 186 | + <input type=submit value="Search" /> |
| 187 | + </form> |
| 188 | + <h3 id=toggleAdvanced> |
| 189 | + <a aria-expanded=false aria-controls=advancedForm href="javascript: toggleAdvanced();"> |
| 190 | + <span id=chevron>▸</span> |
| 191 | + Advanced options |
| 192 | + </a> |
| 193 | + </h3> |
| 194 | + <div id=advancedForm> |
| 195 | + <form class=filterSuggestion onsubmit="javascript:appendDeprecated(event);"><input type=submit value=Append> <div>Also show deprecated packages</div></form> |
| 196 | + <form class=filterSuggestion onsubmit="javascript:appendAgeOfLastUL(event);"><input type=submit value=Append><div><span>Last uploaded version younger than</span><input placeholder="e.g. 2y for 2 years" id=advAgeLastUL oninput="validateAgeOfLastUL();"></div></form> |
| 197 | + <form class=filterSuggestion onsubmit="javascript:appendTag(event);"><input type=submit value=Append> <div><span>Only show packages with tag</span><input id=advTag placeholder="e.g. bsd3" oninput="validateTag();"></div></form> |
| 198 | + <form class=filterSuggestion onsubmit="javascript:appendRating(event);"><input type=submit value=Append> <div><span>Rating greater than, or equal to</span><span id=sliderAndOutput><input id=advRatingSlider type=range min=0 max=3 step=.1 oninput="this.nextElementSibling.value = this.value" value=2><output>2</output></span></div></form> |
| 199 | + <h5>Usage</h5> |
| 200 | + <p>Apart from just writing words to search everywhere in package metadata, |
| 201 | + you can also use filters in the search query string input field above. |
| 202 | + Filters are surrounded by parentheses. |
| 203 | + All filters have to pass for every package shown in the result, |
| 204 | + that is, it is a |
| 205 | + <a href="https://en.wikipedia.org/wiki/Logical_conjunction" target=_blank> |
| 206 | + logical conjunction</a>. |
| 207 | + </p> |
| 208 | + <dl> |
| 209 | + <dt>(downloads > 1000)</dt> |
| 210 | + <dd>Only show packages with more than 1000 downloads within the last 30 days. The download count is inexact because Hackage uses a <a href="https://en.wikipedia.org/wiki/Content_delivery_network" target=_blank>content delivery network</a>.</dd> |
| 211 | + <dt>(lastUpload < 2021-10-29)</dt> |
| 212 | + <dd>Only show packages for which the last upload was before (i.e. excluding) the given UTC date in <a target=_blank href="https://www.w3.org/TR/NOTE-datetime">the 'complete date' format as specified using ISO 8601</a>.</dd> |
| 213 | + <dt>(lastUpload = 2021-10-29)</dt> |
| 214 | + <dd>Only show packages for which the last upload was within the 24 hours of the given UTC date.</dd> |
| 215 | + <dt>(maintainer:SimonMarlow)</dt> |
| 216 | + <dd>Only show packages for which the maintainers list includes the user name <a target=_blank href="/user/SimonMarlow">SimonMarlow</a>.</dd> |
| 217 | + <dt>(tag:bsd3)</dt> |
| 218 | + <dd>Only show packages with the <code><a target=_blank href="/packages/tag/bsd3">bsd3</a></code> tag.</dd> |
| 219 | + <dt>(not tag:network)</dt> |
| 220 | + <dd>Do not show packages with the <code><a target=_blank href="/packages/tag/network">network</a></code> tag. The <code>not</code> operator can also be used with other filters.</dd> |
| 221 | + <dt>(ageOfLastUpload > 5d)</dt> |
| 222 | + <dd>Only show packages uploaded more than five days ago.</dd> |
| 223 | + <dt>(ageOfLastUpload > 4w)</dt> |
| 224 | + <dd>Only show packages uploaded more than four weeks ago. A week has seven days.</dd> |
| 225 | + <dt>(ageOfLastUpload < 1m)</dt> |
| 226 | + <dd>Only show packages last uploaded less than one month ago. A month is considered to have 30.437 days.</dd> |
| 227 | + <dt>(ageOfLastUpload < 2.5y)</dt> |
| 228 | + <dd>Only show packages last uploaded less than 2.5 years ago. A year is considered to be 365.25 days.</dd> |
| 229 | + <dt>(rating > 2.5)</dt> |
| 230 | + <dd>Only show packages with a rating of more than 2.5. The dot is the only accepted decimal separator.</dd> |
| 231 | + <dt>(rating /= 0)</dt> |
| 232 | + <dd>Only show packages with a rating unequal to zero.</dd> |
| 233 | + <dt>(deprecated:any)</dt> |
| 234 | + <dd>Do not filter out deprecated packages. This must be explicitly added if desired.</dd> |
| 235 | + <dt>(deprecated:true)</dt> |
| 236 | + <dd>Only show deprecated packages.</dd> |
| 237 | + <dt>(deprecated:false)</dt> |
| 238 | + <dd>Only show packages that are not deprecated. If no other deprecation filter is given, this filter is automatically added.</dd> |
| 239 | + <dt>(distro:Debian)</dt> |
| 240 | + <dd>Only show packages that are available in the Debian distribution. See the <a href="/distros">full list of available distributions</a>.</dd> |
| 241 | + </dl> |
| 242 | + </div> |
| 243 | + <table id=browseTable class=fancy> |
| 244 | + <thead> |
| 245 | + <tr> |
| 246 | + <th id=arrow-name><a href="javascript: sort('name')">Name</a></th> |
| 247 | + <th id=arrow-downloads title="Over the last 30 days"><a href="javascript: sort('downloads')">DLs</a></th> |
| 248 | + <th id=arrow-rating title="Ranges from 0 to 3"><a href="javascript: sort('rating')">Rating</a></th> |
| 249 | + <th id=arrow-description><a href="javascript: sort('description')">Description</a></th> |
| 250 | + <th id=arrow-tags><a href="javascript: sort('tags')">Tags</a></th> |
| 251 | + <th id=arrow-lastUpload><a href="javascript: sort('lastUpload')">Last U/L</a></th> |
| 252 | + <th id=arrow-maintainers><a href="javascript: sort('maintainers')">Maintainers</a></th> |
| 253 | + </tr> |
| 254 | + </thead> |
| 255 | + <tbody id="listing"></tbody> |
| 256 | + </table> |
| 257 | + <script type=module> |
| 258 | + import { sort, submitSearch, toggleAdvanced, appendDeprecated, appendAgeOfLastUL, |
| 259 | + appendTag, appendRating, validateAgeOfLastUL, validateTag } |
| 260 | + from "/static/browse.js"; |
| 261 | + window.sort = sort; |
| 262 | + window.submitSearch = submitSearch; |
| 263 | + window.toggleAdvanced = toggleAdvanced; |
| 264 | + window.appendDeprecated = appendDeprecated; |
| 265 | + window.appendAgeOfLastUL = appendAgeOfLastUL; |
| 266 | + window.appendTag = appendTag; |
| 267 | + window.appendRating = appendRating; |
| 268 | + window.validateAgeOfLastUL = validateAgeOfLastUL; |
| 269 | + window.validateTag = validateTag; |
| 270 | + </script> |
| 271 | + <div id=paginatorContainer> |
| 272 | + </div> |
| 273 | + <div id=browseFooter> |
| 274 | + Alternatively, if you are looking for a particular function then try <a href="#" id=hoogleLink target=_blank>Hoogle</a>. |
| 275 | + </div> |
260 | 276 | </div>
|
261 | 277 | </div>
|
262 | 278 | </body>
|
|
0 commit comments