diff --git a/src/providers/OilFileSystemProvider.ts b/src/providers/OilFileSystemProvider.ts index 3c4889f..e44eafb 100644 --- a/src/providers/OilFileSystemProvider.ts +++ b/src/providers/OilFileSystemProvider.ts @@ -11,8 +11,6 @@ export class OilFileSystemProvider implements vscode.FileSystemProvider { >(); readonly onDidChangeFile = this._onDidChangeFile.event; - private _documents = new Map(); - // Create or update an in-memory document writeFile(_uri: vscode.Uri, _content: Uint8Array): void {} @@ -24,11 +22,6 @@ export class OilFileSystemProvider implements vscode.FileSystemProvider { const newOilState = initOilState(); setOilState(newOilState); oilState = newOilState; - this._documents.clear(); // Clear cache on new state - } - const content = this._documents.get(uri.toString()); - if (content) { - return content; } const folderPath = oilUriToDiskPath(uri); const directoryContent = await getDirectoryListing(folderPath, oilState); @@ -36,13 +29,11 @@ export class OilFileSystemProvider implements vscode.FileSystemProvider { throw vscode.FileSystemError.FileNotFound(uri); } const buffer = Buffer.from(directoryContent); - this._documents.set(uri.toString(), buffer); return buffer; } // Delete an in-memory document delete(uri: vscode.Uri): void { - this._documents.delete(uri.toString()); this._onDidChangeFile.fire([{ type: vscode.FileChangeType.Changed, uri }]); } diff --git a/src/test/extension.test.ts b/src/test/extension.test.ts index 73dd5b1..93b1d4e 100644 --- a/src/test/extension.test.ts +++ b/src/test/extension.test.ts @@ -703,7 +703,7 @@ suite("oil.code", () => { assert.ok(previewEditor, "No editor found for the preview tab"); assert.strictEqual( previewEditor.document.getText(), - ["/000 ../", "/000 oil-file1.md", "/000 oil-file2.md"].join(newline), + ["/000 ../", "/002 oil-file1.md", "/003 oil-file2.md"].join(newline), "Preview content does not match expected content" ); }); @@ -735,7 +735,7 @@ suite("oil.code", () => { assert.ok(previewEditor, "No editor found for the preview tab"); assert.strictEqual( previewEditor.document.getText(), - ["/000 ../", "/000 oil-dir/"].join(newline), + ["/000 ../", "/001 oil-dir/"].join(newline), "Preview content does not match expected content" ); }); diff --git a/src/utils/fileUtils.ts b/src/utils/fileUtils.ts index e670eb3..59a3576 100644 --- a/src/utils/fileUtils.ts +++ b/src/utils/fileUtils.ts @@ -51,7 +51,7 @@ export async function getDirectoryListing( if (oilState.visitedPaths.has(folderPathUri)) { const previousListings = oilState.visitedPaths.get(folderPathUri)!; for (const file of previousListings) { - const fileName = file.slice(4); + const fileName = file.slice(5); if (listings.includes(fileName)) { existingFiles.set(fileName, file); } @@ -68,13 +68,11 @@ export async function getDirectoryListing( } // Use and increment the global counter for each file/directory - const identifier = preview - ? GO_UP_IDENTIFIER - : `/${oilState.identifierCounter.toString().padStart(3, "0")}`; + const identifier = `/${oilState.identifierCounter + .toString() + .padStart(3, "0")}`; - if (!preview) { - oilState.identifierCounter++; - } + oilState.identifierCounter++; return `${identifier} ${name}`; });