From 63085e8752e8e08e6a61903ce3442b1e25c09c67 Mon Sep 17 00:00:00 2001 From: cweijan Date: Mon, 25 Jan 2021 09:16:35 +0800 Subject: [PATCH] Support detech table with dot. --- CHANGELOG.md | 2 +- src/common/util.ts | 1 - src/provider/complete/chain/columnChain.ts | 2 +- src/provider/complete/complectionContext.ts | 3 ++- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 72d9539..f392880 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ - Fix redis folder Infinite recursion load bug. - Add GUI of index manager view. - Implement database struct sync feature. -- Fix intetllisense sql fail when cache not exists. +- Enhance intetllisense sql. # 3.2.1 2020/1/23 diff --git a/src/common/util.ts b/src/common/util.ts index 840dd57..c7efc11 100644 --- a/src/common/util.ts +++ b/src/common/util.ts @@ -11,7 +11,6 @@ export class Util { const tableMatch = new RegExp(tablePattern, 'img').exec(sql) if (tableMatch) { return tableMatch[0].replace(/\bfrom|join|update|into\b/i, "") // remove keyword - .replace(/(\w|\s|-|`)*\./, "")// remove databasename .replace(/`/g, "")// trim tableName .trim() } diff --git a/src/provider/complete/chain/columnChain.ts b/src/provider/complete/chain/columnChain.ts index 5f246a7..f36e9b4 100644 --- a/src/provider/complete/chain/columnChain.ts +++ b/src/provider/complete/chain/columnChain.ts @@ -64,7 +64,7 @@ export class ColumnChain implements ComplectionChain { return columnNodes.map((columnNode) => { const completionItem = new vscode.CompletionItem(columnNode.label); - completionItem.documentation=columnNode.description as string + completionItem.detail=columnNode.description as string completionItem.insertText = columnNode.column.name completionItem.kind = vscode.CompletionItemKind.Field; return completionItem; diff --git a/src/provider/complete/complectionContext.ts b/src/provider/complete/complectionContext.ts index 71a1b99..fd53c3a 100644 --- a/src/provider/complete/complectionContext.ts +++ b/src/provider/complete/complectionContext.ts @@ -25,7 +25,7 @@ export class ComplectionContext { const prePostion = position.character === 0 ? position : new vscode.Position(position.line, position.character - 1); const preChart = position.character === 0 ? null : document.getText(new vscode.Range(prePostion, position)); - const wordMatch = currentSql.match(/(\w|-|\_|\*)+/g); + const wordMatch = currentSql.match(/(\w|-|\_|\*|\.)+/g); if (wordMatch) { if ((preChart == null || preChart.match(/[\. \(\)\[\]\'\"]/)) && wordMatch.length >= 1) { context.preWord = wordMatch[wordMatch.length - 1]; @@ -33,6 +33,7 @@ export class ComplectionContext { context.preWord = wordMatch[wordMatch.length - 2]; } } + context.preWord=context.preWord?.replace(/\.$/,'') const codeMatch = currentSql.match(/(\w|=|<|>|\()+$/); if (codeMatch) { context.currentWord = codeMatch[0];