aboutsummaryrefslogtreecommitdiff
path: root/builddefs/docsgen
diff options
context:
space:
mode:
Diffstat (limited to 'builddefs/docsgen')
-rw-r--r--builddefs/docsgen/.vitepress/theme/QMKLayout.vue15
1 files changed, 13 insertions, 2 deletions
diff --git a/builddefs/docsgen/.vitepress/theme/QMKLayout.vue b/builddefs/docsgen/.vitepress/theme/QMKLayout.vue
index 30d0780d7c..9d7a41f9e2 100644
--- a/builddefs/docsgen/.vitepress/theme/QMKLayout.vue
+++ b/builddefs/docsgen/.vitepress/theme/QMKLayout.vue
@@ -2,11 +2,22 @@
import DefaultTheme from 'vitepress/theme'
import { useRouter } from 'vitepress'
import { onBeforeMount } from 'vue';
+import aliases from "../../../../docs/_aliases.json";
const router = useRouter()
onBeforeMount(async () => {
- if (window.location.href.includes('/#/')) {
- const newUrl = window.location.href.replace(/\/#\//, '/').replace(/\?id=/, '#');
+ // Convert from docsify-style to vitepress-style URLs
+ let newUrl = window.location.href.replace(/\/#\//, '/').replace(/\?id=/, '#');
+
+ // Convert any aliases
+ let testUrl = new URL(newUrl);
+ while (testUrl.pathname in aliases) {
+ testUrl.pathname = aliases[testUrl.pathname];
+ }
+ newUrl = testUrl.toString();
+
+ // Redirect if required
+ if (newUrl != window.location.href) {
window.history.replaceState({}, '', newUrl);
await router.go(newUrl);
}