Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Change title of untitled tab in Visual Studio Code

I'm building a VS Code extension which includes changing the name/title of untitled-1 tab (unsaved file).
I tried running the below code in debugger console of extension but it didn't reflect in the editor:

vscode.workspace.textDocuments[0].fileName="myFile"

Is it not possible or am I missing something?

like image 232
GorvGoyl Avatar asked Aug 25 '17 08:08

GorvGoyl


People also ask

How do I rename an untitled workspace?

Also, the complete path to the file, including the drive letter, server name, folder path, and file name, can contain up to 255 characters. From the Main toolbar, click the Open Workspace icon. The Open Workspace dialog is displayed. Right-click the workspace name to rename.


2 Answers

It is still (Q1 2020) not possible, but the next VSCode 1.42 will name its Untitled editors differently.

Untitled editors in VS Code are text buffers that have not yet been saved to disk.
You can leave them open for as long as you like and all text content is stored and restored between restarts.

Untitled editors were given generic names such as Untitled-1 and counting upwards.
In this release, untitled editors will use the content of the first line of the document for the editor title, and include the generic name as part of the description:

https://media.githubusercontent.com/media/microsoft/vscode-docs/vnext/release-notes/images/1_42/untitled-title2.gif

Note: If the first line is empty or does not contain any words, the title will fall back to Untitled_* as before.

So while you cannot set the title yourself (still readonly fileName), technically... changing the first line of that file would be enough to change the title of said "Untitled" editor.


With VSCode 1.43 (Q1 2020), a new setting workbench.editor.untitled.labelFormat allows to control whether untitled editors should use the contents as title or not.
Possible values are content or name.
Configure 'workbench.editor.untitled.labelFormat': 'name' to get the previous behavior back where untitled editors would have a short title, such as Untitled-1.

like image 142
VonC Avatar answered Oct 22 '22 16:10

VonC


It's not possible - if you check out the source code for the API definition in vscode.d.ts, you'll see that fileName is declared as readonly:

export interface TextDocument {
    // ...
    readonly fileName: string;
    // ...
}

Unfortunately, it seems that the readonly attribute isn't reflected in the API docs on the website.

like image 22
Gama11 Avatar answered Oct 22 '22 14:10

Gama11