Skip to content

Commit 0a5ff8e

Browse files
committed
Enable kv file detection by default
1 parent 9f22bda commit 0a5ff8e

2 files changed

Lines changed: 2 additions & 66 deletions

File tree

package.json

Lines changed: 1 addition & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -316,29 +316,9 @@
316316
"title": "Source Engine",
317317
"properties": {
318318
"sourceEngine.kvAutoDetect.enabled": {
319-
"type": "boolean",
320-
"default": false,
321-
"description": "Enable automatic detection of KeyValues files."
322-
},
323-
"sourceEngine.kvAutoDetect.onlyInSourceEngineWorkspaces": {
324319
"type": "boolean",
325320
"default": true,
326-
"description": "Enable automatic detection of KeyValues files only in workspaces."
327-
},
328-
"sourceEngine.sourceEngineWorkspaces": {
329-
"type": "array",
330-
"default": [
331-
"C:\\Program Files (x86)\\Steam\\SteamApps\\common\\Portal 2",
332-
"C:\\Program Files (x86)\\Steam\\SteamApps\\common\\Half Life 2",
333-
"C:\\Program Files (x86)\\Steam\\SteamApps\\common\\Counter Strike Global Offensive",
334-
"C:\\Program Files (x86)\\Steam\\SteamApps\\common\\Team Fortress 2",
335-
"C:\\Program Files (x86)\\Steam\\SteamApps\\common\\Left 4 Dead 2",
336-
"C:\\Program Files (x86)\\Steam\\SteamApps\\common\\Alien Swarm"
337-
],
338-
"description": "List of Source Engine workspaces. Some features are only enabled for files which are located in these workspaces.",
339-
"items": {
340-
"type": "string"
341-
}
321+
"description": "Enable automatic detection of KeyValues files."
342322
},
343323
"sourceEngine.performance.log": {
344324
"type": "boolean",

src/KvFileDetection.ts

Lines changed: 1 addition & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,13 @@
11
import path from "path";
22
import * as vscode from "vscode";
33
import * as main from "./main";
4-
import * as shared from "./language/Shared";
54

65
function isAutoDetectEnabled(): boolean {
76
return main.config.get<boolean>("kvAutoDetect.enabled", false);
87
}
98

10-
function isAutoDetectEnabledOnlyInWorkspaces(): boolean {
11-
return main.config.get<boolean>("kvAutoDetect.onlyInSourceEngineWorkspaces", true);
12-
}
13-
14-
function getSourceEngineWorkspaces(): string[] {
15-
return main.config.get<string[]>("sourceEngineWorkspaces", []);
16-
}
17-
18-
199
type DetectableLanguageId = "keyvalue3" | "soundscript" | "captions";
10+
2011
interface CommonFileName {
2112
regex: RegExp;
2213
languageId: DetectableLanguageId;
@@ -93,15 +84,6 @@ function detectKeyvalueFile(editor: vscode.TextEditor, context: vscode.Extension
9384
}
9485

9586
function getPotentialKvFileLanguageId(document: vscode.TextDocument): DetectableLanguageId | undefined {
96-
if(isAutoDetectEnabledOnlyInWorkspaces()) {
97-
98-
if(!isDocumentInSourceEngineWorkspace(document)) {
99-
main.debugOutput.appendLine(`Auto detect is enabled only in source engine workspaces, but the document (${document.uri.fsPath}) is not in a source engine workspace.`);
100-
return undefined;
101-
}
102-
103-
}
104-
10587
const documentFileName = path.basename(document.uri.fsPath);
10688

10789
main.debugOutput.appendLine(`Auto detect is enabled. Checking if filename (${documentFileName}) is in list of common kv file names.`);
@@ -113,29 +95,3 @@ function getPotentialKvFileLanguageId(document: vscode.TextDocument): Detectable
11395
main.debugOutput.appendLine(`! File (${document.uri.fsPath}) has a common file name and is associated with LanguageId: ${match.languageId}`);
11496
return match.languageId;
11597
}
116-
117-
function isDocumentInSourceEngineWorkspace(document: vscode.TextDocument): boolean {
118-
let fileUri: string = document.uri.fsPath;
119-
let sourceEngineWorkspaces: string[] = getSourceEngineWorkspaces();
120-
121-
// Make paths lower case on windows
122-
if(process.platform === "win32") {
123-
fileUri = fileUri.toLowerCase();
124-
sourceEngineWorkspaces = sourceEngineWorkspaces.map((workspace) => workspace.toLowerCase());
125-
}
126-
127-
main.debugOutput.appendLine(`Checking if file (${fileUri}) is in any source engine workspace.`);
128-
129-
for(const workspace of sourceEngineWorkspaces) {
130-
main.debugOutput.appendLine(`- Checking if file (${fileUri}) is in workspace (${workspace})`);
131-
if(fileUri.startsWith(workspace)) {
132-
main.debugOutput.appendLine(`! File (${fileUri}) is in workspace (${workspace})`);
133-
return true;
134-
}
135-
}
136-
137-
main.debugOutput.appendLine(`! File (${fileUri}) is not in any source engine workspace.`);
138-
139-
return false;
140-
}
141-

0 commit comments

Comments
 (0)