Migrate jqhtml slot syntax from <#name> to <Slot:name>

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
root
2025-11-24 03:43:45 +00:00
parent 22df126977
commit 881425bed6
35 changed files with 124 additions and 122 deletions

View File

@@ -1 +1 @@
2.2.220
2.2.221

Binary file not shown.

View File

@@ -71,11 +71,11 @@ class JqhtmlDefinitionProvider {
}
// IMPORTANT: Check for slot syntax BEFORE extracting word
// This prevents slot names from being treated as component names
// Check if we're in a slot tag by looking for <# or </# before cursor
// Check if we're in a slot tag by looking for <Slot: or </Slot: before cursor
const beforeCursor = line.substring(0, position.character);
if (beforeCursor.match(/<\/?#\s*[A-Z][A-Za-z0-9_]*$/)) {
if (beforeCursor.match(/<\/?Slot:\s*[A-Z][A-Za-z0-9_]*$/)) {
// We're in a slot tag - extract the full slot name from the line
const slotNameMatch = line.match(/<\/?#\s*([A-Z][A-Za-z0-9_]*)/);
const slotNameMatch = line.match(/<\/?Slot:\s*([A-Z][A-Za-z0-9_]*)/);
if (slotNameMatch) {
const slotName = slotNameMatch[1];
console.log(`JQHTML: Detected slot tag syntax for slot: ${slotName}`);
@@ -492,7 +492,7 @@ class JqhtmlDefinitionProvider {
return undefined;
}
/**
* Handle goto definition for slot tags (<#SlotName>)
* Handle goto definition for slot tags (<Slot:SlotName>)
*
* IMPLEMENTATION SCOPE (Narrow, for now):
* - Handles direct extends="ComponentName" on <Define:> tags

File diff suppressed because one or more lines are too long

View File

@@ -79,21 +79,21 @@ function activate(context) {
const position = change.range.start;
const line = event.document.lineAt(position.line);
const lineText = line.text.substring(0, position.character + 1);
// Match opening tags: <ComponentName>, <Define:Name>, or regular HTML tags
// Match opening tags: <ComponentName>, <Define:Name>, <Slot:Name>, or regular HTML tags
// Look for self-closing indicators /> or existing closing tags
const openingTagMatch = lineText.match(/<(\/?)(Define:|#)?([A-Z][A-Za-z0-9_]*|\w+)(?:\s+[^>]*)?>$/);
const openingTagMatch = lineText.match(/<(\/?)(Define:|Slot:)?([A-Z][A-Za-z0-9_]*|\w+)(?:\s+[^>]*)?>$/);
if (openingTagMatch && !openingTagMatch[1]) { // Not a closing tag (no /)
const tagPrefix = openingTagMatch[2] || ''; // 'Define:' or '#' or ''
const tagPrefix = openingTagMatch[2] || ''; // 'Define:' or 'Slot:' or ''
const tagName = openingTagMatch[3];
// Check if it's self-closing or already has a closing tag
const beforeTag = lineText.substring(0, lineText.lastIndexOf('<'));
if (beforeTag.endsWith('/')) {
return; // Self-closing tag
}
// Check if this is a slot tag (starts with #)
const isSlot = tagPrefix === '#';
// Check if this is a slot tag (starts with Slot:)
const isSlot = tagPrefix === 'Slot:';
// For slots, check if it's self-closing syntax
if (isSlot && lineText.match(/<#\w+\s*\/?>$/)) {
if (isSlot && lineText.match(/<Slot:\w+\s*\/?>$/)) {
// Don't auto-close self-closing slots
if (lineText.endsWith('/>')) {
return;
@@ -109,7 +109,7 @@ function activate(context) {
// Build the closing tag
let closingTag = '';
if (isSlot) {
closingTag = `</#${tagName}>`;
closingTag = `</Slot:${tagName}>`;
}
else {
closingTag = `</${tagPrefix}${tagName}>`;

View File

@@ -1 +1 @@
{"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwDA,4BAkIC;AAeD,gCAEC;AA3MD,+CAAiC;AACjC,2CAA2D;AAC3D,qDAAwD;AACxD,6DAAqF;AAqDrF,SAAgB,QAAQ,CAAC,OAAgC;IACrD,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAE1C,6BAA6B;IAC7B,MAAM,cAAc,GAAG,IAAI,qCAAoB,EAAE,CAAC;IAClD,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC;QACvB,OAAO,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE;KAC1C,CAAC,CAAC;IAEH,yBAAyB;IACzB,MAAM,SAAS,GAAG,IAAI,wCAA4B,EAAE,CAAC;IACrD,MAAM,iBAAiB,GAAG,MAAM,CAAC,SAAS,CAAC,sCAAsC,CAC7E,QAAQ,EACR,SAAS,CACZ,CAAC;IACF,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAE9C,qEAAqE;IACrE,MAAM,kBAAkB,GAAG,IAAI,6CAAwB,CAAC,cAAc,CAAC,CAAC;IACxE,MAAM,4BAA4B,GAAG,MAAM,CAAC,SAAS,CAAC,0BAA0B,CAC5E,QAAQ,EACR,kBAAkB,CACrB,CAAC;IACF,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IAEzD,oDAAoD;IACpD,MAAM,aAAa,GAAG,IAAI,wCAAmB,CAAC,cAAc,CAAC,CAAC;IAC9D,MAAM,uBAAuB,GAAG,MAAM,CAAC,SAAS,CAAC,qBAAqB,CAClE,QAAQ,EACR,aAAa,CAChB,CAAC;IACF,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAEpD,0CAA0C;IAC1C,MAAM,mBAAmB,GAAG,MAAM,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,KAAqC,EAAE,EAAE;QAC3G,IAAI,KAAK,CAAC,QAAQ,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;YACzC,OAAO;QACX,CAAC;QAED,gCAAgC;QAChC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC;QACpD,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC5D,OAAO;QACX,CAAC;QAED,iDAAiD;QACjD,IAAI,KAAK,CAAC,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACpC,OAAO;QACX,CAAC;QAED,MAAM,MAAM,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QAEzB,0BAA0B;QAC1B,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACf,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;YACpC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;YAEhE,2EAA2E;YAC3E,+DAA+D;YAC/D,MAAM,eAAe,GAAG,QAAQ,CAAC,KAAK,CAAC,2DAA2D,CAAC,CAAC;YAEpG,IAAI,eAAe,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,2BAA2B;gBACrE,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,yBAAyB;gBACrE,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;gBAEnC,0DAA0D;gBAC1D,MAAM,SAAS,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;gBACnE,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC1B,OAAO,CAAC,mBAAmB;gBAC/B,CAAC;gBAED,8CAA8C;gBAC9C,MAAM,MAAM,GAAG,SAAS,KAAK,GAAG,CAAC;gBAEjC,+CAA+C;gBAC/C,IAAI,MAAM,IAAI,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;oBAC5C,sCAAsC;oBACtC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC1B,OAAO;oBACX,CAAC;gBACL,CAAC;gBAED,yCAAyC;gBACzC,mEAAmE;gBACnE,MAAM,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;oBACxC,SAAS,KAAK,SAAS;oBACvB,MAAM;oBACN,SAAS,CAAC,OAAO,CAAC,CAAC;gBAE1C,IAAI,eAAe,EAAE,CAAC;oBAClB,wBAAwB;oBACxB,IAAI,UAAU,GAAG,EAAE,CAAC;oBACpB,IAAI,MAAM,EAAE,CAAC;wBACT,UAAU,GAAG,MAAM,OAAO,GAAG,CAAC;oBAClC,CAAC;yBAAM,CAAC;wBACJ,UAAU,GAAG,KAAK,SAAS,GAAG,OAAO,GAAG,CAAC;oBAC7C,CAAC;oBAED,yBAAyB;oBACzB,YAAY,CAAC,IAAI,CAAC,CAAC,WAAkC,EAAE,EAAE;wBACrD,MAAM,cAAc,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBAChD,WAAW,CAAC,MAAM,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;oBACnD,CAAC,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;wBAC1D,+BAA+B;wBAC/B,MAAM,WAAW,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBAC7C,YAAY,CAAC,SAAS,GAAG,IAAI,MAAM,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;oBAC5E,CAAC,CAAC,CAAC;gBACP,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAEhD,qCAAqC;IACrC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC3D,IAAI,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,iFAAiF,CAAC,CAAC;IAE/F,yCAAyC;IACzC,OAAO;QACH,aAAa,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC;QACnE,oBAAoB,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,oBAAoB,EAAE;QACjE,gBAAgB,EAAE,GAAG,EAAE,CAAC,cAAc,CAAC,gBAAgB,EAAE;KAC5D,CAAC;AACN,CAAC;AAED,2DAA2D;AAC3D,SAAS,SAAS,CAAC,OAAe;IAC9B,MAAM,QAAQ,GAAG;QACb,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ;QACtE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;QAChF,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;QACtE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ;QAC/E,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU;QAC5E,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;KAC3F,CAAC;IACF,OAAO,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;AACpD,CAAC;AAED,SAAgB,UAAU;IACtB,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;AAChD,CAAC"}
{"version":3,"file":"extension.js","sourceRoot":"","sources":["../src/extension.ts"],"names":[],"mappings":"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"}

View File

@@ -2,7 +2,7 @@
"name": "@jqhtml/vscode-extension",
"displayName": "JQHTML",
"description": "Syntax highlighting and language support for JQHTML template files",
"version": "2.2.220",
"version": "2.2.221",
"publisher": "jqhtml",
"license": "MIT",
"publishConfig": {

View File

@@ -237,33 +237,35 @@
]
},
"slot-tag": {
"comment": "Slot tags <#slotname> for defining named content areas",
"comment": "Slot tags <Slot:slotname> for defining named content areas",
"patterns": [
{
"comment": "Opening slot tag <#name> or self-closing <#name />",
"comment": "Opening slot tag <Slot:name> or self-closing <Slot:name />",
"name": "meta.tag.slot.jqhtml",
"match": "(<)(#)(\\w+)\\s*([^>]*?)(/?>)",
"match": "(<)(Slot)(:)(\\w+)\\s*([^>]*?)(/?>)",
"captures": {
"1": { "name": "punctuation.definition.tag.begin.jqhtml" },
"2": { "name": "keyword.control.slot.jqhtml" },
"3": { "name": "keyword.control.slot.jqhtml" },
"4": {
"4": { "name": "keyword.control.slot.jqhtml" },
"5": {
"patterns": [
{ "include": "#tag-attributes" }
]
},
"5": { "name": "punctuation.definition.tag.end.jqhtml" }
"6": { "name": "punctuation.definition.tag.end.jqhtml" }
}
},
{
"comment": "Closing slot tag </#name>",
"comment": "Closing slot tag </Slot:name>",
"name": "meta.tag.slot.close.jqhtml",
"match": "(</)(#)(\\w+)(>)",
"match": "(</)(Slot)(:)(\\w+)(>)",
"captures": {
"1": { "name": "punctuation.definition.tag.begin.jqhtml" },
"2": { "name": "keyword.control.slot.jqhtml" },
"3": { "name": "keyword.control.slot.jqhtml" },
"4": { "name": "punctuation.definition.tag.end.jqhtml" }
"4": { "name": "keyword.control.slot.jqhtml" },
"5": { "name": "punctuation.definition.tag.end.jqhtml" }
}
}
]