Reloading keybindings.json without restarting vscode - visual-studio-code

Is there a way to reload keybindings.json in vscode without having to fully restart the editor?

The keybindings.json file is watched by VS Code so editing it while VS Code is running will update the rules at runtime.

You can reload your current window without restarting VSCode.
This will refresh your keybindings ๐Ÿ‘๐Ÿผ
Open: Command Palette
Windows/Linux: Ctrl + Shift + P
Mac: โŒ˜ + Shift + P
Type: reload
Select: Developer: Reload Window

Related

Cannot open terminal in VS Code

I need to open a terminal in Visual Studio. I've tried
Re-installing VS Code
The usual Windows shut down / restart
Run vs code as admin
Change settings.json file
I didn't change anything but something is broken in my code Editor help needed :)
For Windows users:
Open PowerShell terminal (windows button + r -> cmd)
Right click on the title bar
Open properties
Check the "Use legacy console" checkbox
For Linux users:
Open VS Code
Ctrl + ,
Search env and find Terminal > Integrated> Env: Linux
Add this "terminal.integrated.inheritEnv": true to the object body
Press ctrl + `. It might work, and if it doesn't, try reinstalling the vs-code again and then try the above key combo again.

Cut line shortcut in Visual Studio Code (Ctrl+L in VS) (not delete line!)

Visual Studio has by default the shortcut Ctrl+l (cut line). It copies the line where the cursor is to the clipboard and deletes it.
I cannot find it in Visual Studio Code. Is there a way to add it as end user?
(I know there is Ctrl+Shift+K for delete line, which is not the same)
What you are looking for is the Cut command:
editor.action.clipboardCutAction
It cuts (copies to the clipboard then deletes the line) either a selection or the entire line if nothing is selected.
I tested it with vscode 1.23.1
On windows this command is bound to Ctrl + X as well as to Shift + Delete by default.
Command works this way when Editor: Empty Selection Clipboard preference is enabled. It is enabled by default:
"editor.emptySelectionClipboard": true
I was a able to get the same functionality (i.e., mimicking Sublime Text's 'cut selection' functionality) by doing the following:
Added the 'macros' extension by geddski:
Added the following entries to my settings.json file (ctrl+shift+p, "Preferences: Open Settings (JSON)")
"macros": {
"cutLines": [
"expandLineSelection",
"editor.action.clipboardCutAction"
]
}
Added the following to my settings json file (ctrl+shift+p, "Preferences: Open Keyboard Shortcuts"):
{
"key": "ctrl+x",
"command": "macros.cutLines",
"when": "!editorHasSelection"
},
To get VS Code to recognize the command I had to add uninstall and reinstall the "macros" extension. I presume adding the entries and then installing it for the first time would produce the same result.
For debugging purposes, here is a screenshot of my keybindings for "Ctrl+x" when I had everything working the way I wanted. Compare yours by typing "Open Keyboard Shortcuts" into the command prompt and searching for "Ctrl+x".
Shift + Delete on VS Code cuts the line i.e. copies the line to the clipboard and deletes it.
I am running VS Code on Ubuntu 18.
Edit:
Ctrl + X also works the same way.

How can I clear the terminal in Visual Studio Code?

I need to clean the contents of the terminal in Visual Studio Code.
Every time I use Maven, the output of the terminal is attached to the previous build, which is confusing me.
How do I clear the terminal window with some command or keyboard shortcut?
cls doesn't work; it only hides the text.
Use Ctrl+K. This goes clean your console in Visual Studio Code.
Per comments, in later versions of VSCode (1.29 and above) this shortcut is missing / needs to be created manually.
Navigate: File > Preferences > Keyboard Shortcuts
search for workbench.action.terminal.clear
If it has no mapping or you wish to change the mapping, continue; otherwise note & use the existing mapping
Double click on this entry & you'll be prompted for a key binding. Hold CTRL and tap K. Ctrl + K should now be listed. Press enter to save this mapping
Right click the entry and select Change when expression. Type terminalFocus then press enter.
That's it. Now, when the terminal is in focus and you press Ctrl+K you'll get the behaviour you'd have expected to get from running clear/cls.
Ctrl + Shift + P and select Terminal:clear
FOR VERSIONS AT AND ABOVE v1.32 SEE BELOW
Bindings for this command still need to be setup manually, even at v1.33.1, which I am at. The command is there under Terminal: Clear but the binding is blank. Here is how you can setup bindings in v1.32 and up.
Open up the Keyboard Shortcuts with Ctrl+K, Ctrl+S. Then click on the {} next to the Keyboard Shortcuts tab to open up the keybindings.json file.
After doing so, find some open space anywhere in the file, and type in the key bind below.
{
"key": "ctrl+k",
"command": "workbench.action.terminal.clear",
"when": "terminalFocus"
}
FOR VERSIONS UP TO v1.32 SEE BELOW
This is for Visual Studio Code v1.18 up to v1.32, I believe; I am on v1.29.1. Since apparently there are a whole lot of assumptions about the default bindings, here is how you set up a binding, then use it. Keep in mind this binding will completely delete all of the history in your terminal too.
Open up the Keyboard Shortcuts with Ctrl+K, Ctrl+S. Once you are in Keyboard Shortcuts, click on keybindings.json in the text that says ....open and edit keybindings.json. Then on the RIGHT side, in the keybindings.json, add this (make sure you put a comma before the first { if there are one or more bindings already):
{
"key": "ctrl+k",
"command": "workbench.action.terminal.clear",
"when": "terminalFocus"
}
FOR ALL VERSIONS
Remember, the "key": can be whatever binding you want. It doesn't HAVE to be Ctrl + K.
To use the keybinding, you must have focus in your terminal, and then do the binding.
To clear Terminal in VS Code simply press Ctrl + Shift + P key together this will open a command palette and type command Terminal: Clear. Also you will go to View in taskbar upper left corner of vs code and open Command pallete.
This will clear the terminal easily & work for any directory you have open in your terminal.
This is for Windows, also try if it works for Mac.
This is command is work in all VS code versions include latest version 1.52.1
Go to
File >Preferences >Keyboard shortcuts.
Search for "Terminal: clear"
By default no keyboard shortcut is assigned.
Just click on the Plus (+)icon in the banner and give the preferred
shortcut of your choice to clear the terminal.
I prefer to use ctrl+k as that shortcut is not assigned with any command.
2019 Update (Read in Full)
Shortcut
Mac: cmd + k
Windows: ctrl + k
TroubleShooting
If the shortcuts do not work for you, the most likely scenario is that either you or an extension you installed has added an open ended ctrl + k / cmd + k chord to another shortcut.
Open ended meaning, the shortcut does not have an explicit when clause that excludes terminal focus. There are two possible solutions here.
Solution 1:
If you added the shortcut, simply go to your keybindings.json file and add a when clause that does not include terminal focus. Example:
{
"key": "cmd+k cmd+c",
"command": "someCommandHere",
"when": "editorTextFocus",
}
Solution 2:
Alternatively, you can add the workbench.action.terminal.clear command to the very bottom of keybindings.json, ensuring it takes precedence over other shortcuts. It'd be wise to add a comment so you don't forget and later place new chords below it. Example:
// Keep this keybinding at very bottom of file to ensure terminal clearing.
{
"key": "cmd+k",
"command": "workbench.action.terminal.clear",
"when": "terminalFocus",
}
For additional information, check out this GitHub issue.
For a MacBook, it might not be Cmd + K...
There's a long discussion for cases where Cmd + K wouldn't work.
In my case, I made a quick fix with
cmd+K +cmd+ K
Go to menu Preferences -> Key shortcuts -> Search ('clear'). Change it from a single K to a double K...
Use Ctrl+K to clear the terminal.
But this is not possible in Linux Visual Studio Code.
For Linux you can do like below:
Via the command palette: ctrl+shift+p, "tclear"
To add this in shortcuts, copy paste this in keybinding file:
{
"key": "ctrl+k",
"command": "workbench.action.terminal.clear",
"when": "terminalFocus"
}
V1.33 won't accept ctrl + k to clear terminal (Windows).
You need to enable manually by adding below code in your keybiniding.json, it will override the defaults.
In your VSCode, press ctrl + shift + p, search for keyboard and click on Open Keyboard Shortcuts to open the keybindings.json file.
Note: If you open the Default one, it will show the default settings, but as this file is read-only, you can't edit it manually.
Paste the following script in keybindings.json
{
"key": "ctr+k",
"command": "workbench.action.terminal.clear",
"when": "terminalFocus"
}
Save the file.
Now your terminal will clear by crtl + k
To clear the terminal, using default keybindings on the newest version of VS-Code, you press CTRL-L.
You can use below to clear the screen in terminal:
cls;
or
clr
Right click on the terminal and select clear option (for ubuntu).
For mac just type clear
workbench.action.terminal.clear no longer works (at least for VS Code Insiders 1.54 on Mac)
The following is the way to now map CTRL+L yo the default console functionality.
{
"key": "ctrl+l",
"command": "workbench.action.terminal.sendSequence",
"args": {"text": "\u000c"},
"when": "terminalFocus"
}
If you're on a Mac, it's โŒ˜+k. :)
By default there is NO keybinding associated to clearing the terminal in VSCode. Therefore, one must add a NEW Keybinding by following the below steps:
Navigate: File --> Preferences --> Keyboard Shortcuts. (Or Ctrl + K and Ctrl + S together)
Type in the Search Bar on top: Terminal: Clear.
An entry with Command: Terminal:Clear will show up with the following VSCode command workbench.action.terminal.clear.
Right Click on it and press Change Keybinding. Then press Ctrl + K together and then Enter. It will be saved.
Right Click again and press Change When Expression. Just enter: terminalFocus. It will be saved.
Finally, open your integrated terminal and with focus inside the terminal, press Ctrl + K.
Navigate in VS code: File > Preferences > Keyboard Shortcuts
search for workbench.action.terminal.clear
Double click on this entry & you'll be prompted for key binding. Hold CTRL and tap L. Ctrl + L should now be listed. Press enter to save this mapping
That's it.
The accepted answer should be the following which was unmultimedio's comment to one of the answers above:
Cmd+K will work, you just need to set again in the Keyboard Shortcuts
the workbench.action.terminal.clear to Cmd+K, so it shows as Source:
User instead of Source: Default โ€“ unmultimedio Mar 12 '19 at 1:13
Just click the gear button on the left-bottom side on the VS code screen
then Search for "Terminal: clear"
By default no keyboard shortcut is assigned.
Just double click the Terminal: Clear
and give the preferred shortcut of your choice to clear the terminal.
Usually ctrl+k is used as that shortcut is not assigned with any command.
FYI: This method is the same as #SuRa but is a little simpler.
Btw: I use VS Code version 1.43.0
I am using Visual Studio Code 1.52.1 on windows 10 machine.'cls' or 'Clear' doesn't clear the terminal.
just write
exit
It will close the terminal and press
ctrl+shift+`
to open new terminal.
You can change from settings menu (at least from version 1.30.2 and above)...
On Mac, just hit Code > Preferences > Settings.
Then just search for "clear" and check Clear Previous Output.
The Code Runner extension has a setting "Clear previous output", which is what I need 95% of the time.
File > Preferences > Settings > (search for "output") > Code-runner: Clear previous output
The remaining few times I will disable the setting and use the "Clear output" button (top right of the output pane) to selectively clear accumulated output.
This is in Visual Studio Code 1.33.1 with Code Runner 0.9.8.
(Setting the keybinding for Ctrl+k did not work for me, presumably because some extension has defined "chords" beginning with Ctrl-k. But "Clear previous output" was actually a better option for me.)
Select Open Keyboard Shortcuts from command palette and put following to keyboard shortcuts file:
{
"key": "cmd+k",
"command": "workbench.action.terminal.clear",
"when": "terminalFocus"
}
F1 key opens the shortcuts for me using windows 10. Then type Terminal and you see the clear option.
In kde's konsole there is an action called "clear scrollback". It not only clears the terminal as usual, but also deletes the previous lines, so that you cannot scroll back and be confused.
I found in vs codium you can open Settings, search for terminal. Then go to Debugging, Debug - Terminal - Clear Before Reusing.
Set checkbox there, and every time you start a new debugging, the terminal scrollback history will not bother you.
To permanently delete the previous commands, use this
Set-PSReadlineOption -HistoryNoDuplicates
Remove-Item (Get-PSReadlineOption).HistorySavePath
Alt-f7
paste this command -
Remove-Item (Get-PSReadlineOption).HistorySavePath
in your powershell and start new powershell and its found cleared
for further details check this link # https://www.shellhacks.com/clear-history-powershell/
I'm running the June 2020 update of Visual Studio Code. I was looking for a simple way to clear the history of Terminal output from a Python script. Killing the Terminal via clicking on the trash can icon on the upper right did what I needed, and my Conda environment automatically reactivated.
Try typing in 'cls', if that doesn't work, type 'Clear' capital C. No quotes for any. Hope this helps.
I am using Visual Studio Code 1.38.1 on windows 10 machine.
Tried the below steps:
exit()
PS C:\Users\username> Cls
PS C:\Users\username>python
just type 'clear' in the terminal (windows)
or ctrl+shift+p and
on mac - right click

