From 70aacb3d75ff2c3f321ee7ac4ae08d6b7aa974ef Mon Sep 17 00:00:00 2001 From: Trance-0 <60459821+Trance-0@users.noreply.github.com> Date: Mon, 24 Nov 2025 15:22:30 -0600 Subject: [PATCH] update? --- content/CSE332S/_meta.js | 80 ++++++++++++++++++------- content/CSE347/_meta.js | 75 +++++++++++++++++++----- content/CSE442T/_meta.js | 88 ++++++++++++++++++---------- content/CSE510/_meta.js | 87 +++++++++++++++++++--------- content/CSE5313/_meta.js | 87 +++++++++++++++++++--------- content/CSE5519/_meta.js | 119 ++++++++++++++++++-------------------- content/CSE559A/_meta.js | 89 ++++++++++++++++++---------- distribute/create_meta.py | 46 +++++++++++++++ distribute/prebuild.sh | 2 +- 9 files changed, 457 insertions(+), 216 deletions(-) create mode 100644 distribute/create_meta.py diff --git a/content/CSE332S/_meta.js b/content/CSE332S/_meta.js index b906529..89844fd 100644 --- a/content/CSE332S/_meta.js +++ b/content/CSE332S/_meta.js @@ -1,23 +1,61 @@ export default { - index: "Course Description", - "---":{ - type: 'separator' + menu: { + title: 'Home', + type: 'menu', + items: { + index: { + title: 'Home', + href: '/' + }, + about: { + title: 'About', + href: '/about' + }, + contact: { + title: 'Contact Me', + href: '/contact' + } + }, }, - CSE332S_L1: "Object-Oriented Programming Lab (Lecture 1)", - CSE332S_L2: "Object-Oriented Programming Lab (Lecture 2)", - CSE332S_L3: "Object-Oriented Programming Lab (Lecture 3)", - CSE332S_L4: "Object-Oriented Programming Lab (Lecture 4)", - CSE332S_L5: "Object-Oriented Programming Lab (Lecture 5)", - CSE332S_L6: "Object-Oriented Programming Lab (Lecture 6)", - CSE332S_L7: "Object-Oriented Programming Lab (Lecture 7)", - CSE332S_L8: "Object-Oriented Programming Lab (Lecture 8)", - CSE332S_L9: "Object-Oriented Programming Lab (Lecture 9)", - CSE332S_L10: "Object-Oriented Programming Lab (Lecture 10)", - CSE332S_L11: "Object-Oriented Programming Lab (Lecture 11)", - CSE332S_L12: "Object-Oriented Programming Lab (Lecture 12)", - CSE332S_L13: "Object-Oriented Programming Lab (Lecture 13)", - CSE332S_L14: "Object-Oriented Programming Lab (Lecture 14)", - CSE332S_L15: "Object-Oriented Programming Lab (Lecture 15)", - CSE332S_L16: "Object-Oriented Programming Lab (Lecture 16)", - CSE332S_L17: "Object-Oriented Programming Lab (Lecture 17)" -} + Math3200'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math429'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4111'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4121'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4201'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math416'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math401'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE332S'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE347'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE442T'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5313'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE510'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE559A'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5519'CSE332S_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Swap: { + display: 'hidden', + theme:{ + timestamp: true, + } + }, + index: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + }, + about: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + }, + contact: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + } + } \ No newline at end of file diff --git a/content/CSE347/_meta.js b/content/CSE347/_meta.js index 73da9a7..e3ffe3c 100644 --- a/content/CSE347/_meta.js +++ b/content/CSE347/_meta.js @@ -1,18 +1,61 @@ export default { - index: "Course Description", - "---":{ - type: 'separator' + menu: { + title: 'Home', + type: 'menu', + items: { + index: { + title: 'Home', + href: '/' + }, + about: { + title: 'About', + href: '/about' + }, + contact: { + title: 'Contact Me', + href: '/contact' + } + }, }, - Exam_reviews: "Exam reviews", - CSE347_L1: "Analysis of Algorithms (Lecture 1)", - CSE347_L2: "Analysis of Algorithms (Lecture 2)", - CSE347_L3: "Analysis of Algorithms (Lecture 3)", - CSE347_L4: "Analysis of Algorithms (Lecture 4)", - CSE347_L5: "Analysis of Algorithms (Lecture 5)", - CSE347_L6: "Analysis of Algorithms (Lecture 6)", - CSE347_L7: "Analysis of Algorithms (Lecture 7)", - CSE347_L8: "Analysis of Algorithms (Lecture 8)", - CSE347_L9: "Analysis of Algorithms (Lecture 9)", - CSE347_L10: "Analysis of Algorithms (Lecture 10)", - CSE347_L11: "Analysis of Algorithms (Lecture 11)" -} \ No newline at end of file + Math3200'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math429'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4111'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4121'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4201'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math416'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math401'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE332S'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE347'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE442T'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5313'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE510'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE559A'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5519'CSE347_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Swap: { + display: 'hidden', + theme:{ + timestamp: true, + } + }, + index: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + }, + about: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + }, + contact: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + } + } \ No newline at end of file diff --git a/content/CSE442T/_meta.js b/content/CSE442T/_meta.js index 172950f..bc3f628 100644 --- a/content/CSE442T/_meta.js +++ b/content/CSE442T/_meta.js @@ -1,31 +1,61 @@ export default { - index: "Course Description", - "---":{ - type: 'separator' + menu: { + title: 'Home', + type: 'menu', + items: { + index: { + title: 'Home', + href: '/' + }, + about: { + title: 'About', + href: '/about' + }, + contact: { + title: 'Contact Me', + href: '/contact' + } + }, }, - Exam_reviews: "Exam reviews", - CSE442T_L1: "Introduction to Cryptography (Lecture 1)", - CSE442T_L2: "Introduction to Cryptography (Lecture 2)", - CSE442T_L3: "Introduction to Cryptography (Lecture 3)", - CSE442T_L4: "Introduction to Cryptography (Lecture 4)", - CSE442T_L5: "Introduction to Cryptography (Lecture 5)", - CSE442T_L6: "Introduction to Cryptography (Lecture 6)", - CSE442T_L7: "Introduction to Cryptography (Lecture 7)", - CSE442T_L8: "Introduction to Cryptography (Lecture 8)", - CSE442T_L9: "Introduction to Cryptography (Lecture 9)", - CSE442T_L10: "Introduction to Cryptography (Lecture 10)", - CSE442T_L11: "Introduction to Cryptography (Lecture 11)", - CSE442T_L12: "Introduction to Cryptography (Lecture 12)", - CSE442T_L13: "Introduction to Cryptography (Lecture 13)", - CSE442T_L14: "Introduction to Cryptography (Lecture 14)", - CSE442T_L15: "Introduction to Cryptography (Lecture 15)", - CSE442T_L16: "Introduction to Cryptography (Lecture 16)", - CSE442T_L17: "Introduction to Cryptography (Lecture 17)", - CSE442T_L18: "Introduction to Cryptography (Lecture 18)", - CSE442T_L19: "Introduction to Cryptography (Lecture 19)", - CSE442T_L20: "Introduction to Cryptography (Lecture 20)", - CSE442T_L21: "Introduction to Cryptography (Lecture 21)", - CSE442T_L22: "Introduction to Cryptography (Lecture 22)", - CSE442T_L23: "Introduction to Cryptography (Lecture 23)", - CSE442T_L24: "Introduction to Cryptography (Lecture 24)" -} + Math3200'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math429'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4111'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4121'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4201'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math416'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math401'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE332S'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE347'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE442T'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5313'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE510'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE559A'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5519'CSE442T_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Swap: { + display: 'hidden', + theme:{ + timestamp: true, + } + }, + index: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + }, + about: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + }, + contact: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + } + } \ No newline at end of file diff --git a/content/CSE510/_meta.js b/content/CSE510/_meta.js index c0a1ecd..e9d6ade 100644 --- a/content/CSE510/_meta.js +++ b/content/CSE510/_meta.js @@ -1,30 +1,61 @@ export default { - index: "Course Description", - "---":{ - type: 'separator' + menu: { + title: 'Home', + type: 'menu', + items: { + index: { + title: 'Home', + href: '/' + }, + about: { + title: 'About', + href: '/about' + }, + contact: { + title: 'Contact Me', + href: '/contact' + } + }, }, - CSE510_L1: "CSE510 Deep Reinforcement Learning (Lecture 1)", - CSE510_L2: "CSE510 Deep Reinforcement Learning (Lecture 2)", - CSE510_L3: "CSE510 Deep Reinforcement Learning (Lecture 3)", - CSE510_L4: "CSE510 Deep Reinforcement Learning (Lecture 4)", - CSE510_L5: "CSE510 Deep Reinforcement Learning (Lecture 5)", - CSE510_L6: "CSE510 Deep Reinforcement Learning (Lecture 6)", - CSE510_L7: "CSE510 Deep Reinforcement Learning (Lecture 7)", - CSE510_L8: "CSE510 Deep Reinforcement Learning (Lecture 8)", - CSE510_L9: "CSE510 Deep Reinforcement Learning (Lecture 9)", - CSE510_L10: "CSE510 Deep Reinforcement Learning (Lecture 10)", - CSE510_L11: "CSE510 Deep Reinforcement Learning (Lecture 11)", - CSE510_L12: "CSE510 Deep Reinforcement Learning (Lecture 12)", - CSE510_L13: "CSE510 Deep Reinforcement Learning (Lecture 13)", - CSE510_L14: "CSE510 Deep Reinforcement Learning (Lecture 14)", - CSE510_L15: "CSE510 Deep Reinforcement Learning (Lecture 15)", - CSE510_L16: "CSE510 Deep Reinforcement Learning (Lecture 16)", - CSE510_L17: "CSE510 Deep Reinforcement Learning (Lecture 17)", - CSE510_L18: "CSE510 Deep Reinforcement Learning (Lecture 18)", - CSE510_L19: "CSE510 Deep Reinforcement Learning (Lecture 19)", - CSE510_L20: "CSE510 Deep Reinforcement Learning (Lecture 20)", - CSE510_L21: "CSE510 Deep Reinforcement Learning (Lecture 21)", - CSE510_L22: "CSE510 Deep Reinforcement Learning (Lecture 22)", - CSE510_L23: "CSE510 Deep Reinforcement Learning (Lecture 23)", - CSE510_L24: "CSE510 Deep Reinforcement Learning (Lecture 24)", -} \ No newline at end of file + Math3200'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math429'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4111'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4121'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4201'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math416'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math401'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE332S'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE347'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE442T'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5313'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE510'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE559A'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5519'CSE510_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Swap: { + display: 'hidden', + theme:{ + timestamp: true, + } + }, + index: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + }, + about: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + }, + contact: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + } + } \ No newline at end of file diff --git a/content/CSE5313/_meta.js b/content/CSE5313/_meta.js index 0bd94ea..3e4534d 100644 --- a/content/CSE5313/_meta.js +++ b/content/CSE5313/_meta.js @@ -1,30 +1,61 @@ export default { - index: "Course Description", - "---":{ - type: 'separator' + menu: { + title: 'Home', + type: 'menu', + items: { + index: { + title: 'Home', + href: '/' + }, + about: { + title: 'About', + href: '/about' + }, + contact: { + title: 'Contact Me', + href: '/contact' + } + }, }, - Exam_reviews: "Exam reviews", - CSE5313_L1: "CSE5313 Coding and information theory for data science (Lecture 1)", - CSE5313_L2: "CSE5313 Coding and information theory for data science (Lecture 2)", - CSE5313_L3: "CSE5313 Coding and information theory for data science (Lecture 3)", - CSE5313_L4: "CSE5313 Coding and information theory for data science (Lecture 4)", - CSE5313_L5: "CSE5313 Coding and information theory for data science (Lecture 5)", - CSE5313_L6: "CSE5313 Coding and information theory for data science (Lecture 6)", - CSE5313_L7: "CSE5313 Coding and information theory for data science (Lecture 7)", - CSE5313_L8: "CSE5313 Coding and information theory for data science (Lecture 8)", - CSE5313_L9: "CSE5313 Coding and information theory for data science (Lecture 9)", - CSE5313_L10: "CSE5313 Coding and information theory for data science (Recitation 10)", - CSE5313_L11: "CSE5313 Coding and information theory for data science (Recitation 11)", - CSE5313_L12: "CSE5313 Coding and information theory for data science (Lecture 12)", - CSE5313_L13: "CSE5313 Coding and information theory for data science (Lecture 13)", - CSE5313_L14: "CSE5313 Coding and information theory for data science (Lecture 14)", - CSE5313_L15: "CSE5313 Coding and information theory for data science (Lecture 15)", - CSE5313_L16: "CSE5313 Coding and information theory for data science (Exam Review)", - CSE5313_L17: "CSE5313 Coding and information theory for data science (Lecture 17)", - CSE5313_L18: "CSE5313 Coding and information theory for data science (Lecture 18)", - CSE5313_L19: "CSE5313 Coding and information theory for data science (Lecture 19)", - CSE5313_L20: "CSE5313 Coding and information theory for data science (Lecture 20)", - CSE5313_L21: "CSE5313 Coding and information theory for data science (Lecture 21)", - CSE5313_L22: "CSE5313 Coding and information theory for data science (Lecture 22)", - CSE5313_L23: "CSE5313 Coding and information theory for data science (Lecture 23)", -} \ No newline at end of file + Math3200'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math429'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4111'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4121'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4201'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math416'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math401'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE332S'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE347'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE442T'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5313'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE510'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE559A'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5519'CSE5313_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Swap: { + display: 'hidden', + theme:{ + timestamp: true, + } + }, + index: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + }, + about: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + }, + contact: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + } + } \ No newline at end of file diff --git a/content/CSE5519/_meta.js b/content/CSE5519/_meta.js index a44dc85..d77c23f 100644 --- a/content/CSE5519/_meta.js +++ b/content/CSE5519/_meta.js @@ -1,68 +1,61 @@ export default { - index: "Course Description", - "---":{ - type: 'separator' + menu: { + title: 'Home', + type: 'menu', + items: { + index: { + title: 'Home', + href: '/' + }, + about: { + title: 'About', + href: '/about' + }, + contact: { + title: 'Contact Me', + href: '/contact' + } + }, }, - CSE5519_L1: "CSE5519 Advances in Computer Vision (Lecture 1)", - CSE5519_L2: "CSE5519 Advances in Computer Vision (Lecture 2)", - CSE5519_L3: "CSE5519 Advances in Computer Vision (Lecture 3)", - "---":{ - type: 'separator' + Math3200'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math429'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4111'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4121'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4201'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math416'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math401'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE332S'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE347'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE442T'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5313'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE510'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE559A'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5519'CSE5519_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Swap: { + display: 'hidden', + theme:{ + timestamp: true, + } }, - CSE5519_C1: "CSE5519 Advances in Computer Vision (Topic C: 2021 and before: Neural Rendering)", - CSE5519_F1: "CSE5519 Advances in Computer Vision (Topic F: 2021 and before: Representation Learning)", - CSE5519_B1: "CSE5519 Advances in Computer Vision (Topic B: 2021 and before: Vision-Language Models)", - CSE5519_D1: "CSE5519 Advances in Computer Vision (Topic D: 2021 and before: Image and Video Generation)", - CSE5519_A1: "CSE5519 Advances in Computer Vision (Topic A: 2021 and before: Semantic Segmentation)", - CSE5519_E1: "CSE5519 Advances in Computer Vision (Topic E: 2021 and before: Deep Learning for Geometric Computer Vision)", - CSE5519_I1: "CSE5519 Advances in Computer Vision (Topic I: 2021 and before: Embodied Computer Vision and Robotics)", - CSE5519_J1: "CSE5519 Advances in Computer Vision (Topic J: 2021 and before: Open-Vocabulary Object Detection)", - "---":{ - type: 'separator' + index: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } }, - CSE5519_H2: "CSE5519 Advances in Computer Vision (Topic H: 2022 and before: Safety, Robustness, and Evaluation of CV Models)", - CSE5519_G2: "CSE5519 Advances in Computer Vision (Topic G: 2022 and before: Correspondence Estimation and Structure from Motion)", - CSE5519_A2: "CSE5519 Advances in Computer Vision (Topic A: 2022: Semantic Segmentation)", - CSE5519_E2: "CSE5519 Advances in Computer Vision (Topic E: 2022: Deep Learning for Geometric Computer Vision)", - CSE5519_C2: "CSE5519 Advances in Computer Vision (Topic C: 2022: Neural Rendering)", - CSE5519_F2: "CSE5519 Advances in Computer Vision (Topic F: 2022: Representation Learning)", - CSE5519_B2: "CSE5519 Advances in Computer Vision (Topic B: 2022: Vision-Language Models)", - CSE5519_D2: "CSE5519 Advances in Computer Vision (Topic D: 2022: Image and Video Generation)", - CSE5519_I2: "CSE5519 Advances in Computer Vision (Topic I: 2022: Embodied Computer Vision and Robotics)", - CSE5519_J2: "CSE5519 Advances in Computer Vision (Topic J: 2022: Open-Vocabulary Object Detection)", - "---":{ - type: 'separator' + about: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } }, - CSE5519_H3: "CSE5519 Advances in Computer Vision (Topic H: 2023: Safety, Robustness, and Evaluation of CV Models)", - CSE5519_B3: "CSE5519 Advances in Computer Vision (Topic B: 2023: Vision-Language Models)", - CSE5519_G3: "CSE5519 Advances in Computer Vision (Topic G: 2023: Correspondence Estimation and Structure from Motion)", - CSE5519_C3: "CSE5519 Advances in Computer Vision (Topic C: 2023: Neural Rendering)", - CSE5519_D3: "CSE5519 Advances in Computer Vision (Topic D: 2023: Image and Video Generation)", - CSE5519_E3: "CSE5519 Advances in Computer Vision (Topic E: 2023: Deep Learning for Geometric Computer Vision)", - CSE5519_F3: "CSE5519 Advances in Computer Vision (Topic F: 2023: Representation Learning)", - CSE5519_I3: "CSE5519 Advances in Computer Vision (Topic I: 2023 - 2024: Embodied Computer Vision and Robotics)", - CSE5519_J3: "CSE5519 Advances in Computer Vision (Topic J: 2023 - 2024: Open-Vocabulary Object Detection)", - CSE5519_A3: "CSE5519 Advances in Computer Vision (Topic A: 2023 - 2024: Semantic Segmentation)", - "---":{ - type: 'separator' - }, - CSE5519_G4: "CSE5519 Advances in Computer Vision (Topic G: 2024: Correspondence Estimation and Structure from Motion)", - CSE5519_F4: "CSE5519 Advances in Computer Vision (Topic F: 2024: Representation Learning)", - CSE5519_D4: "CSE5519 Advances in Computer Vision (Topic D: 2024: Image and Video Generation)", - CSE5519_E4: "CSE5519 Advances in Computer Vision (Topic E: 2024: Deep Learning for Geometric Computer Vision)", - CSE5519_B4: "CSE5519 Advances in Computer Vision (Topic B: 2024: Vision-Language Models)", - CSE5519_H4: "CSE5519 Advances in Computer Vision (Topic H: 2024: Safety, Robustness, and Evaluation of CV Models)", - CSE5519_C4: "CSE5519 Advances in Computer Vision (Topic C: 2024 - 2025: Neural Rendering)", - "---":{ - type: 'separator' - }, - CSE5519_F5: "CSE5519 Advances in Computer Vision (Topic F: 2025: Representation Learning)", - CSE5519_B5: "CSE5519 Advances in Computer Vision (Topic B: 2025: Vision-Language Models)", - CSE5519_D5: "CSE5519 Advances in Computer Vision (Topic D: 2025: Image and Video Generation)", - CSE5519_E5: "CSE5519 Advances in Computer Vision (Topic E: 2025: Deep Learning for Geometric Computer Vision)", - CSE5519_A4: "CSE5519 Advances in Computer Vision (Topic A: 2025: Semantic Segmentation)", - CSE5519_G5: "CSE5519 Advances in Computer Vision (Topic G: 2025: Correspondence Estimation and Structure from Motion)", - CSE5519_I4: "CSE5519 Advances in Computer Vision (Topic I: 2025: Embodied Computer Vision and Robotics)", - CSE5519_H5: "CSE5519 Advances in Computer Vision (Topic H: 2025: Safety, Robustness, and Evaluation of CV Models)", - CSE5519_J5: "CSE5519 Advances in Computer Vision (Topic J: 2025: Open-Vocabulary Object Detection)", -} \ No newline at end of file + contact: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + } + } \ No newline at end of file diff --git a/content/CSE559A/_meta.js b/content/CSE559A/_meta.js index be55f0a..dbf0a81 100644 --- a/content/CSE559A/_meta.js +++ b/content/CSE559A/_meta.js @@ -1,32 +1,61 @@ export default { - index: "Course Description", - "---":{ - type: 'separator' + menu: { + title: 'Home', + type: 'menu', + items: { + index: { + title: 'Home', + href: '/' + }, + about: { + title: 'About', + href: '/about' + }, + contact: { + title: 'Contact Me', + href: '/contact' + } + }, }, - CSE559A_L1: "Computer Vision (Lecture 1)", - CSE559A_L2: "Computer Vision (Lecture 2)", - CSE559A_L3: "Computer Vision (Lecture 3)", - CSE559A_L4: "Computer Vision (Lecture 4)", - CSE559A_L5: "Computer Vision (Lecture 5)", - CSE559A_L6: "Computer Vision (Lecture 6)", - CSE559A_L7: "Computer Vision (Lecture 7)", - CSE559A_L8: "Computer Vision (Lecture 8)", - CSE559A_L9: "Computer Vision (Lecture 9)", - CSE559A_L10: "Computer Vision (Lecture 10)", - CSE559A_L11: "Computer Vision (Lecture 11)", - CSE559A_L12: "Computer Vision (Lecture 12)", - CSE559A_L13: "Computer Vision (Lecture 13)", - CSE559A_L14: "Computer Vision (Lecture 14)", - CSE559A_L15: "Computer Vision (Lecture 15)", - CSE559A_L16: "Computer Vision (Lecture 16)", - CSE559A_L17: "Computer Vision (Lecture 17)", - CSE559A_L18: "Computer Vision (Lecture 18)", - CSE559A_L19: "Computer Vision (Lecture 19)", - CSE559A_L20: "Computer Vision (Lecture 20)", - CSE559A_L21: "Computer Vision (Lecture 21)", - CSE559A_L22: "Computer Vision (Lecture 22)", - CSE559A_L23: "Computer Vision (Lecture 23)", - CSE559A_L24: "Computer Vision (Lecture 24)", - CSE559A_L25: "Computer Vision (Lecture 25)", - CSE559A_L26: "Computer Vision (Lecture 26)", -} + Math3200'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math429'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4111'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4121'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math4201'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math416'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Math401'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE332S'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE347'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE442T'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5313'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE510'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE559A'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + CSE5519'CSE559A_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)' + Swap: { + display: 'hidden', + theme:{ + timestamp: true, + } + }, + index: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + }, + about: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + }, + contact: { + display: 'hidden', + theme:{ + sidebar: false, + timestamp: true, + } + } + } \ No newline at end of file diff --git a/distribute/create_meta.py b/distribute/create_meta.py new file mode 100644 index 0000000..eb451d0 --- /dev/null +++ b/distribute/create_meta.py @@ -0,0 +1,46 @@ +""" +This script is used to generate _meta.js file for microservice deployment for this project. + +We will use nginx to route traffic to different microservices. +Each microservice will have its own _meta.js file, run prebuild.sh to replace _meta.js +before building the microservice. + +This script should run when you add a new microservice (add course for your note) + +""" + +# easy python script to create meta file for each subdirectory to replace + +import os +import json +from pathlib import Path +import re + +root_dir=Path.joinpath(Path(os.path.dirname(os.path.abspath(__file__))).parent, 'content') +# consider each subdirectory as a course +sub_dirs=os.listdir(root_dir) +# exclude .md and _meta.js +exclude_reg=r'(\.md|_meta.js)' +sub_dirs=[x for x in sub_dirs if not re.search(exclude_reg, x)] +print (sub_dirs) +meta_file = os.path.join(root_dir, '_meta.js') + +# auto generate meta files +course_match=r"(\w+\d+.*)\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)" +link_parse=r"\1_link: \2\n href: '/\1'\n \3" +link_match=r"_link\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)" +course_parse=r":\1\n theme:{\n timestamp: true,\n }\n \2" + +# copy new _meta.js +for sub_dir in sub_dirs: + sub_meta_file=os.path.join(root_dir, sub_dir, '_meta.js') + full_text=Path(meta_file).read_text() + matches=re.findall(course_match, full_text) + new_text=re.sub(course_match, link_parse, full_text) + print(f'parsed link file: {new_text}') + cur_link_match=repr(sub_dir+link_match) + cur_course_match=repr(sub_dir+course_parse) + print(f'new reg: {cur_link_match}, {cur_course_match}') + new_text=re.sub(link_match, cur_link_match, new_text) + print (f'parsed course file: {new_text}') + # Path(sub_meta_file).write_text(new_text) diff --git a/distribute/prebuild.sh b/distribute/prebuild.sh index 70edb71..c6dfe9b 100644 --- a/distribute/prebuild.sh +++ b/distribute/prebuild.sh @@ -11,7 +11,7 @@ $first =~ s@(\w+\d+.*)\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)@$1_link:$2\n perl -0777 -pe first -i ./content/_meta.js -$second =~ s@(\$KEEP_PAGES\{_link})\s*:\s*(\{\s+.+\s+.+)\s+.+\s+.+\s+.+\s+(\},)@${KEEP_PAGES}:$2\n theme:{\n timestamp: true,\n }\n $3@gmx +$second =~ s@@${KEEP_PAGES}:$2\n theme:{\n timestamp: true,\n }\n $3@gmx # Write saved pages back perl -0777 -pe '' -i ./content/_meta.js