@aster-cloud/aster-lang-ts 1.0.31 → 1.0.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/dist/scripts/corpus-loader.d.ts +10 -4
  2. package/dist/scripts/corpus-loader.d.ts.map +1 -1
  3. package/dist/scripts/corpus-loader.js +24 -9
  4. package/dist/scripts/corpus-loader.js.map +1 -1
  5. package/dist/scripts/lexicon-completeness.d.ts +42 -0
  6. package/dist/scripts/lexicon-completeness.d.ts.map +1 -0
  7. package/dist/scripts/lexicon-completeness.js +57 -0
  8. package/dist/scripts/lexicon-completeness.js.map +1 -0
  9. package/dist/scripts/lsp-client-helper.d.ts +7 -1
  10. package/dist/scripts/lsp-client-helper.d.ts.map +1 -1
  11. package/dist/scripts/lsp-client-helper.js +6 -1
  12. package/dist/scripts/lsp-client-helper.js.map +1 -1
  13. package/dist/scripts/verify-lexicon-sync.js +14 -44
  14. package/dist/scripts/verify-lexicon-sync.js.map +1 -1
  15. package/dist/src/lsp/codeaction.d.ts.map +1 -1
  16. package/dist/src/lsp/codeaction.js +12 -4
  17. package/dist/src/lsp/codeaction.js.map +1 -1
  18. package/dist/src/lsp/diagnostics.d.ts +2 -0
  19. package/dist/src/lsp/diagnostics.d.ts.map +1 -1
  20. package/dist/src/lsp/diagnostics.js +4 -0
  21. package/dist/src/lsp/diagnostics.js.map +1 -1
  22. package/dist/src/lsp/navigation/hover.d.ts.map +1 -1
  23. package/dist/src/lsp/navigation/hover.js +23 -0
  24. package/dist/src/lsp/navigation/hover.js.map +1 -1
  25. package/dist/src/lsp/navigation/references.d.ts +3 -1
  26. package/dist/src/lsp/navigation/references.d.ts.map +1 -1
  27. package/dist/src/lsp/navigation/references.js +16 -6
  28. package/dist/src/lsp/navigation/references.js.map +1 -1
  29. package/dist/src/lsp/navigation/rename.d.ts +1 -1
  30. package/dist/src/lsp/navigation/rename.d.ts.map +1 -1
  31. package/dist/src/lsp/navigation/rename.js +31 -42
  32. package/dist/src/lsp/navigation/rename.js.map +1 -1
  33. package/dist/src/lsp/navigation/shared.d.ts +34 -2
  34. package/dist/src/lsp/navigation/shared.d.ts.map +1 -1
  35. package/dist/src/lsp/navigation/shared.js +88 -10
  36. package/dist/src/lsp/navigation/shared.js.map +1 -1
  37. package/dist/src/lsp/navigation.js +2 -2
  38. package/dist/src/lsp/navigation.js.map +1 -1
  39. package/dist/src/lsp/parse-document.d.ts +11 -0
  40. package/dist/src/lsp/parse-document.d.ts.map +1 -0
  41. package/dist/src/lsp/parse-document.js +51 -0
  42. package/dist/src/lsp/parse-document.js.map +1 -0
  43. package/dist/src/lsp/server.js +18 -23
  44. package/dist/src/lsp/server.js.map +1 -1
  45. package/dist/src/lsp/settings.d.ts +35 -0
  46. package/dist/src/lsp/settings.d.ts.map +1 -0
  47. package/dist/src/lsp/settings.js +31 -0
  48. package/dist/src/lsp/settings.js.map +1 -0
  49. package/dist/src/lsp/source-positions.d.ts +47 -0
  50. package/dist/src/lsp/source-positions.d.ts.map +1 -0
  51. package/dist/src/lsp/source-positions.js +92 -0
  52. package/dist/src/lsp/source-positions.js.map +1 -0
  53. package/dist/src/lsp/workspace/document-indexer.d.ts +3 -1
  54. package/dist/src/lsp/workspace/document-indexer.d.ts.map +1 -1
  55. package/dist/src/lsp/workspace/document-indexer.js +5 -7
  56. package/dist/src/lsp/workspace/document-indexer.js.map +1 -1
  57. package/dist/src/lsp/workspace/symbol-finder.d.ts +8 -1
  58. package/dist/src/lsp/workspace/symbol-finder.d.ts.map +1 -1
  59. package/dist/src/lsp/workspace/symbol-finder.js +10 -13
  60. package/dist/src/lsp/workspace/symbol-finder.js.map +1 -1
  61. package/dist/src/parser/constraint-parser.d.ts.map +1 -1
  62. package/dist/src/parser/constraint-parser.js +18 -7
  63. package/dist/src/parser/constraint-parser.js.map +1 -1
  64. package/dist/src/parser/decl-parser.d.ts.map +1 -1
  65. package/dist/src/parser/decl-parser.js +6 -5
  66. package/dist/src/parser/decl-parser.js.map +1 -1
  67. package/dist/src/parser/expr-stmt-parser.d.ts.map +1 -1
  68. package/dist/src/parser/expr-stmt-parser.js +95 -38
  69. package/dist/src/parser/expr-stmt-parser.js.map +1 -1
  70. package/dist/src/parser/import-parser.d.ts.map +1 -1
  71. package/dist/src/parser/import-parser.js +2 -1
  72. package/dist/src/parser/import-parser.js.map +1 -1
  73. package/dist/src/parser/keyword-display.d.ts +40 -0
  74. package/dist/src/parser/keyword-display.d.ts.map +1 -0
  75. package/dist/src/parser/keyword-display.js +73 -0
  76. package/dist/src/parser/keyword-display.js.map +1 -0
  77. package/dist/src/parser/type-parser.d.ts.map +1 -1
  78. package/dist/src/parser/type-parser.js +5 -4
  79. package/dist/src/parser/type-parser.js.map +1 -1
  80. package/dist/src/parser.d.ts.map +1 -1
  81. package/dist/src/parser.js +1 -0
  82. package/dist/src/parser.js.map +1 -1
  83. package/dist/test/integration/lsp/lsp-rename-safety.test.d.ts +2 -0
  84. package/dist/test/integration/lsp/lsp-rename-safety.test.d.ts.map +1 -0
  85. package/dist/test/integration/lsp/lsp-rename-safety.test.js +114 -0
  86. package/dist/test/integration/lsp/lsp-rename-safety.test.js.map +1 -0
  87. package/dist/test/integration/lsp/lsp-source-positions.test.d.ts +2 -0
  88. package/dist/test/integration/lsp/lsp-source-positions.test.d.ts.map +1 -0
  89. package/dist/test/integration/lsp/lsp-source-positions.test.js +161 -0
  90. package/dist/test/integration/lsp/lsp-source-positions.test.js.map +1 -0
  91. package/dist/test/integration/lsp/lsp-zh-inmemory-navigation.test.d.ts +2 -0
  92. package/dist/test/integration/lsp/lsp-zh-inmemory-navigation.test.d.ts.map +1 -0
  93. package/dist/test/integration/lsp/lsp-zh-inmemory-navigation.test.js +79 -0
  94. package/dist/test/integration/lsp/lsp-zh-inmemory-navigation.test.js.map +1 -0
  95. package/dist/test/unit/eval-regression-poker-straight-high.test.d.ts +2 -0
  96. package/dist/test/unit/eval-regression-poker-straight-high.test.d.ts.map +1 -0
  97. package/dist/test/unit/eval-regression-poker-straight-high.test.js +61 -0
  98. package/dist/test/unit/eval-regression-poker-straight-high.test.js.map +1 -0
  99. package/dist/test/unit/lexicon-completeness.test.d.ts +2 -0
  100. package/dist/test/unit/lexicon-completeness.test.d.ts.map +1 -0
  101. package/dist/test/unit/lexicon-completeness.test.js +42 -0
  102. package/dist/test/unit/lexicon-completeness.test.js.map +1 -0
  103. package/dist/test/unit/lsp/codeaction.test.js +28 -0
  104. package/dist/test/unit/lsp/codeaction.test.js.map +1 -1
  105. package/dist/test/unit/lsp/lsp-locale-fixes.test.d.ts +2 -0
  106. package/dist/test/unit/lsp/lsp-locale-fixes.test.d.ts.map +1 -0
  107. package/dist/test/unit/lsp/lsp-locale-fixes.test.js +105 -0
  108. package/dist/test/unit/lsp/lsp-locale-fixes.test.js.map +1 -0
  109. package/dist/test/unit/lsp/parse-document.test.d.ts +2 -0
  110. package/dist/test/unit/lsp/parse-document.test.d.ts.map +1 -0
  111. package/dist/test/unit/lsp/parse-document.test.js +30 -0
  112. package/dist/test/unit/lsp/parse-document.test.js.map +1 -0
  113. package/dist/test/unit/mapping/redos-budget.test.js +60 -23
  114. package/dist/test/unit/mapping/redos-budget.test.js.map +1 -1
  115. package/dist/test/unit/parser/keyword-display.test.d.ts +8 -0
  116. package/dist/test/unit/parser/keyword-display.test.d.ts.map +1 -0
  117. package/dist/test/unit/parser/keyword-display.test.js +27 -0
  118. package/dist/test/unit/parser/keyword-display.test.js.map +1 -0
  119. package/dist/test/unit/parser/localized-diagnostic-keywords.test.d.ts +15 -0
  120. package/dist/test/unit/parser/localized-diagnostic-keywords.test.d.ts.map +1 -0
  121. package/dist/test/unit/parser/localized-diagnostic-keywords.test.js +98 -0
  122. package/dist/test/unit/parser/localized-diagnostic-keywords.test.js.map +1 -0
  123. package/dist/test/unit/parser/prefix-operator-call.test.js +119 -1
  124. package/dist/test/unit/parser/prefix-operator-call.test.js.map +1 -1
  125. package/dist/test/unit/scripts/corpus-loader.test.js +44 -9
  126. package/dist/test/unit/scripts/corpus-loader.test.js.map +1 -1
  127. package/package.json +1 -1
