') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ', 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ', 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ', 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); })(); [DRAFT] KMPP TA SVN key stack by sangho2 · Pull Request #831 · microsoft/litebox · GitHub
Skip to content

[DRAFT] KMPP TA SVN key stack - #831

Closed
Sangho Lee (sangho2) wants to merge 1 commit into
mainfrom
sanghle/optee/takey_stack
Closed

[DRAFT] KMPP TA SVN key stack#831
Sangho Lee (sangho2) wants to merge 1 commit into
mainfrom
sanghle/optee/takey_stack

Conversation

@sangho2

@sangho2Sangho Lee (sangho2) commented May 5, 2026

Copy link
Copy Markdown
Contributor

This PR adds support for KMPP TA's SVN key stack. Some implementation change might be needed because this API does not use the standard system PTA command ID.

@sangho2Sangho Lee (sangho2) added discussion Open questions must-not-merge:prototype An experimental/proof-of-concept PR that must not be merged. labels May 5, 2026
@sangho2Sangho Lee (sangho2) changed the title TA SVN key stackKMPP TA SVN key stackMay 5, 2026
@sangho2
Sangho Lee (sangho2)force-pushed the sanghle/optee/takey_stack branch from 6ec4493 to a11bc67CompareMay 5, 2026 22:52
@sangho2
Sangho Lee (sangho2) marked this pull request as ready for review May 7, 2026 23:20
@sangho2
Sangho Lee (sangho2)force-pushed the sanghle/optee/takey branch 3 times, most recently from 8e8e4fd to 6440213CompareMay 13, 2026 01:35
@sangho2
Sangho Lee (sangho2) marked this pull request as draft May 13, 2026 03:53
Base automatically changed from sanghle/optee/takey to mainMay 13, 2026 17:58
@sangho2
Sangho Lee (sangho2)force-pushed the sanghle/optee/takey_stack branch 3 times, most recently from 1bbf260 to b7b4b98CompareMay 21, 2026 05:04
@sangho2Sangho Lee (sangho2) removed the must-not-merge:prototype An experimental/proof-of-concept PR that must not be merged. label Jul 14, 2026
@sangho2
Sangho Lee (sangho2) marked this pull request as ready for review July 14, 2026 22:05
@sangho2
Sangho Lee (sangho2) marked this pull request as draft July 14, 2026 22:05
@sangho2Sangho Lee (sangho2) added the must-not-merge:prototype An experimental/proof-of-concept PR that must not be merged. label Jul 14, 2026
@sangho2Sangho Lee (sangho2) changed the title KMPP TA SVN key stack[DRAFT] KMPP TA SVN key stackJul 14, 2026
@github-actions

Copy link
Copy Markdown

🤖 SemverChecks 🤖 No breaking API changes detected

Note: this does not mean API is unchanged, or even that there are no breaking changes; simply, none of the detections triggered.

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

discussionOpen questionsmust-not-merge:prototypeAn experimental/proof-of-concept PR that must not be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

@sangho2