From e707ae21d5eb611bed1d13105f82e78abb75e6be Mon Sep 17 00:00:00 2001 From: zeng_j Date: Sat, 2 Apr 2022 16:10:21 +0800 Subject: [PATCH 1/3] snippets tooltip display more friendly --- lib/ace/ext/language_tools.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/ace/ext/language_tools.js b/lib/ace/ext/language_tools.js index 2cbeea45a27..371fcf29d43 100644 --- a/lib/ace/ext/language_tools.js +++ b/lib/ace/ext/language_tools.js @@ -49,6 +49,13 @@ var keyWordCompleter = { } }; +var transformSnippetTooltip = function(str) { + var record = {} + return str.replace(/\${(\d+)(:(.*?))?}/g, function(_, p1, p2, p3) { + return (record[p1] = p3 || ''); + }).replace(/\$(\d+?)/g, (_, p1) => record[p1]) +} + var snippetCompleter = { getCompletions: function(editor, session, pos, prefix, callback) { var scopes = []; @@ -83,7 +90,7 @@ var snippetCompleter = { if (item.type == "snippet" && !item.docHTML) { item.docHTML = [ "", lang.escapeHTML(item.caption), "", "
", - lang.escapeHTML(item.snippet) + lang.escapeHTML(transformSnippetTooltip(item.snippet)) ].join(""); } } From b78d77240e1909b9d91fcd2ac35a4c17af05f56b Mon Sep 17 00:00:00 2001 From: zeng_j Date: Fri, 8 Apr 2022 10:06:53 +0800 Subject: [PATCH 2/3] fix: Modify syntax --- lib/ace/ext/language_tools.js | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/ace/ext/language_tools.js b/lib/ace/ext/language_tools.js index 371fcf29d43..4ba2e34c5bf 100644 --- a/lib/ace/ext/language_tools.js +++ b/lib/ace/ext/language_tools.js @@ -50,10 +50,12 @@ var keyWordCompleter = { }; var transformSnippetTooltip = function(str) { - var record = {} + var record = {}; return str.replace(/\${(\d+)(:(.*?))?}/g, function(_, p1, p2, p3) { return (record[p1] = p3 || ''); - }).replace(/\$(\d+?)/g, (_, p1) => record[p1]) + }).replace(/\$(\d+?)/g, function (_, p1) { + return record[p1]; + }) } var snippetCompleter = { From 62d2d1ad1f942bd738adadd90f8afb29050b8465 Mon Sep 17 00:00:00 2001 From: zeng_j Date: Fri, 15 Apr 2022 11:57:35 +0800 Subject: [PATCH 3/3] style: code eslint --- lib/ace/ext/language_tools.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/ace/ext/language_tools.js b/lib/ace/ext/language_tools.js index 4ba2e34c5bf..396342ccade 100644 --- a/lib/ace/ext/language_tools.js +++ b/lib/ace/ext/language_tools.js @@ -55,8 +55,8 @@ var transformSnippetTooltip = function(str) { return (record[p1] = p3 || ''); }).replace(/\$(\d+?)/g, function (_, p1) { return record[p1]; - }) -} + }); +}; var snippetCompleter = { getCompletions: function(editor, session, pos, prefix, callback) {