@@ -11,6 +11,8 @@ import { DiagnosticError } from '../diagnostics/diagnostics.js';
11
11
  import { collectSemanticDiagnostics } from './analysis.js';
12
12
  import { ConfigService } from '../config/config-service.js';
13
13
  import { invalidateModuleEffectsByUri } from './module_cache.js';
14
+ /** 「缺少模块头」诊断的稳定 code(message 随 locale 本地化,不能用来识别) */
15
+ export const MISSING_MODULE_HEADER_CODE = 'missing-module-header';
14
16
  let diagnosticConfig = {
15
17
  relatedInformationSupported: false,
16
18
  workspaceDiagnosticsEnabled: true,
@@ -377,6 +379,8 @@ export async function computeDiagnostics(textDocument, getOrParse, lexicon) {
377
379
  severity: DiagnosticSeverity.Warning,
378
380
  range: { start: { line: 0, character: 0 }, end: { line: 0, character: 0 } },
379
381
  message: ui.missingModuleHeader,
382
+ // 稳定 code:message 已本地化,code action 不能再靠英文前缀识别
383
+ code: MISSING_MODULE_HEADER_CODE,
380
384
  source: 'aster',
381
385
  });
382
386
  }
@@ -1 +1 @@
1
- {"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/lsp/diagnostics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagnostics.js","sourceRoot":"","sources":["../../../src/lsp/diagnostics.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"hover.d.ts","sourceRoot":"","sources":["../../../../src/lsp/navigation/hover.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AA2BlE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAG9D;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE;IAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAA;CAAE,EACzD,UAAU,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,EAAE,CAAC;IAAC,GAAG,EAAE,GAAG,CAAA;CAAE,EACrF,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,GACtD,IAAI,CAkFN"}
1
+ {"version":3,"file":"hover.d.ts","sourceRoot":"","sources":["../../../../src/lsp/navigation/hover.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AA2BlE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAG9D;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE;IAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAA;CAAE,EACzD,UAAU,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,EAAE,CAAC;IAAC,GAAG,EAAE,GAAG,CAAA;CAAE,EACrF,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,GACtD,IAAI,CAqGN"}
@@ -52,6 +52,25 @@ export function registerHoverHandler(connection, documents, getOrParse, getLexic
52
52
  const lexicon = getLexiconForDoc?.(params.textDocument.uri);
53
53
  const ui = getLspUiTexts(lexicon);
54
54
  const ast2 = ast || parse(toks).ast;
55
+ const describeDecl = (d) => {
56
+ if (isAstFunc(d))
57
+ return `${ui.functionLabel} ${d.name} — ${funcDetail(d)}`;
58
+ if (isAstData(d)) {
59
+ const fields = d.fields.map(f => `**${f.name}**: ${typeText(f.type)}`).join(', ');
60
+ return `${ui.typeLabel} ${d.name}${fields ? ' — ' + fields : ''}`;
61
+ }
62
+ if (isAstEnum(d))
63
+ return `${ui.enumLabel} ${d.name} — ${d.variants.join(', ')}`;
64
+ return null;
65
+ };
66
+ /* ★光标上的名字若是顶层函数/类型/枚举,描述**那个**声明——与跳转定义同一套解析。
67
+ * 旧实现只查参数/局部/模式绑定,其余一律落到外层函数:`Return twice(twice(x)).`
68
+ * 里两个 twice 都显示「函数 quad」。 */
69
+ const topLevelByName = (name) => {
70
+ if (!name)
71
+ return undefined;
72
+ return ast2.decls.find(d => (isAstFunc(d) || isAstData(d) || isAstEnum(d)) && d.name === name);
73
+ };
55
74
  const decl = findDeclAt(ast2, pos);
56
75
  if (decl) {
57
76
  if (isAstFunc(decl)) {
@@ -76,6 +95,10 @@ export function registerHoverHandler(connection, documents, getOrParse, getLexic
76
95
  const hint = exprTypeText(localInfo.expr);
77
96
  return { contents: { kind: 'markdown', value: `${ui.localLabel} ${nameAt}${hint ? ': ' + hint : ''}` } };
78
97
  }
98
+ const named = topLevelByName(nameAt);
99
+ const namedText = named ? describeDecl(named) : null;
100
+ if (namedText)
101
+ return { contents: { kind: 'markdown', value: namedText } };
79
102
  }
80
103
  return { contents: { kind: 'markdown', value: `${ui.functionLabel} ${f.name} — ${funcDetail(f)}` } };
81
104
  }
@@ -1 +1 @@
1
- {"version":3,"file":"hover.js","sourceRoot":"","sources":["../../../../src/lsp/navigation/hover.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hover.js","sourceRoot":"","sources":["../../../../src/lsp/navigation/hover.ts"],"names":[],"mappings":"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"}
@@ -13,5 +13,7 @@ import { TextDocument } from 'vscode-languageserver-textdocument';
13
13
  export declare function registerReferencesHandler(connection: Connection, documents: {
14
14
  get(uri: string): TextDocument | undefined;
15
15
  keys(): string[];
16
- }, getDocumentSettings: (uri: string) => Promise<any>): void;
16
+ }, getDocumentSettings: (uri: string) => Promise<any>, getLexiconForDoc?: (uri: string) => import('../../config/lexicons/types.js').Lexicon | undefined, getOrParse?: (doc: TextDocument) => {
17
+ tokens: readonly any[];
18
+ }): void;
17
19
  //# sourceMappingURL=references.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"references.d.ts","sourceRoot":"","sources":["../../../../src/lsp/navigation/references.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,UAAU,EAIX,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAclE;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE;IAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAC;IAAC,IAAI,IAAI,MAAM,EAAE,CAAA;CAAE,EAC3E,mBAAmB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,GACjD,IAAI,CAkEN"}
1
+ {"version":3,"file":"references.d.ts","sourceRoot":"","sources":["../../../../src/lsp/navigation/references.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,UAAU,EAIX,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAclE;;;;;GAKG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE;IAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAC;IAAC,IAAI,IAAI,MAAM,EAAE,CAAA;CAAE,EAC3E,mBAAmB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,EAClD,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,gCAAgC,EAAE,OAAO,GAAG,SAAS,EAChG,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK;IAAE,MAAM,EAAE,SAAS,GAAG,EAAE,CAAA;CAAE,GAC7D,IAAI,CA4EN"}
@@ -3,7 +3,7 @@
3
3
  * 查找符号的所有引用位置
4
4
  */
5
5
  import { findSymbolReferences, updateDocumentIndex } from '../index.js';
6
- import { captureWordAt } from './shared.js';
6
+ import { identifierTokenAt } from './shared.js';
7
7
  const defaultSettings = { rename: { scope: 'workspace' }, streaming: { referencesChunk: 200, renameChunk: 200, logChunks: false } };
8
8
  /**
9
9
  * 注册 References 处理器
@@ -11,7 +11,7 @@ const defaultSettings = { rename: { scope: 'workspace' }, streaming: { reference
11
11
  * @param documents 文档管理器
12
12
  * @param getDocumentSettings 获取文档设置的函数
13
13
  */
14
- export function registerReferencesHandler(connection, documents, getDocumentSettings) {
14
+ export function registerReferencesHandler(connection, documents, getDocumentSettings, getLexiconForDoc, getOrParse) {
15
15
  const _beginProgress = (token, title) => {
16
16
  try {
17
17
  if (!token)
@@ -49,8 +49,11 @@ export function registerReferencesHandler(connection, documents, getDocumentSett
49
49
  const text = doc.getText();
50
50
  const pos = params.position;
51
51
  const offset = doc.offsetAt(pos);
52
- // naive token capture: expand to nearest word boundaries
53
- const word = captureWordAt(text, offset);
52
+ // ★只认光标处可编辑的标识符 token:冠词、关键字、位置不确定的 token 都不查引用
53
+ const tokens = getOrParse?.(doc).tokens;
54
+ const word = tokens
55
+ ? identifierTokenAt(tokens, text, offset, getLexiconForDoc?.(doc.uri))?.name ?? null
56
+ : null;
54
57
  if (!word)
55
58
  return [];
56
59
  const out = [];
@@ -58,10 +61,17 @@ export function registerReferencesHandler(connection, documents, getDocumentSett
58
61
  const scope = settings.rename?.scope ?? 'workspace';
59
62
  const openUris = new Set(documents.keys());
60
63
  try {
61
- await updateDocumentIndex(doc.uri, doc.getText());
64
+ await updateDocumentIndex(doc.uri, doc.getText(), getLexiconForDoc?.(doc.uri));
62
65
  }
63
66
  catch { }
64
- const refs = await findSymbolReferences(word, undefined);
67
+ const refs = await findSymbolReferences(word, undefined, {
68
+ readOpenText: (uri) => documents.get(uri)?.getText(),
69
+ lexiconFor: (uri) => getLexiconForDoc?.(uri),
70
+ tokensForOpen: (uri) => {
71
+ const open = documents.get(uri);
72
+ return open && getOrParse ? getOrParse(open).tokens : undefined;
73
+ },
74
+ });
65
75
  const filtered = scope === 'open' ? refs.filter(loc => openUris.has(loc.uri)) : refs;
66
76
  _beginProgress(params.workDoneToken, 'Aster references');
67
77
  const CHUNK = settings.streaming?.referencesChunk ?? 200;
@@ -1 +1 @@
1
- {"version":3,"file":"references.js","sourceRoot":"","sources":["../../../../src/lsp/navigation/references.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"references.js","sourceRoot":"","sources":["../../../../src/lsp/navigation/references.ts"],"names":[],"mappings":"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"}
@@ -18,5 +18,5 @@ export declare function registerRenameHandlers(connection: Connection, documents
18
18
  text: string;
19
19
  tokens: readonly any[];
20
20
  ast: any;
21
- }, getDocumentSettings: (uri: string) => Promise<any>): void;
21
+ }, getDocumentSettings: (uri: string) => Promise<any>, getLexiconForDoc?: (uri: string) => import('../../config/lexicons/types.js').Lexicon | undefined): void;
22
22
  //# sourceMappingURL=rename.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rename.d.ts","sourceRoot":"","sources":["../../../../src/lsp/navigation/rename.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,UAAU,EAIX,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAelE;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE;IAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAC;IAAC,IAAI,IAAI,MAAM,EAAE,CAAA;CAAE,EAC3E,UAAU,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,EAAE,CAAC;IAAC,GAAG,EAAE,GAAG,CAAA;CAAE,EACrF,mBAAmB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,GACjD,IAAI,CA0IN"}
1
+ {"version":3,"file":"rename.d.ts","sourceRoot":"","sources":["../../../../src/lsp/navigation/rename.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACV,UAAU,EAIX,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAelE;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE;IAAE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAAC;IAAC,IAAI,IAAI,MAAM,EAAE,CAAA;CAAE,EAC3E,UAAU,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,EAAE,CAAC;IAAC,GAAG,EAAE,GAAG,CAAA;CAAE,EACrF,mBAAmB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,CAAC,EAClD,gBAAgB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,gCAAgC,EAAE,OAAO,GAAG,SAAS,GAC/F,IAAI,CAyHN"}
@@ -3,7 +3,7 @@
3
3
  * 提供符号重命名功能(包括准备阶段和执行阶段)
4
4
  */
5
5
  import { getAllModules, updateDocumentIndex } from '../index.js';
6
- import { captureWordAt, findTokenPositionsSafe, offsetToPos, ensureUri, uriToFsPath, tokenNameAt } from './shared.js';
6
+ import { offsetToPos, ensureUri, uriToFsPath, identifierTokenAt, exactIdentifierPositions, lexInSourceCoordinates } from './shared.js';
7
7
  import { promises as fsPromises } from 'node:fs';
8
8
  const defaultSettings = { rename: { scope: 'workspace' }, streaming: { referencesChunk: 200, renameChunk: 200, logChunks: false } };
9
9
  /**
@@ -13,7 +13,7 @@ const defaultSettings = { rename: { scope: 'workspace' }, streaming: { reference
13
13
  * @param getOrParse 文档解析函数
14
14
  * @param getDocumentSettings 获取文档设置的函数
15
15
  */
16
- export function registerRenameHandlers(connection, documents, getOrParse, getDocumentSettings) {
16
+ export function registerRenameHandlers(connection, documents, getOrParse, getDocumentSettings, getLexiconForDoc) {
17
17
  const _beginProgress = (token, title) => {
18
18
  try {
19
19
  if (!token)
@@ -51,9 +51,18 @@ export function registerRenameHandlers(connection, documents, getOrParse, getDoc
51
51
  return null;
52
52
  const text = doc.getText();
53
53
  const offset = doc.offsetAt(params.position);
54
- const word = captureWordAt(text, offset);
55
- if (!word)
54
+ // ★只认光标处可编辑的标识符 token(与 prepareRename 同一判据),没有就拒绝——
55
+ // 不退回字符级/正则取词(否则在冠词 the 上按 F2 会把全文每个 the 都改掉)
56
+ const hit = identifierTokenAt(getOrParse(doc).tokens, text, offset, getLexiconForDoc?.(doc.uri));
57
+ if (!hit)
56
58
  return null;
59
+ const word = hit.name;
60
+ /** 打开中的文档用解析缓存里的 token(含领域词汇翻译的对齐信息),其余读盘后词法分析 */
61
+ const tokensFor = (uri, t) => {
62
+ const open = documents.get(uri);
63
+ return open ? getOrParse(open).tokens : lexInSourceCoordinates(t, getLexiconForDoc?.(uri));
64
+ };
65
+ let refused = false;
57
66
  const changes = {};
58
67
  const settings = await getDocumentSettings(doc.uri).catch(() => defaultSettings);
59
68
  const scope = settings.rename?.scope ?? 'workspace';
@@ -62,7 +71,7 @@ export function registerRenameHandlers(connection, documents, getOrParse, getDoc
62
71
  const modules = getAllModules();
63
72
  const total = modules.length;
64
73
  try {
65
- await updateDocumentIndex(doc.uri, doc.getText());
74
+ await updateDocumentIndex(doc.uri, doc.getText(), getLexiconForDoc?.(doc.uri));
66
75
  }
67
76
  catch { }
68
77
  _beginProgress(params.workDoneToken, 'Aster rename');
@@ -79,9 +88,15 @@ export function registerRenameHandlers(connection, documents, getOrParse, getDoc
79
88
  return null;
80
89
  try {
81
90
  const uri = ensureUri(rec.uri);
82
- const fsPath = uriToFsPath(rec.uri) || rec.uri;
83
- const t = await fsPromises.readFile(fsPath, 'utf8');
84
- const positions = findTokenPositionsSafe(t, word);
91
+ // ★打开中的文档用内存文本:inmemory:// 文档不在磁盘上,读盘恒失败 → 旧实现恒回空 changes
92
+ const t = documents.get(rec.uri)?.getText()
93
+ ?? await fsPromises.readFile(uriToFsPath(rec.uri) || rec.uri, 'utf8');
94
+ const { positions, uncertain } = exactIdentifierPositions(tokensFor(rec.uri, t), t, word);
95
+ // 存在位置不确定的同名 token(领域词汇翻译、推算位置)→ 整体拒绝,绝不基于推算位置编辑
96
+ if (uncertain) {
97
+ refused = true;
98
+ return null;
99
+ }
85
100
  if (positions.length === 0)
86
101
  return null;
87
102
  const edits = positions.map(p => ({
@@ -111,6 +126,8 @@ export function registerRenameHandlers(connection, documents, getOrParse, getDoc
111
126
  }
112
127
  }
113
128
  _endProgress(params.workDoneToken);
129
+ if (refused)
130
+ return null;
114
131
  return { changes };
115
132
  });
116
133
  // onPrepareRename: 预先校验是否可重命名并返回精确范围
@@ -118,43 +135,15 @@ export function registerRenameHandlers(connection, documents, getOrParse, getDoc
118
135
  const doc = documents.get(params.textDocument.uri);
119
136
  if (!doc)
120
137
  return null;
121
- const entry = getOrParse(doc);
122
- const { tokens: toks } = entry;
123
- const nameAt = tokenNameAt(toks, params.position);
124
- if (!nameAt) {
125
- // 光标未命中有效标识符,直接拒绝
126
- return null;
127
- }
128
138
  const text = doc.getText();
129
- const offset = doc.offsetAt(params.position);
130
- const precisePositions = findTokenPositionsSafe(text, nameAt);
131
- const precise = precisePositions.find(pos => offset >= pos.start && offset <= pos.end);
132
- if (precise) {
133
- return {
134
- range: {
135
- start: offsetToPos(text, precise.start),
136
- end: offsetToPos(text, precise.end),
137
- },
138
- placeholder: text.slice(precise.start, precise.end),
139
- };
140
- }
141
- // 词法精确匹配失败时回退到简单的词边界捕获
142
- const fallback = captureWordAt(text, offset);
143
- if (!fallback)
139
+ const { tokens } = getOrParse(doc);
140
+ // 与 onRenameRequest 同一判据:可编辑标识符 token,且同名 token 位置全部确定;否则不弹重命名框
141
+ const hit = identifierTokenAt(tokens, text, doc.offsetAt(params.position), getLexiconForDoc?.(doc.uri));
142
+ if (!hit || exactIdentifierPositions(tokens, text, hit.name).uncertain)
144
143
  return null;
145
- const isWord = (c) => /[A-Za-z0-9_.]/.test(c);
146
- let start = offset;
147
- while (start > 0 && isWord(text[start - 1]))
148
- start--;
149
- let end = offset;
150
- while (end < text.length && isWord(text[end]))
151
- end++;
152
144
  return {
153
- range: {
154
- start: offsetToPos(text, start),
155
- end: offsetToPos(text, end),
156
- },
157
- placeholder: text.slice(start, end),
145
+ range: { start: offsetToPos(text, hit.start), end: offsetToPos(text, hit.end) },
146
+ placeholder: text.slice(hit.start, hit.end),
158
147
  };
159
148
  });
160
149
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rename.js","sourceRoot":"","sources":["../../../../src/lsp/navigation/rename.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rename.js","sourceRoot":"","sources":["../../../../src/lsp/navigation/rename.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,38 @@
3
3
  * 提供文本处理、偏移量转换和 AST 辅助功能
4
4
  */
5
5
  import { TextDocument } from 'vscode-languageserver-textdocument';
6
+ import { type Lexicon } from '../../config/lexicons/types.js';
7
+ /**
8
+ * 词法分析并把 token 位置映射回原文坐标(导航取词/查找用)。
9
+ * canonicalize 会删冠词等、改变行内长度,直接用规范化文本的列号会改错位置。
10
+ */
11
+ export declare function lexInSourceCoordinates(text: string, lexicon?: Lexicon): readonly any[];
12
+ /**
13
+ * 是否为该文档语言的关键字。无 lexicon(en 文档在服务端就是这样)时按 en-US 判定——
14
+ * 否则 en 下 `Return` / `Rule` 也能被重命名,重命名会改掉所有同名关键字。
15
+ */
16
+ export declare function isKeywordFor(word: string, lexicon?: Lexicon): boolean;
17
+ /**
18
+ * 光标处的**可编辑**标识符:必须是标识符 token、位置与原文逐字对齐、且不是关键字。
19
+ * ★重命名/引用只能基于它,不能退回字符级或正则取词——冠词(the / eine)不是 token,
20
+ * 退回字符级会取到 `the`,再退回全文正则就把每个 the 都改掉。
21
+ */
22
+ export declare function identifierTokenAt(tokens: readonly any[], text: string, offset: number, lexicon?: Lexicon): {
23
+ name: string;
24
+ start: number;
25
+ end: number;
26
+ } | null;
27
+ /**
28
+ * 某名字在 token 流里的全部**确定**位置。uncertain=true 表示存在同名但位置非逐字对齐的 token
29
+ * (领域词汇翻译、推算位置)——此时重命名必须整体拒绝,不能只改一部分或改到推算的位置。
30
+ */
31
+ export declare function exactIdentifierPositions(tokens: readonly any[], text: string, name: string): {
32
+ positions: Array<{
33
+ start: number;
34
+ end: number;
35
+ }>;
36
+ uncertain: boolean;
37
+ };
6
38
  import type { Module as AstModule, Declaration as AstDecl, Func as AstFunc, Block as AstBlock, Span } from '../../types.js';
7
39
  /**
8
40
  * 转义字符串中的正则元字符,使其可安全嵌入 `new RegExp(...)`。
@@ -16,7 +48,7 @@ export declare function escapeRegExp(str: string): string;
16
48
  * @param offset 偏移量位置
17
49
  * @returns 捕获的单词,如果不在单词位置则返回 null
18
50
  */
19
- export declare function captureWordAt(text: string, offset: number): string | null;
51
+ export declare function captureWordAt(text: string, offset: number, lexicon?: Lexicon): string | null;
20
52
  /**
21
53
  * 查找文本中所有单词出现位置
22
54
  * @param text 文本内容
@@ -33,7 +65,7 @@ export declare function findWordPositions(text: string, word: string): Array<{
33
65
  * @param word 要查找的标记或单词
34
66
  * @returns 标记位置数组,如果词法分析失败则回退到正则匹配
35
67
  */
36
- export declare function findTokenPositionsSafe(text: string, word: string): Array<{
68
+ export declare function findTokenPositionsSafe(text: string, word: string, lexicon?: Lexicon): Array<{
37
69
  start: number;
38
70
  end: number;
39
71
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/lsp/navigation/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../../src/lsp/navigation/shared.ts"],"names":[],"mappings":"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"}