Skip to content

Commit c21ea2e

Browse files
committed
Rename touchups
1 parent b6114ff commit c21ea2e

File tree

4 files changed

+286
-5162
lines changed

4 files changed

+286
-5162
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ Syntax Highlighter for VSCodes JSON TextMate grammars
99
* Formatting
1010
* Schema support
1111
* `repository`/`include` Call Hierarchy View
12+
* [F2] Rename
1213
* Supported in [VSCode Web](https://insiders.vscode.dev/)
1314

1415
Example code:

out/RenameProvider.js

Lines changed: 30 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,11 @@ const TreeSitter_1 = require("./TreeSitter");
66
const cursorQuery = `
77
(include (value (scopeName) @scopeName))
88
(include (value (ruleName) @ruleName))
9-
(json (scopeName (value) @root_scopeName))
9+
;(json (scopeName (value) @root_scopeName))
1010
(repo (key) @repo)
1111
`;
1212
exports.RenameProvider = {
13-
async provideRenameEdits(document, position, newName, token) {
13+
/* async */ provideRenameEdits(document, position, newName, token) {
1414
// vscode.window.showInformationMessage(JSON.stringify("RenameEdit"));
1515
const trees = (0, TreeSitter_1.getTrees)(document);
1616
const jsonTree = trees.jsonTree;
@@ -36,27 +36,28 @@ exports.RenameProvider = {
3636
query += `(include (value (ruleName) @ruleName) @include (#eq? @include "${rootScopeName}#${cursorText}"))`;
3737
}
3838
break;
39-
case 'root_scopeName':
40-
// const uriPackage = vscode.Uri.joinPath(uri, '../../package.json');
41-
// await vscode.workspace.openTextDocument(uriPackage);
42-
// for (const textDocument of vscode.workspace.textDocuments) {
43-
// if (!vscode.languages.match({ pattern: "**/package.json", scheme: "file" }, textDocument)) {
44-
// continue;
45-
// }
46-
// try {
47-
// const packageParsed = await JSON.parse(textDocument.getText());
48-
// const grammars = packageParsed.contributes?.grammars;
49-
// if (grammars) {
50-
// for (const grammar of grammars) {
51-
// if (grammar.scopeName == cursorText) {
52-
// const edit = new vscode.TextEdit(range, newName); // Cant get range
53-
// workspaceEdits.set(textDocument.uri, [edit]);
54-
// }
55-
// }
56-
// }
57-
// } catch (error) {
58-
// }
59-
// }
39+
// case 'root_scopeName':
40+
// const uriPackage = vscode.Uri.joinPath(uri, '../../package.json');
41+
// await vscode.workspace.openTextDocument(uriPackage);
42+
// for (const textDocument of vscode.workspace.textDocuments) {
43+
// if (!vscode.languages.match({ pattern: "**/package.json", scheme: "file" }, textDocument)) {
44+
// continue;
45+
// }
46+
// try {
47+
// const packageParsed = await JSON.parse(textDocument.getText());
48+
// const grammars = packageParsed.contributes?.grammars;
49+
// if (grammars) {
50+
// for (const grammar of grammars) {
51+
// if (grammar.scopeName == cursorText) {
52+
// const edit = new vscode.TextEdit(range, newName); // Cant get range
53+
// workspaceEdits.set(textDocument.uri, [edit]);
54+
// }
55+
// }
56+
// }
57+
// } catch (error) {
58+
// }
59+
// }
60+
// break;
6061
case 'scopeName':
6162
query += `(include (value (scopeName) @scopeName (#eq? @scopeName "${cursorText}")))`;
6263
query += `(json (scopeName (value) @scopeName (#eq? @scopeName "${cursorText}")))`;
@@ -95,16 +96,16 @@ exports.RenameProvider = {
9596
if (!cursorCapture) {
9697
return Promise.reject('Item not renamable');
9798
}
98-
const cursorName = cursorCapture.name;
99+
// const cursorName = cursorCapture.name;
99100
const cursorNode = cursorCapture.node;
100101
const cursorText = cursorNode.text;
101102
const cursorRange = (0, TreeSitter_1.toRange)(cursorNode);
102-
if (cursorName == 'root_scopeName') {
103-
const uriPackage = vscode.Uri.joinPath(document.uri, '../../package.json');
104-
vscode.workspace.openTextDocument(uriPackage);
105-
}
103+
// if (cursorName == 'root_scopeName') {
104+
// const uriPackage = vscode.Uri.joinPath(document.uri, '../../package.json');
105+
// vscode.workspace.openTextDocument(uriPackage);
106+
// }
106107
const rename = { range: cursorRange, placeholder: cursorText };
107108
// vscode.window.showInformationMessage(JSON.stringify(rename));
108109
return rename;
109-
}
110+
},
110111
};

0 commit comments

Comments
 (0)