Visual Studio Code: Unable to open 'MyFile.h': File not found

I got this kind of errors when attempting to go to the declaration of some attributes/methods (using ctrl/cmd + left click):
Unable to open 'MyFile.h': File not found
probably this happens because the file MyFile.h has been moved recently.
I solved this problem by forcing VSCode to re-scan the project structure.
In order to do that, I closed VSCode, deleted the .vscode hidden folder of my project, and opened it again.
I had the same issue and solved it by reloading my VS code window.
Ctrl + Shift + P on Windows
Command + Shift + P on Mac
Type:
Reload Window
Then select Developer: Reload Window

How to open a shell command prompt inside Visual Studio Code?

When using Visual Studio Code, how do I run command-line programs, such as a choco (Chocolatey) command? Do I need to have a separate Command Line (CMD.exe) running outside VS Code, or is there a hotkey/window within Code where I can run those commands?
I see the "Command Palette", but it is not entirely clear what command engines run in that palette.
For integrated terminal use Ctrl+`
From the release notes:
With the May release, we are rolling out the initial version of an integrated terminal. You can open the terminal using Ctrl+`, from the View | Toggle Integrated Terminal menu, or from the View > Toggle Integrated Terminal command in the Command Palette.
https://web.archive.org/web/20160616204248/http://code.visualstudio.com/updates/#_workbench (the 1.2.0 May release in 2016)
Use CMD+Shift+C or CTRL+Shift+C but it will only open a new outside editor standard bash console.
I hope they will implement an integrated console.
Can open it with this menu options: View > Integrated Terminal
Default keyboard shortcut for integrated terminal is Ctrl+`
In vscode you can use multiple integrated terminals.
If you want open another one use Ctrl+Shift+`
vscode keys shortcuts are rendered assuming a standard US keyboard layout. If you use a different keyboard layout, please read how can see the representation in your current keyboard.
It's easy, open this menu options: File > Preferences > Keyboard Shortcuts
and on the Default Keyboard Shortcut search the command workbench.action.terminal.toggleTerminal then point you mouse to info icon and can see the combination. For me is Ctrl+รฑ because I'm using Spanish keyboard layout.
Also it's cool create an personal shortcuts to toggle into terminals. Open this menu options: File > Preferences > Keyboard Shortcuts and on the keybinding.json tab put this:
[
{
"key": "ctrl+pageup",
"command": "workbench.action.terminal.focusNext",
"when": "terminalFocus"
},{
"key": "ctrl+pagedown",
"command": "workbench.action.terminal.focusPrevious",
"when": "terminalFocus"
}
]
Now when the cursor are focus on terminal, and have more than one terminal, you can navigate through every one with the combinations Ctrl+Page Down for previous terminal and Ctrl+Page Up for next terminal.
Tip: If you are focus on the editor, the same keyboard shortcuts can be used to navigate through tabs.
For mac Cmd + j
For win Ctrl + j
#brady321's answer is only for US keyboards:
Note: The following keys are rendered assuming a standard US keyboard layout.(https://code.visualstudio.com/Docs/customization/keybindings)
For instance, UK keyboards use Ctrl+':
You can find your shortcut in File > Preferences > Keyboard Shortcuts searching for workbench.action.terminal.toggleTerminal. If you're not using a US keyboard, it will show you the equivalent shortcut using your keyboard layout:
To check what the shortcut to open a native console looks like, try to find workbench.action.terminal.openNativeConsole in the shortcuts file.
More information about integrated terminal at: https://code.visualstudio.com/docs/editor/integrated-terminal
test with the Ctrl + J keys in ubuntu
As MCBL wrote, there is no integrated console. You can vote for this feature here: UserVoice - Integrated terminal <-- dead link.
3rd party Edit
Uservoice is no longer used and the link above is dead. The feature request for an integrated terminal might be this one.
In the contrary you may also run a terminal inside your visual studio code tool by simply doing the following:
Go to " View > Integrated Terminal " or use the shortcut key " Ctrl + ' "
I believe this is available on later versions of visual studio code. I could do this on version 1.7.0-insider.
Ctrl+ `
Integrated Terminal In Visual Studio Code, you can open an integrated
terminal, initially starting at the root of your workspace. This can
be very convenient as you don't have to switch windows or alter the
state of an existing terminal to perform a quick command line task.
To open the terminal:
Use the Ctrl+`keyboard shortcut with the backtick character.
Use the View | Toggle Integrated Terminal menu command. From the
Command
Palette (Ctrl+Shift+P), use the View:Toggle Integrated Terminal
command.
https://code.visualstudio.com/docs/editor/integrated-terminal
I am using vsCode 1.9.1. there are 2 ways as I know
You can easily open it by hitting Ctrl + ` key.
Go to View->Integrated Terminal like below image
Test this, This works for me
Ctrl + รฑ
Ctrl + `
ctrl + j
On my UK MacBook, when I look in my keyboard shortcuts for VS Code (Code > Preferences > Keyboard Shortcuts), Toggle Integrated Terminal has the keybinding Crtl+`.
However, the shortcut works on Ctrl+ยง, which is the key on my MacBook that is the same place as the ` on a UK Windows keyboard.
You can take the text editor of the Microsoft, but you can't take the etc, etc.
Go to File > Preferences > Keyboard Shortcuts or use shortcut Ctrl+K Ctrl+S.
Type to search in keybindings : workbench.action.terminal.new.
Double click on Keybinding and add the shortcut you want (Super+T is unused in default config).
Since the Debug Console does not support programs that need to read input from the console, you can enable an external, native console by setting the attribute externalConsole to true in your launch configuration.
lauch.json just write: "externalConsole" : true
I used custom shortcut. Add below keybind to the keybinds.json:
[
{
"key": "ctrl+,",
"command": "workbench.action.terminal.toggleTerminal"
}
]
To open keybinds.json
CTRL + SHIFT + P then type Keyboard and click to Open Keyboard Shortcuts
The best way to run command line programs is to use the terminal window provided inside VS Code. This way tou will not switch any apps. But to make switching between terminal and other windows I recommend the following :
To open up a terminal - Ctrl + `
To open up second terminal - when you are running a node script in the first terminal and it is blocked and you need to run second script at the same time - Ctrl + Shift + `
To focus/switch back on terminal without reopening :
Press F1 and then type keyboard shortcuts
Find workbench.action.terminal.focus and set it to Ctrl + \ - this slash is usually located right next to your right Ctrl key. This makes switching between code and terminal very easy because Ctrl + ` and Ctrl + \ are invoked with your right hand and index finger.
Switch the Integrated Terminal to CMD
Open the Integrated Terminal: Ctrl + `
If a Bash terminal is opened while you want a Command Prompt (cmd), simply run the command: cmd, in the terminal to switch it to Command Prompt.
Also for MAC its Ctrl+Shift+.
I prefer you to change to a custom one.
Open up Command Palette by Command+Shift+P.
Type 'Keyboard Shortcuts...' - Select Preferences: Open Keyboard Shortcuts
.
See Terminal: Create New Integrated Terminal option there. Double-tap it to change it to a custom one.
.
For me:
ctrl + shift + `
Seems to have done the trick with the default VSCode settings.
If you hover your cursor over the +-button to add a new terminal, you can actually see what you need to press for the shortcut.