DEV Community

Cover image for Automatically Open the Current Directory in VS Code From Terminal
Shannon Crabill
Shannon Crabill

Posted on • Originally published at shannoncrabill.com on

Automatically Open the Current Directory in VS Code From Terminal

Last year, I was blown away by some Terminal commands that I learned. My favorite one is open . to open a Finder window for whichever directory you are currently in.

At one point I had a similar command to instantly open a folder in VS Code (Visual Studio Code), but deleted it after I switched from VS Code to Atom. I’ve since switched back to VS Code and after begrudgingly dragging folders into VS Code to open them, I decided to figure out how to enable that command.

Luckily, it takes a few steps to activate.

  • With VS Code running, enter Command + Shift + P to open the Command Palette (or View > Command Palette from the menu bar)

Alt Text

  • A search bar will open up. Search for “Shell” or “Shell Command” and you should see one named Shell Command: install "code" command in PATH.

Alt Text

  • Select it and a confirmation Shell command "code" successfully installed in PATH. should pop up (for me the pop up appeared in the lower, righthand corner).

Alt Text

  • If you already have a Terminal session running, quit or restart it.

  • When you are in the directory with the files you want to open in VS Code, type code . (that is the word “code” followed by a space, then a period) and the folder will automatically open in VS Code.

Alt Text

The post Automatically Open the Current Directory in VS Code From Terminal appeared first on Shannon Crabill — Front End Software Engineer.

Discussion (11)

Collapse
moopet profile image
Ben Sinclair • Edited on

I'm pretty sure VS Code installs itself into the path anyway, doesn't it? I've never had to do anything and it works using code even on Windows.

A hot tip though using open is that you can pass anything to it and it'll behave like you clicked that thing in the GUI, even URLs. So on a Mac, you could do open https://dev.to and it'd open in your default browser. Since VS Code registers itself as the handler for vscode schemes, you can also do this:

open 'vscode://file//Users/myusername/projects/myfile.txt:123:45'
Enter fullscreen mode Exit fullscreen mode

And it'll open VS Code with the file /Users/myusername/projects/myfile.txt and your cursor already on line 123 and column 45. This is how those error messages that say things like "syntax error at line 20" get to magically work in some cases.

If you use VSCodium, change the appropriate bit to vscodium://, if you use Gnome or any derivatives, change open to gnome-open. Other Linux systems have other syntaxes, but generally one of those two will get you by.

Collapse
scrabill profile image
Shannon Crabill Author

A hot tip though using open is that you can pass anything to it and it'll behave like you clicked that thing in the GUI, even URLs. So on a Mac, you could do open dev.to and it'd open in your default browser. Since VS Code registers itself as the handler for vscode schemes, you can also do this:

open 'vscode://file//Users/myusername/projects/myfile.txt:123:45'
Enter fullscreen mode Exit fullscreen mode

And it'll open VS Code with the file /Users/myusername/projects/myfile.txt and your cursor already on line 123 and column 45. This is how those error messages that say things like "syntax error at line 20" get to magically work in some cases.

Whooooooooa I did not know you could get this specific with open .. This should be it's own blog post.

Collapse
nickytonline profile image
Nick Taylor (he/him) • Edited on

It doesn't from what I've understood. You have to do it explicitly. I typically do it via the command palette like Shannon did.

Collapse
moopet profile image
Ben Sinclair

Have you tried it without? What OS are you using?

Collapse
webdevjoshb profile image
Joshua Blauvelt • Edited on

This is great, thanks! I can open any folder from the integrated terminal but it will start a new instance of VS Code; is there a way to open the folder within the same VS Code instance? screenshot

Collapse
robyyo profile image
Rob

Try code -r [name of file/folder]

Collapse
sudhakar6 profile image
Sudhakar • Edited on

Try code -a . (It opens the folder within the same VS Code instance)
Try code -r . (It refreshes the same VS Code instance and opens the folder, terminal also gets refreshed)

Collapse
jamesqquick profile image
James Q Quick

Yassss!! Use this all the time. Share in Discord :)

Collapse
mmranger profile image
Mike McQueen

This plus the gpm plugin, which let's me open any git project from within vscode Without trying my hands off the keyboard make me feel like "Hackerman".

Collapse
molikawsaud profile image
Saad Bakhiyi

Thank you, you help a lot

Collapse
phutngo profile image
Phu Ngo

Anyway to do it the other way around? When I open a folder from vscode, to then automatically open the terminal?