1<!DOCTYPE html> 2<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head> 3 4<meta charset="utf-8"> 5<meta name="generator" content="quarto-1.3.450"> 6 7<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes"> 8 9<meta name="author" content="Sam Foreman "> 10<meta name="dcterms.date" content="2023-09-15"> 11 12<title>Sam Foreman - Listing Example</title> 13<style> 14code{white-space: pre-wrap;} 15span.smallcaps{font-variant: small-caps;} 16div.columns{display: flex; gap: min(4vw, 1.5em);} 17div.column{flex: auto; overflow-x: auto;} 18div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;} 19ul.task-list{list-style: none;} 20ul.task-list li input[type="checkbox"] { 21 width: 0.8em; 22 margin: 0 0.8em 0.2em -1em; /* quarto-specific, see https://github.com/quarto-dev/quarto-cli/issues/4556 */ 23 vertical-align: middle; 24} 25/* CSS for citations */ 26div.csl-bib-body { } 27div.csl-entry { 28 clear: both; 29} 30.hanging-indent div.csl-entry { 31 margin-left:2em; 32 text-indent:-2em; 33} 34div.csl-left-margin { 35 min-width:2em; 36 float:left; 37} 38div.csl-right-inline { 39 margin-left:2em; 40 padding-left:1em; 41} 42div.csl-indent { 43 margin-left: 2em; 44}</style> 45 46
47<script src="../site_libs/quarto-nav/quarto-nav.js"></script>
vendor: 1 bytes, line 47
47
48<script src="../site_libs/quarto-nav/headroom.min.js"></script>
vendor: 1 bytes, line 48
48
49<script src="../site_libs/clipboard/clipboard.min.js"></script>
vendor: 1 bytes, line 49
49
50<script src="../site_libs/quarto-search/autocomplete.umd.js"></script>
vendor: 1 bytes, line 50
50
51<script src="../site_libs/quarto-search/fuse.min.js"></script>
vendor: 1 bytes, line 51
51
52<script src="../site_libs/quarto-search/quarto-search.js"></script>
52 53<meta name="quarto:offset" content="../"> 54<link href=".././favicon.svg" rel="icon" type="image/svg+xml">
55<script src="../site_libs/quarto-listing/list.min.js"></script>
vendor: 1 bytes, line 55
55
56<script src="../site_libs/quarto-listing/quarto-listing.js"></script>
vendor: 1 bytes, line 56
56
57<script src="../site_libs/quarto-html/quarto.js"></script>
vendor: 1 bytes, line 57
57
58<script src="../site_libs/quarto-html/popper.min.js"></script>
vendor: 1 bytes, line 58
58
59<script src="../site_libs/quarto-html/tippy.umd.min.js"></script>
vendor: 1 bytes, line 59
59
60<script src="../site_libs/quarto-html/anchor.min.js"></script>
60 61<link href="../site_libs/quarto-html/tippy.css" rel="stylesheet"> 62<link href="../site_libs/quarto-html/quarto-syntax-highlighting.css" rel="stylesheet" class="quarto-color-scheme" id="quarto-text-highlighting-styles"> 63<link href="../site_libs/quarto-html/quarto-syntax-highlighting-dark.css" rel="stylesheet" class="quarto-color-scheme quarto-color-alternate" id="quarto-text-highlighting-styles">
64<script src="../site_libs/bootstrap/bootstrap.min.js"></script>
64 65<link href="../site_libs/bootstrap/bootstrap-icons.css" rel="stylesheet"> 66<link href="../site_libs/bootstrap/bootstrap.min.css" rel="stylesheet" class="quarto-color-scheme" id="quarto-bootstrap" data-mode="light"> 67<link href="../site_libs/bootstrap/bootstrap-dark.min.css" rel="stylesheet" class="quarto-color-scheme quarto-color-alternate" id="quarto-bootstrap" data-mode="dark"> 68<link href="../site_libs/quarto-contrib/fontawesome6-0.1.0/all.css" rel="stylesheet"> 69<link href="../site_libs/quarto-contrib/fontawesome6-0.1.0/latex-fontsize.css" rel="stylesheet"> 70<link href="../site_libs/quarto-contrib/academicons-1.9.2/all.css" rel="stylesheet"> 71<link href="../site_libs/quarto-contrib/academicons-1.9.2/size.css" rel="stylesheet"> 72<link href="../site_libs/quarto-contrib/bootstrap-icons-1.9.1/all.css" rel="stylesheet">
73<script id="quarto-search-options" type="application/json">{ 74 "location": "navbar", 75 "copy-button": false, 76 "collapse-after": 3, 77 "panel-placement": "end", 78 "type": "overlay", 79 "limit": 20, 80 "language": { 81 "search-no-results-text": "No results", 82 "search-matching-documents-text": "matching documents", 83 "search-copy-link-title": "Copy link to search", 84 "search-hide-matches-text": "Hide additional matches", 85 "search-more-match-text": "more match in this document", 86 "search-more-matches-text": "more matches in this document", 87 "search-clear-button-title": "Clear", 88 "search-detached-cancel-button-title": "Cancel", 89 "search-submit-button-title": "Submit", 90 "search-label": "Search" 91 } 92}</script>
vendor: 1 bytes, line 92
92
93<script> 94 95 window.document.addEventListener("DOMContentLoaded", function (_event) { 96 const listingTargetEl = window.document.querySelector('#listing-sample-listings .list'); 97 if (!listingTargetEl) { 98 // No listing discovered, do not attach. 99 return; 100 } 101 102 const options = { 103 valueNames: ['listing-date','listing-title','listing-author',{ data: ['index'] },{ data: ['categories'] },{ data: ['listing-date-sort'] },{ data: ['listing-title-sort'] }], 104 105 searchColumns: ["listing-date","listing-title","listing-author"], 106 }; 107 108 window['quarto-listings'] = window['quarto-listings'] || {}; 109 window['quarto-listings']['listing-sample-listings'] = new List('listing-sample-listings', options); 110 111 if (window['quarto-listing-loaded']) { 112 window['quarto-listing-loaded'](); 113 } 114 }); 115 116 window.addEventListener('hashchange',() => { 117 if (window['quarto-listing-loaded']) { 118 window['quarto-listing-loaded'](); 119 } 120 }) 121 </script>
vendor: 67 bytes, lines 121-122
121 122<script async="" src="https://www.googletagmanager.com/gtag/js?id=
122G-XVM2Y822Y1
vendor: 13 bytes, lines 122-123
122"></script> 123
124<script type="text/javascript"> 125
vendor: 127 bytes, lines 126-129
126window.dataLayer = window.dataLayer || []; 127function gtag(){dataLayer.push(arguments);} 128gtag('js', new Date()); 129gtag('config', '
129G-XVM2Y822Y1
vendor: 29 bytes, line 129
129', { 'anonymize_ip': true});
130</script>
130 131<link href="https://pvinis.github.io/iosevka-webfont/3.4.1/iosevka.css" rel="stylesheet"> 132 133
133<script>window.backupDefine = window.define; window.define = undefined;</script>
133<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/katex.min.js"></script>
133 134
134<script>document.addEventListener("DOMContentLoaded", function () { 135 var mathElements = document.getElementsByClassName("math"); 136 var macros = []; 137 for (var i = 0; i < mathElements.length; i++) { 138 var texText = mathElements[i].firstChild; 139 if (mathElements[i].tagName == "SPAN") { 140 katex.render(texText.data, mathElements[i], { 141 displayMode: mathElements[i].classList.contains('display'), 142 throwOnError: false, 143 macros: macros, 144 fleqn: false 145 }); 146}}}); 147 </script>
147 148
148<script>window.define = window.backupDefine; window.backupDefine = undefined;</script>
148<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/dist/katex.min.css"> 149 150<link rel="stylesheet" href="../css/default.css"> 151<link rel="stylesheet" href="../css/callouts.css"> 152<link rel="stylesheet" href="../css/profile.css"> 153<meta property="og:title" content="Sam Foreman - Listing Example"> 154<meta property="og:description" content=""> 155<meta property="og:site-name" content="Sam Foreman"> 156<meta name="twitter:title" content="Sam Foreman - Listing Example"> 157<meta name="twitter:description" content=""> 158<meta name="twitter:image" content="https://saforem2.github.io/qmd/assets/thumbnail.png"> 159<meta name="twitter:creator" content="@saforem2"> 160<meta name="twitter:site" content="@saforem2"> 161<meta name="twitter:card" content="summary_large_image"> 162<meta name="citation_title" content="Personal Website"> 163<meta name="citation_author" content="Sam Foreman"> 164<meta name="citation_publication_date" content="2023-09-15"> 165<meta name="citation_cover_date" content="2023-09-15"> 166<meta name="citation_year" content="2023"> 167<meta name="citation_online_date" content="2023-09-15"> 168<meta name="citation_fulltext_html_url" content="https://saforem2.github.io"> 169<meta name="citation_language" content="en"> 170<meta name="citation_reference" content="citation_title=The climate risk &amp;amp; resilience portal (ClimRR) metadata and data dictionary;,citation_author=C. Burdi;,citation_author=Wall. T Branham;,citation_publication_date=2023;,citation_cover_date=2023;,citation_year=2023;,citation_fulltext_html_url=https://dub.sh/ClimRR-Metadata;"> 171<meta name="citation_reference" content="citation_title=Progress on (g-2)_\mu from lattice QCD;,citation_author=Hartmut Wittig;,citation_publication_date=2023;,citation_cover_date=2023;,citation_year=2023;,citation_fulltext_html_url=https://arxiv.org/abs/2306.04165;"> 172<meta name="citation_reference" content="citation_title=Hybrid Monte Carlo;,citation_author=S. Duane;,citation_author=A. D. Kennedy;,citation_author=B. J. Pendleton;,citation_author=D. Roweth;,citation_publication_date=1987;,citation_cover_date=1987;,citation_year=1987;,citation_doi=10.1016/0370-2693(87)91197-X;,citation_volume=195;,citation_journal_title=Phys. Lett. B;"> 173<meta name="citation_reference" content="citation_title=Snowmass 2021 Computational Frontier CompF03 Topical Group Report: Machine Learning;,citation_author=Phiala Shanahan;,citation_author=others;,citation_publication_date=2022-09;,citation_cover_date=2022-09;,citation_year=2022;,citation_fulltext_html_url=https://arxiv.org/abs/2209.07559;"> 174<meta name="citation_reference" content="citation_title=Applications of Machine Learning to Lattice Quantum Field Theory;,citation_author=Denis Boyda;,citation_author=others;,citation_publication_date=2022-02;,citation_cover_date=2022-02;,citation_year=2022;,citation_fulltext_html_url=https://arxiv.org/abs/2202.05838;,citation_conference_title=Snowmass 2021;"> 175<meta name="citation_reference" content="citation_title=HMC with Normalizing Flows;,citation_author=Sam Foreman;,citation_author=Taku Izubuchi;,citation_author=Luchang Jin;,citation_author=Xiao-Yong Jin;,citation_author=James C. Osborn;,citation_author=Akio Tomiya;,citation_publication_date=2022;,citation_cover_date=2022;,citation_year=2022;,citation_fulltext_html_url=https://arxiv.org/abs/2112.01586;,citation_doi=10.22323/1.396.0073;,citation_volume=LATTICE2021;,citation_journal_title=PoS;"> 176<meta name="citation_reference" content="citation_title=LeapfrogLayers: A Trainable Framework for Effective Topological Sampling;,citation_author=Sam Foreman;,citation_author=Xiao-Yong Jin;,citation_author=James C. Osborn;,citation_publication_date=2022;,citation_cover_date=2022;,citation_year=2022;,citation_fulltext_html_url=https://arxiv.org/abs/2112.01582;,citation_doi=10.22323/1.396.0508;,citation_volume=LATTICE2021;,citation_journal_title=PoS;"> 177<meta name="citation_reference" content="citation_title=Deep Learning Hamiltonian Monte Carlo;,citation_author=Sam Foreman;,citation_author=Xiao-Yong Jin;,citation_author=James C. Osborn;,citation_publication_date=2021-05;,citation_cover_date=2021-05;,citation_year=2021;,citation_fulltext_html_url=https://arxiv.org/abs/2105.03418;,citation_conference_title=9th International Conference on Learning Representations;"> 178<meta name="citation_reference" content="citation_title=Energy Justice Analysis of Climate Data with ClimRR;,citation_author=Sam Foreman;,citation_publication_date=2023-08-07;,citation_cover_date=2023-08-07;,citation_year=2023;,citation_fulltext_html_url=https://saforem2.github.io/climate-analysis;,citation_language=en;"> 179<meta name="citation_reference" content="citation_author=Sam Foreman;,citation_publication_date=2023-08-19;,citation_cover_date=2023-08-19;,citation_year=2023;,citation_fulltext_html_url=https://saforem2.github.io/l2hmc-qcd;,citation_language=en;"> 180<meta name="citation_reference" content="citation_title=Deep learning hamiltonian monte carlo;,citation_author=Sam Foreman;,citation_author=Xiao-Yong Jin;,citation_author=James C. Osborn;,citation_publication_date=2021;,citation_cover_date=2021;,citation_year=2021;,citation_fulltext_html_url=https://arxiv.org/abs/2105.03418;"> 181<meta name="citation_reference" content="citation_title=MLMC: Machine learning monte carlo for lattice gauge theory;,citation_author=Sam Foreman;,citation_author=Xiao-Yong Jin;,citation_author=James Osborn;,citation_publication_date=00;,citation_cover_date=00;,citation_year=0;,citation_conference_title=40th international symposium on lattice field theory (lattice 2023) (batavia, IL, united states, 07/31/2023 - 08/04/2023);"> 182</head> 183 184<body class="nav-fixed"> 185 186<div id="quarto-search-results"></div> 187 <header id="quarto-header" class="headroom fixed-top"> 188 <nav class="navbar navbar-expand-lg navbar-dark "> 189 <div class="navbar-container container-fluid"> 190 <div class="navbar-brand-container"> 191 <a href="../index.html" class="navbar-brand navbar-brand-logo"> 192 <img src=".././favicon.svg" alt="" class="navbar-logo"> 193 </a> 194 <a class="navbar-brand" href="../index.html"> 195 <span class="navbar-title">Sam Foreman</span> 196 </a> 197 </div> 198 <div id="quarto-search" class="" title="Search"></div> 199 <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarCollapse" aria-controls="navbarC
199ollapse" aria-expanded="false" aria-label="Toggle navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }"> 200 <span class="navbar-toggler-icon"></span> 201</button> 202 <div class="collapse navbar-collapse" id="navbarCollapse"> 203 <ul class="navbar-nav navbar-nav-scroll me-auto"> 204 <li class="nav-item"> 205 <a class="nav-link active" href="../qmd/posts.html" rel="" target="" aria-current="page"> 206 <span class="menu-text"><span class="red-text"><i class="bi-signpost-split " style="" role="img" aria-hidden="true"></i></span> Posts</span></a> 207 </li> 208 <li class="nav-item"> 209 <a class="nav-link" href="../qmd/slides.html" rel="" target=""> 210 <span class="menu-text"><span class="green-text"><i class="bi-easel " style="" role="img" aria-hidden="true"></i></span> Talks</span></a> 211 </li> 212 <li class="nav-item"> 213 <a class="nav-link" href="../qmd/projects.html" rel="" target=""> 214 <span class="menu-text"><span class="blue-text"><i class="bi-braces-asterisk " style="" role="img" aria-hidden="true"></i></span> Projects</span></a> 215 </li> 216</ul> 217 <ul class="navbar-nav navbar-nav-scroll ms-auto"> 218 <li class="nav-item compact"> 219 <a class="nav-link" href="https://github.com/saforem2/saforem2.github.io" rel="" target=""><i class="bi bi-github" role="img" aria-label="GitHub"> 220</i> 221 <span class="menu-text"></span></a> 222 </li> 223</ul> 224 <div class="quarto-navbar-tools"> 225 <a href="" class="quarto-color-scheme-toggle quarto-navigation-tool px-1" onclick="window.quartoToggleColorScheme(); return false;" title="Toggle dark mode"><i class="bi"></i></a> 226</div> 227 </div> <!-- /navcollapse --> 228 </div> <!-- /container-fluid --> 229 </nav> 230</header> 231<!-- content --> 232<div id="quarto-content" class="quarto-container page-columns page-rows-contents page-layout-article page-navbar"> 233<!-- sidebar --> 234<!-- margin-sidebar --> 235 <div id="quarto-margin-sidebar" class="sidebar margin-sidebar"> 236 <nav id="TOC" role="doc-toc" class="toc-active"> 237 <h2 id="toc-title">On this page</h2> 238 239 <ul> 240 <li><a href="#external-links" id="toc-external-links" class="nav-link active" data-scroll-target="#external-links">External Links</a></li> 241 </ul> 242<div class="toc-actions"><div><i class="bi bi-github"></i></div><div class="action-links"><p><a href="https://github.com/saforem2/saforem2.github.io/blob/main/qmd/posts.qmd" class="toc-action">View source</a></p><p><a href="https://github.com/saforem2/saforem2.github.io/edit/main/qmd/posts.qmd" class="toc-action">Edit this page</a></p><p><a href="https://github.com/saforem2/saforem2.github.io/issues/new" class="toc-action">Report an issue</a></p></div></div></nav> 243 </div> 244<!-- main --> 245<main class="content" id="quarto-document-content"> 246 247<header id="title-block-header" class="quarto-title-block default"> 248<div class="quarto-title"> 249<div class="quarto-title-block"><div><h1 class="title">Listing Example</h1><button type="button" class="btn code-tools-button" id="quarto-code-tools-source" data-quarto-source-url="https://github.com/saforem2/saforem2.github.io/blob/main/qmd/posts.qmd"><i class="bi"></i></button></div></div> 250</div> 251 252 253 254<div class="quarto-title-meta"> 255 256 <div> 257 <div class="quarto-title-meta-heading"></div> 258 <div class="quarto-title-meta-contents"> 259 <p><a href="https://samforeman.me">Sam Foreman </a><a href="https://orcid.org/0000-0002-9981-0876"><span class="orcid-green"><i class="ai ai-orcid"></i></span></a> </p> 260 </div> 261 </div> 262 263 <div> 264 <div class="quarto-title-meta-heading"></div> 265 <div class="quarto-title-meta-contents"> 266 <p class="date">September 15, 2023</p> 267 </div> 268 </div> 269 270 271 </div> 272 273 274</header> 275 276<section id="external-links" class="level2"> 277<h2 class="anchored" data-anchor-id="external-links">External Links</h2> 278<ul> 279<li><a href="https://saforem2.github.io/climate-analysis">Intro to HPC Bootcamp @ Nersc: Climate Analysis with ClimRR</a> <span class="citation" data-cites="foreman2023climate">(<a href="#ref-foreman2023climate" role="doc-biblioref">Foreman 2023</a>)</span></li> 280<li><a href="https://saforem2.github.io/l2hmc-qcd"><code>l2hmc-qcd</code></a> <!-- [@foreman2023-l2hmcqcd], [@foreman2021deep]--></li> 281</ul> 282<p>You can review the following documents for additional information:</p> 283<div id="listing-sample-listings" class="quarto-listing quarto-listing-container-table"> 284<div class="listing-actions-group"> 285 <div class="input-group input-group-sm quarto-listing-sort"> 286 <span class="input-group-text"><i class="bi bi-sort-down"></i></span> 287 <select id="listing-sample-listings-sort" class="form-select" aria-label="Order By" onchange="window['quarto-listings']['listing-sample-listings'].sort(this.options[this.selectedIndex].value, { order: this.options[this.selectedIndex].getAttribute('data-direction')})"> 288 <option value="" disabled="" selected="" hidden="">Order By</option> 289 <option value="index" data-direction="asc">Default</option> 290 <option value="listing-date-sort" data-direction="asc"> 291 Date - Oldest 292 </option> 293 <option value="listing-date-sort" data-direction="desc"> 294 Date - Newest 295 </option> 296 <option value="listing-title-sort" data-direction="asc"> 297 Title 298 </option> 299 <option value="listing-author" data-direction="asc"> 300 Author 301 </option> 302 </select> 303 </div> 304 <div class="input-group input-group-sm quarto-listing-filter">
305 <span class="input-group-text"><i class="bi bi-search"></i></span> 306 <input type="text" class="search form-control" placeholder="Filter"> 307 </div> 308</div> 309 310<table class="quarto-listing-table table"> 311<thead> 312<tr> 313<th> 314<a class="sort" data-sort="listing-date-sort" onclick="if (this.classList.contains('sort-asc')) { this.classList.add('sort-desc'); this.classList.remove('sort-asc') } else { this.classList.add('sort-asc'); this.classList.remove('sort-desc')} return false;">Date</a> 315</th> 316<th> 317<a class="sort" data-sort="listing-title-sort" onclick="if (this.classList.contains('sort-asc')) { this.classList.add('sort-desc'); this.classList.remove('sort-asc') } else { this.classList.add('sort-asc'); this.classList.remove('sort-desc')} return false;">Title</a> 318</th> 319<th> 320<a class="sort" data-sort="listing-author" onclick="if (this.classList.contains('sort-asc')) { this.classList.add('sort-desc'); this.classList.remove('sort-asc') } else { this.classList.add('sort-asc'); this.classList.remove('sort-desc')} return false;">Author</a> 321</th> 322</tr> 323</thead> 324<tbody class="list"> 325<tr data-index="0" data-listing-date-sort="1695127555000" data-listing-file-modified-sort="1695127555658" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="3" data-listing-title-sort="Recent Talks" data-listing-filename-sort="slides.qmd"> 326<td> 327<span class="listing-date">Sep 19, 2023</span> 328</td> 329<td> 330<a href="../qmd/slides.html" class="title listing-title">Recent Talks</a> 331</td> 332<td> 333<span class="listing-author">Sam Foreman <a href="https://orcid.org/0000-0002-9981-0876"><span class="orcid-green"><i class="ai ai-orcid"></i></span></a></span> 334</td> 335</tr> 336<tr data-index="1" data-listing-date-sort="1695127096000" data-listing-file-modified-sort="1695127096877" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="2" data-listing-title-sort="(Less) Recent Talks" data-listing-filename-sort="slides-older.qmd"> 337<td> 338<span class="listing-date">Sep 19, 2023</span> 339</td> 340<td> 341<a href="../qmd/slides-older.html" class="title listing-title">(Less) Recent Talks</a> 342</td> 343<td> 344<span class="listing-author">Sam Foreman <a href="https://orcid.org/0000-0002-9981-0876"><span class="orcid-green"><i class="ai ai-orcid"></i></span></a></span> 345</td> 346</tr> 347<tr data-index="2" data-listing-date-sort="1695074654000" data-listing-file-modified-sort="1695074654079" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="14" data-listing-title-sort="Loooooooong Sequence Lengths" data-listing-filename-sort="dsblog.qmd"> 348<td> 349<span class="listing-date">Sep 18, 2023</span> 350</td> 351<td> 352<a href="../qmd/dsblog.html" class="title listing-title">Loooooooong Sequence Lengths</a> 353</td> 354<td> 355<span class="listing-author">Sam Foreman <a href="https://orcid.org/0000-0002-9981-0876"><span class="orcid-green"><i class="ai ai-orcid"></i></span></a></span> 356</td> 357</tr> 358<tr data-index="3" data-listing-date-sort="1694180022000" data-listing-file-modified-sort="1694180022144" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="Projects" data-listing-filename-sort="projects.qmd"> 359<td> 360<span class="listing-date">Sep 8, 2023</span> 361</td> 362<td> 363<a href="../qmd/projects.html" class="title listing-title">Projects</a> 364</td> 365<td> 366<span class="listing-author">Sam Foreman <a href="https://orcid.org/0000-0002-9981-0876"><span class="orcid-green"><i class="ai ai-orcid"></i></span></a></span> 367</td> 368</tr> 369<tr data-index="4" data-listing-date-sort="1692635941000" data-listing-file-modified-sort="1692635941507" data-listing-date-modified-sort="NaN" data-listing-reading-time-sort="1" data-listing-title-sort="How to make dope slides" data-listing-filename-sort="quarto-reveal.qmd"> 370<td> 371<span class="listing-date">Aug 21, 2023</span> 372</td> 373<td> 374<a href="../qmd/blog/quarto-reveal.html" class="title listing-title">How to make dope slides</a> 375</td> 376<td> 377<span class="listing-author">Sam Foreman <a href="https://orcid.org/0000-0002-9981-0876"><span class="orcid-green"><i class="ai ai-orcid"></i></span></a></span> 378</td> 379</tr> 380</tbody> 381 382</table> 383<div class="listing-no-matching d-none"> 384No matching items 385</div> 386</div> 387<p>Learn more about Quarto <a href="https://www.quarto.com">here</a>.</p> 388 389 390 391 392</section> 393
394<a onclick="window.scrollTo(0, 0); return false;" role="button" id="quarto-back-to-top"><i class="bi bi-arrow-up"></i> Back to top</a><div id="quarto-appendix" class="default"><section class="quarto-appendix-contents" role="doc-bibliography"><h2 class="anchored quarto-appendix-heading">References</h2><div id="refs" class="references csl-bib-body hanging-indent" role="list"> 395<div id="ref-foreman2023climate" class="csl-entry" role="listitem"> 396Foreman, Sam. 2023. <span>âEnergy <span>Justice</span> <span>Analysis</span> of <span>Climate</span> <span>Data</span> with <span>ClimRR</span>.â</span> August 7, 2023. <a href="https://saforem2.github.io/climate-analysis">https://saforem2.github.io/climate-analysis</a>. 397</div> 398</div></section><section class="quarto-appendix-contents"><h2 class="anchored quarto-appendix-heading">Citation</h2><div><div class="quarto-appendix-secondary-label">BibTeX citation:</div><pre class="sourceCode code-with-copy quarto-appendix-bibtex"><code class="sourceCode bibtex">@online{foreman2023, 399 author = {Foreman, Sam}, 400 title = {Personal {Website}}, 401 date = {2023-09-15}, 402 url = {https://saforem2.github.io}, 403 langid = {en} 404} 405</code><button title="Copy to Clipboard" class="code-copy-button"><i class="bi"></i></button></pre><div class="quarto-appendix-secondary-label">For attribution, please cite this work as:</div><div id="ref-foreman2023" class="csl-entry quarto-appendix-citeas" role="listitem"> 406Foreman, Sam. 2023. <span>âPersonal Website.â</span> September 15, 2023. 407<a href="https://saforem2.github.io">https://saforem2.github.io</a>. 408</div></div></section></div></main> <!-- /main -->
409<script id="quarto-html-after-body" type="application/javascript"> 410window.document.addEventListener("DOMContentLoaded", function (event) { 411 const toggleBodyColorMode = (bsSheetEl) => { 412 const mode = bsSheetEl.getAttribute("data-mode"); 413 const bodyEl = window.document.querySelector("body"); 414 if (mode === "dark") { 415 bodyEl.classList.add("quarto-dark"); 416 bodyEl.classList.remove("quarto-light"); 417 } else { 418 bodyEl.classList.add("quarto-light"); 419 bodyEl.classList.remove("quarto-dark"); 420 } 421 } 422 const toggleBodyColorPrimary = () => { 423 const bsSheetEl = window.document.querySelector("link#quarto-bootstrap"); 424 if (bsSheetEl) { 425 toggleBodyColorMode(bsSheetEl); 426 } 427 } 428 toggleBodyColorPrimary(); 429 const disableStylesheet = (stylesheets) => { 430 for (let i=0; i < stylesheets.length; i++) { 431 const stylesheet = stylesheets[i]; 432 stylesheet.rel = 'prefetch'; 433 } 434 } 435 const enableStylesheet = (stylesheets) => { 436 for (let i=0; i < stylesheets.length; i++) { 437 const stylesheet = stylesheets[i]; 438 stylesheet.rel = 'stylesheet'; 439 } 440 } 441 const manageTransitions = (selector, allowTransitions) => { 442 const els = window.document.querySelectorAll(selector); 443 for (let i=0; i < els.length; i++) { 444 const el = els[i]; 445 if (allowTransitions) { 446 el.classList.remove('notransition'); 447 } else { 448 el.classList.add('notransition'); 449 } 450 } 451 } 452 const toggleColorMode = (alternate) => { 453 // Switch the stylesheets 454 const alternateStylesheets = window.document.querySelectorAll('link.quarto-color-scheme.quarto-color-alternate'); 455 manageTransitions('#quarto-margin-sidebar .nav-link', false); 456 if (alternate) { 457 enableStylesheet(alternateStylesheets); 458 for (const sheetNode of alternateStylesheets) { 459 if (sheetNode.id === "quarto-bootstrap") { 460 toggleBodyColorMode(sheetNode); 461 } 462 } 463 } else { 464 disableStylesheet(alternateStylesheets); 465 toggleBodyColorPrimary(); 466 } 467 manageTransitions('#quarto-margin-sidebar .nav-link', true); 468 // Switch the toggles 469 const toggles = window.document.querySelectorAll('.quarto-color-scheme-toggle'); 470 for (let i=0; i < toggles.length; i++) { 471 const toggle = toggles[i]; 472 if (toggle) { 473 if (alternate) { 474 toggle.classList.add("alternate"); 475 } else { 476 toggle.classList.remove("alternate"); 477 } 478 } 479 } 480 // Hack to workaround the fact that safari doesn't 481 // properly recolor the scrollbar when toggling (#1455) 482 if (navigator.userAgent.indexOf('Safari') > 0 && navigator.userAgent.indexOf('Chrome') == -1) { 483 manageTransitions("body", false); 484 window.scrollTo(0, 1); 485 setTimeout(() => { 486 window.scrollTo(0, 0); 487 manageTransitions("body", true); 488 }, 40); 489 } 490 } 491 const isFileUrl = () => { 492 return window.location.protocol === 'file:'; 493 } 494 const hasAlternateSentinel = () => { 495 let styleSentinel = getColorSchemeSentinel(); 496 if (styleSentinel !== null) { 497 return styleSentinel === "alternate"; 498 } else { 499 return false; 500 } 501 } 502 const setStyleSentinel = (alternate) => { 503 const value = alternate ? "alternate" : "default"; 504 if (!isFileUrl()) { 505 window.localStorage.setItem("quarto-color-scheme", value); 506 } else { 507 localAlternateSentinel = value; 508 } 509 } 510 const getColorSchemeSentinel = () => { 511 if (!isFileUrl()) { 512 const storageValue = window.localStorage.getItem("quarto-color-scheme"); 513 return storageValue != null ? storageValue : localAlternateSentinel; 514 } else { 515 return localAlternateSentinel; 516 } 517 } 518 let localAlternateSentinel = 'alternate'; 519 // Dark / light mode switch 520 window.quartoToggleColorScheme = () => { 521 // Read the current dark / light value 522 let toAlternate = !hasAlternateSentinel(); 523 toggleColorMode(toAlternate); 524 setStyleSentinel(toAlternate); 525 }; 526 // Ensure there is a toggle, if there isn't float one in the top right 527 if (window.document.querySelector('.quarto-color-scheme-toggle') === null) { 528 const a = window.document.createElement('a'); 529 a.classList.add('top-right'); 530 a.classList.add('quarto-color-scheme-toggle'); 531 a.href = ""; 532 a.onclick = function() { try { window.quartoToggleColorScheme(); } catch {} return false; }; 533 const i = window.document.createElement("i"); 534 i.classList.add('bi'); 535 a.appendChild(i); 536 window.document.body.appendChild(a); 537 } 538 // Switch to dark mode if need be 539 if (hasAlternateSentinel()) { 540 toggleColorMode(true); 541 } else { 542 toggleColorMode(false); 543 } 544 const icon = "î§"; 545 const anchorJS = new window.AnchorJS(); 546 anchorJS.options = { 547 placement: 'right', 548 icon: icon 549 }; 550 anchorJS.add('.anchored'); 551 const isCodeAnnotation = (el) => { 552 for (const clz of el.classList) { 553 if (clz.startsWith('code-annotation-')) { 554 return true; 555 } 556 } 557 return false;
558 } 559 const clipboard = new window.ClipboardJS('.code-copy-button', { 560 text: function(trigger) { 561 const codeEl = trigger.previousElementSibling.cloneNode(true); 562 for (const childEl of codeEl.children) { 563 if (isCodeAnnotation(childEl)) { 564 childEl.remove(); 565 } 566 } 567 return codeEl.innerText; 568 } 569 }); 570 clipboard.on('success', function(e) { 571 // button target 572 const button = e.trigger; 573 // don't keep focus 574 button.blur(); 575 // flash "checked" 576 button.classList.add('code-copy-button-checked'); 577 var currentTitle = button.getAttribute("title"); 578 button.setAttribute("title", "Copied!"); 579 let tooltip; 580 if (window.bootstrap) { 581 button.setAttribute("data-bs-toggle", "tooltip"); 582 button.setAttribute("data-bs-placement", "left"); 583 button.setAttribute("data-bs-title", "Copied!"); 584 tooltip = new bootstrap.Tooltip(button, 585 { trigger: "manual", 586 customClass: "code-copy-button-tooltip", 587 offset: [0, -8]}); 588 tooltip.show(); 589 } 590 setTimeout(function() { 591 if (tooltip) { 592 tooltip.hide(); 593 button.removeAttribute("data-bs-title"); 594 button.removeAttribute("data-bs-toggle"); 595 button.removeAttribute("data-bs-placement"); 596 } 597 button.setAttribute("title", currentTitle); 598 button.classList.remove('code-copy-button-checked'); 599 }, 1000); 600 // clear code selection 601 e.clearSelection(); 602 }); 603 const viewSource = window.document.getElementById('quarto-view-source') || 604 window.document.getElementById('quarto-code-tools-source'); 605 if (viewSource) { 606 const sourceUrl = viewSource.getAttribute("data-quarto-source-url"); 607 viewSource.addEventListener("click", function(e) { 608 if (sourceUrl) { 609 // rstudio viewer pane 610 if (/\bcapabilities=\b/.test(window.location)) { 611 window.open(sourceUrl); 612 } else { 613 window.location.href = sourceUrl; 614 } 615 } else { 616 const modal = new bootstrap.Modal(document.getElementById('quarto-embedded-source-code-modal')); 617 modal.show(); 618 } 619 return false; 620 }); 621 } 622 function toggleCodeHandler(show) { 623 return function(e) { 624 const detailsSrc = window.document.querySelectorAll(".cell > details > .sourceCode"); 625 for (let i=0; i<detailsSrc.length; i++) { 626 const details = detailsSrc[i].parentElement; 627 if (show) { 628 details.open = true; 629 } else { 630 details.removeAttribute("open"); 631 } 632 } 633 const cellCodeDivs = window.document.querySelectorAll(".cell > .sourceCode"); 634 const fromCls = show ? "hidden" : "unhidden"; 635 const toCls = show ? "unhidden" : "hidden"; 636 for (let i=0; i<cellCodeDivs.length; i++) { 637 const codeDiv = cellCodeDivs[i]; 638 if (codeDiv.classList.contains(fromCls)) { 639 codeDiv.classList.remove(fromCls); 640 codeDiv.classList.add(toCls); 641 } 642 } 643 return false; 644 } 645 } 646 const hideAllCode = window.document.getElementById("quarto-hide-all-code"); 647 if (hideAllCode) { 648 hideAllCode.addEventListener("click", toggleCodeHandler(false)); 649 } 650 const showAllCode = window.document.getElementById("quarto-show-all-code"); 651 if (showAllCode) { 652 showAllCode.addEventListener("click", toggleCodeHandler(true)); 653 } 654 function tippyHover(el, contentFn) { 655 const config = { 656 allowHTML: true, 657 content: contentFn, 658 maxWidth: 500, 659 delay: 100, 660 arrow: false, 661 appendTo: function(el) { 662 return el.parentElement; 663 }, 664 interactive: true, 665 interactiveBorder: 10, 666 theme: 'quarto', 667 placement: 'bottom-start' 668 }; 669 window.tippy(el, config); 670 } 671 const noterefs = window.document.querySelectorAll('a[role="doc-noteref"]'); 672 for (var i=0; i<noterefs.length; i++) { 673 const ref = noterefs[i]; 674 tippyHover(ref, function() { 675 // use id or data attribute instead here 676 let href = ref.getAttribute('data-footnote-href') || ref.getAttribute('href'); 677 try { href = new URL(href).hash; } catch {} 678 const id = href.replace(/^#\/?/, ""); 679 const note = window.document.getElementById(id); 680 return note.innerHTML; 681 }); 682 } 683 let selectedAnnoteEl; 684 const selectorForAnnotation = ( cell, annotation) => { 685 let cellAttr = 'data-code-cell="' + cell + '"'; 686 let lineAttr = 'data-code-annotation="' + annotation + '"'; 687 const selector = 'span[' + cellAttr + '][' + lineAttr + ']'; 688 return selector; 689 } 690 const selectCodeLines = (annoteEl) => { 691 const doc = window.document; 692 const targetCell = annoteEl.getAttribute("data-target-cell"); 693 const targetAnnotation = annoteEl.getAttribute("data-target-annotation"); 694 const annoteSpan = window.document.querySelector(selectorForAnnotation(targetCell, targetAnnotation)); 695 const lines = annoteSpan.getAttribute("data-code-lines").split(","); 696 const lineIds = lines.map((line) => { 697 return targetCell + "-" + line; 698 }) 699 let top = null; 700 let height = null; 701 let parent = null; 702 if (lineIds.length > 0) { 703 //compute the position of the single el (top and bottom and make a div) 704 const el = window.document.getElementById(lineIds[0]); 705 top = el.offsetTop; 706 height = el.offsetHeight; 707 parent = el.parentElement.parentElement; 708 if (lineIds.length > 1) { 709 const lastEl = window.document.getElementById(lineIds[lineIds.length - 1]); 710 const bottom = lastEl.offsetTop + lastEl.offsetHeight; 711 height = bottom - top; 712 } 713 if (top !== null && height !== null && parent !== null) { 714 // cook up a div (if necessary) and position it 715 let div = window.document.getElementById("code-annotation-line-highlight"); 716 if (div === null) { 717 div = window.document.createElement("div"); 718 div.setAttribute("id", "code-annotation-line-highlight"); 719 div.style.position = 'absolute'; 720 parent.appendChild(div); 721 } 722 div.style.top = top - 2 + "px"; 723 div.style.height = height + 4 + "px"; 724 let gutterDiv = window.document.getElementById("code-annotation-line-highlight-gutter"); 725 if (gutterDiv === null) { 726 gutterDiv = window.document.createElement("div"); 727 gutterDiv.setAttribute("id", "code-annotation-line-highlight-gutter"); 728 gutterDiv.style.position = 'absolute'; 729 const codeCell = window.document.getElementById(targetCell); 730 const gutter = codeCell.querySelector('.code-annotation-gutter'); 731 gutter.appendChild(gutterDiv); 732 } 733 gutterDiv.style.top = top - 2 + "px"; 734 gutterDiv.style.height = height + 4 + "px"; 735 } 736 selectedAnnoteEl = annoteEl; 737 } 738 }; 739 const unselectCodeLines = () => { 740 const elementsIds = ["code-annotation-line-highlight", "code-annotation-line-highlight-gutter"]; 741 elementsIds.forEach((elId) => { 742 const div = window.document.getElementById(elId); 743 if (div) { 744 div.remove(); 745 } 746 }); 747 selectedAnnoteEl = undefined; 748 }; 749 // Attach click handler to the DT 750 const annoteDls = window.document.querySelectorAll('dt[data-target-cell]'); 751 for (const annoteDlNode of annoteDls) { 752 annoteDlNode.addEventListener('click', (event) => { 753 const clickedEl = event.target; 754 if (clickedEl !== selectedAnnoteEl) { 755 unselectCodeLines(); 756 const activeEl = window.document.querySelector('dt[data-target-cell].code-annotation-active'); 757 if (activeEl) { 758 activeEl.classList.remove('code-annotation-active'); 759 } 760 selectCodeLines(clickedEl); 761 clickedEl.classList.add('code-annotation-active'); 762 } else { 763 // Unselect the line 764 unselectCodeLines(); 765 clickedEl.classList.remove('code-annotation-active'); 766 } 767 }); 768 } 769 const findCites = (el) => { 770 const parentEl = el.parentElement; 771 if (parentEl) { 772 const cites = parentEl.dataset.cites; 773 if (cites) { 774 return { 775 el, 776 cites: cites.split(' ') 777 }; 778 } else { 779 return findCites(el.parentElement) 780 } 781 } else { 782 return undefined; 783 } 784 }; 785 var bibliorefs = window.document.querySelectorAll('a[role="doc-biblioref"]'); 786 for (var i=0; i<bibliorefs.length; i++) { 787 const ref = bibliorefs[i]; 788 const citeInfo = findCites(ref); 789 if (citeInfo) { 790 tippyHover(citeInfo.el, function() { 791 var popup = window.document.createElement('div');
792 citeInfo.cites.forEach(function(cite) { 793 var citeDiv = window.document.createElement('div'); 794 citeDiv.classList.add('hanging-indent'); 795 citeDiv.classList.add('csl-entry'); 796 var biblioDiv = window.document.getElementById('ref-' + cite); 797 if (biblioDiv) { 798 citeDiv.innerHTML = biblioDiv.innerHTML; 799 } 800 popup.appendChild(citeDiv); 801 }); 802 return popup.innerHTML; 803 }); 804 } 805 } 806}); 807</script>
807 808</div> <!-- /content --> 809<footer class="footer"> 810 <div class="nav-footer"> 811 <div class="nav-footer-left"><a href="saforem2.github.io">saforem2.github.io</a></div> 812 <div class="nav-footer-center"> 813 <ul class="footer-items list-unstyled"> 814 <li class="nav-item"> 815 <a class="nav-link" href="https://samforeman.me"><i class="fa-solid fa-home" aria-label="home"></i></a> 816 </li> 817 <li class="nav-item compact"> 818 <a class="nav-link" href="https://github.com/saforem2"> 819 <i class="bi bi-github" role="img"> 820</i> 821 </a> 822 </li> 823 <li class="nav-item compact"> 824 <a class="nav-link" href="https://twitter.com/saforem2"> 825 <i class="bi bi-twitter" role="img"> 826</i> 827 </a> 828 </li> 829 <li class="nav-item"> 830 <a class="nav-link" href="mailto:///[email protected]"><i class="fa-regular fa-paper-plane" aria-label="paper-plane"></i></a> 831 </li> 832 <li class="nav-item"> 833 <a class="nav-link" href="https://www.twitter.com/saforem2"><i class="fa-brands fa-twitter" aria-label="twitter"></i></a> 834 </li> 835 <li class="nav-item"> 836 <a class="nav-link" href="https://scholar.google.com/citations?user=vV_1zDwAAAAJ&hl=en"><i class="ai ai-google-scholar"></i></a> 837 </li> 838 <li class="nav-item"> 839 <a class="nav-link" href="https://orcid.org/0000-0002-9981-0876"><i class="ai ai-orcid"></i></a> 840 </li> 841 <li class="nav-item"> 842 <a class="nav-link" href="https://www.last.fm/user/saforem2"><i class="fa-brands fa-lastfm" aria-label="lastfm"></i></a> 843 </li> 844 <li class="nav-item"> 845 <a class="nav-link" href="https://open.spotify.com/user/saforem2"><i class="fa-brands fa-spotify" aria-label="spotify"></i></a> 846 </li> 847 <li class="nav-item"> 848 <a class="nav-link" href="https://www.instagram.com/saforem2"><i class="fa-brands fa-instagram" aria-label="instagram"></i></a> 849 </li> 850 <li class="nav-item"> 851 <a class="nav-link" href="https://linkedin.com/in/saforem2"><i class="fa-brands fa-linkedin" aria-label="linkedin"></i></a> 852 </li> 853</ul> 854 </div> 855 <div class="nav-footer-right">Copyright 2023, Sam Foreman</div> 856 </div> 857</footer> 858 859 860 861</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.