summaryrefslogtreecommitdiff
path: root/extension/src/suggestions.ts
diff options
context:
space:
mode:
authorNate Sesti <sestinj@gmail.com>2023-06-30 17:25:35 -0700
committerNate Sesti <sestinj@gmail.com>2023-06-30 17:25:35 -0700
commit81a5ed86119b81a07daf31144e8f09fe6b66246d (patch)
tree7c1c66842a251069336591f0d67bac297de81534 /extension/src/suggestions.ts
parent965d7f2ac778b9f7f0bca0e26eb474bb69a0ece3 (diff)
downloadsncontinue-81a5ed86119b81a07daf31144e8f09fe6b66246d.tar.gz
sncontinue-81a5ed86119b81a07daf31144e8f09fe6b66246d.tar.bz2
sncontinue-81a5ed86119b81a07daf31144e8f09fe6b66246d.zip
the fix. and others.
Diffstat (limited to 'extension/src/suggestions.ts')
-rw-r--r--extension/src/suggestions.ts50
1 files changed, 14 insertions, 36 deletions
diff --git a/extension/src/suggestions.ts b/extension/src/suggestions.ts
index e269f38a..baa49711 100644
--- a/extension/src/suggestions.ts
+++ b/extension/src/suggestions.ts
@@ -4,6 +4,8 @@ import { openEditorAndRevealRange } from "./util/vscode";
import { translate, readFileAtRange } from "./util/vscode";
import * as fs from "fs";
import * as path from "path";
+import { registerAllCodeLensProviders } from "./lang-server/codeLens";
+import { extensionContext } from "./activation/activate";
export interface SuggestionRanges {
oldRange: vscode.Range;
@@ -125,6 +127,10 @@ export function rerenderDecorations(editorUri: string) {
suggestions[idx].newRange,
vscode.TextEditorRevealType.Default
);
+
+ if (extensionContext) {
+ registerAllCodeLensProviders(extensionContext);
+ }
}
export function suggestionDownCommand() {
@@ -337,42 +343,14 @@ export async function showSuggestion(
range: vscode.Range,
suggestion: string
): Promise<boolean> {
- // const existingCode = await readFileAtRange(
- // new vscode.Range(range.start, range.end),
- // editorFilename
- // );
-
- // If any of the outside lines are the same, don't repeat them in the suggestion
- // const slines = suggestion.split("\n");
- // const elines = existingCode.split("\n");
- // let linesRemovedBefore = 0;
- // let linesRemovedAfter = 0;
- // while (slines.length > 0 && elines.length > 0 && slines[0] === elines[0]) {
- // slines.shift();
- // elines.shift();
- // linesRemovedBefore++;
- // }
-
- // while (
- // slines.length > 0 &&
- // elines.length > 0 &&
- // slines[slines.length - 1] === elines[elines.length - 1]
- // ) {
- // slines.pop();
- // elines.pop();
- // linesRemovedAfter++;
- // }
-
- // suggestion = slines.join("\n");
- // if (suggestion === "") return Promise.resolve(false); // Don't even make a suggestion if they are exactly the same
-
- // range = new vscode.Range(
- // new vscode.Position(range.start.line + linesRemovedBefore, 0),
- // new vscode.Position(
- // range.end.line - linesRemovedAfter,
- // elines.at(-1)?.length || 0
- // )
- // );
+ // Check for empty suggestions:
+ if (
+ suggestion === "" &&
+ range.start.line === range.end.line &&
+ range.start.character === range.end.character
+ ) {
+ return Promise.resolve(false);
+ }
const editor = await openEditorAndRevealRange(editorFilename, range);
if (!editor) return Promise.resolve(false);