diff --git a/_site/core/week-11/example.html b/_site/core/week-11/example.html
new file mode 100644
index 0000000..6aa1d88
--- /dev/null
+++ b/_site/core/week-11/example.html
@@ -0,0 +1,666 @@
+
+
+
@@ -120,7 +115,7 @@
Data Analysis for the Group Research Project
Published
-
30 September, 2023
+
6 October, 2023
@@ -248,23 +243,9 @@
Data Analysis for the Group Research Project
icon: icon
};
anchorJS.add('.anchored');
- const isCodeAnnotation = (el) => {
- for (const clz of el.classList) {
- if (clz.startsWith('code-annotation-')) {
- return true;
- }
- }
- return false;
- }
const clipboard = new window.ClipboardJS('.code-copy-button', {
- text: function(trigger) {
- const codeEl = trigger.previousElementSibling.cloneNode(true);
- for (const childEl of codeEl.children) {
- if (isCodeAnnotation(childEl)) {
- childEl.remove();
- }
- }
- return codeEl.innerText;
+ target: function(trigger) {
+ return trigger.previousElementSibling;
}
});
clipboard.on('success', function(e) {
@@ -329,92 +310,6 @@
Data Analysis for the Group Research Project
return note.innerHTML;
});
}
- let selectedAnnoteEl;
- const selectorForAnnotation = ( cell, annotation) => {
- let cellAttr = 'data-code-cell="' + cell + '"';
- let lineAttr = 'data-code-annotation="' + annotation + '"';
- const selector = 'span[' + cellAttr + '][' + lineAttr + ']';
- return selector;
- }
- const selectCodeLines = (annoteEl) => {
- const doc = window.document;
- const targetCell = annoteEl.getAttribute("data-target-cell");
- const targetAnnotation = annoteEl.getAttribute("data-target-annotation");
- const annoteSpan = window.document.querySelector(selectorForAnnotation(targetCell, targetAnnotation));
- const lines = annoteSpan.getAttribute("data-code-lines").split(",");
- const lineIds = lines.map((line) => {
- return targetCell + "-" + line;
- })
- let top = null;
- let height = null;
- let parent = null;
- if (lineIds.length > 0) {
- //compute the position of the single el (top and bottom and make a div)
- const el = window.document.getElementById(lineIds[0]);
- top = el.offsetTop;
- height = el.offsetHeight;
- parent = el.parentElement.parentElement;
- if (lineIds.length > 1) {
- const lastEl = window.document.getElementById(lineIds[lineIds.length - 1]);
- const bottom = lastEl.offsetTop + lastEl.offsetHeight;
- height = bottom - top;
- }
- if (top !== null && height !== null && parent !== null) {
- // cook up a div (if necessary) and position it
- let div = window.document.getElementById("code-annotation-line-highlight");
- if (div === null) {
- div = window.document.createElement("div");
- div.setAttribute("id", "code-annotation-line-highlight");
- div.style.position = 'absolute';
- parent.appendChild(div);
- }
- div.style.top = top - 2 + "px";
- div.style.height = height + 4 + "px";
- let gutterDiv = window.document.getElementById("code-annotation-line-highlight-gutter");
- if (gutterDiv === null) {
- gutterDiv = window.document.createElement("div");
- gutterDiv.setAttribute("id", "code-annotation-line-highlight-gutter");
- gutterDiv.style.position = 'absolute';
- const codeCell = window.document.getElementById(targetCell);
- const gutter = codeCell.querySelector('.code-annotation-gutter');
- gutter.appendChild(gutterDiv);
- }
- gutterDiv.style.top = top - 2 + "px";
- gutterDiv.style.height = height + 4 + "px";
- }
- selectedAnnoteEl = annoteEl;
- }
- };
- const unselectCodeLines = () => {
- const elementsIds = ["code-annotation-line-highlight", "code-annotation-line-highlight-gutter"];
- elementsIds.forEach((elId) => {
- const div = window.document.getElementById(elId);
- if (div) {
- div.remove();
- }
- });
- selectedAnnoteEl = undefined;
- };
- // Attach click handler to the DT
- const annoteDls = window.document.querySelectorAll('dt[data-target-cell]');
- for (const annoteDlNode of annoteDls) {
- annoteDlNode.addEventListener('click', (event) => {
- const clickedEl = event.target;
- if (clickedEl !== selectedAnnoteEl) {
- unselectCodeLines();
- const activeEl = window.document.querySelector('dt[data-target-cell].code-annotation-active');
- if (activeEl) {
- activeEl.classList.remove('code-annotation-active');
- }
- selectCodeLines(clickedEl);
- clickedEl.classList.add('code-annotation-active');
- } else {
- // Unselect the line
- unselectCodeLines();
- clickedEl.classList.remove('code-annotation-active');
- }
- });
- }
const findCites = (el) => {
const parentEl = el.parentElement;
if (parentEl) {
@@ -453,12 +348,12 @@
Data Analysis for the Group Research Project
}
}
var localhostRegex = new RegExp(/^(?:http|https):\/\/localhost\:?[0-9]*\//);
- var filterRegex = new RegExp("^(?:http:|https:)\/\/3mmarand\.github\.io\/BIO00088H-data");
+ var filterRegex = new RegExp(/^(?:http:|https:)\/\/3mmarand\.github\.io\/BIO00088H-data/);
var isInternal = (href) => {
return filterRegex.test(href) || localhostRegex.test(href);
}
// Inspect non-navigation links and adorn them if external
- var links = window.document.querySelectorAll('a[href]:not(.nav-link):not(.navbar-brand):not(.toc-action):not(.sidebar-link):not(.sidebar-item-toggle):not(.pagination-link):not(.no-external):not([aria-hidden]):not(.dropdown-item)');
+ var links = window.document.querySelectorAll('a:not(.nav-link):not(.navbar-brand):not(.toc-action):not(.sidebar-link):not(.sidebar-item-toggle):not(.pagination-link):not(.no-external):not([aria-hidden]):not(.dropdown-item)');
for (var i=0; i
Data Analysis for the Group Research Project