Visual Studio Code

Overview

Visual Studio Code - Open Source ("Code - OSS")

Feature Requests Bugs Gitter

The Repository

This repository ("Code - OSS") is where we (Microsoft) develop the Visual Studio Code product together with the community. Not only do we work on code and issues here, we also publish our roadmap, monthly iteration plans, and our endgame plans. This source code is available to everyone under the standard MIT license.

Visual Studio Code

VS Code in action

Visual Studio Code is a distribution of the Code - OSS repository with Microsoft specific customizations released under a traditional Microsoft product license.

Visual Studio Code combines the simplicity of a code editor with what developers need for their core edit-build-debug cycle. It provides comprehensive code editing, navigation, and understanding support along with lightweight debugging, a rich extensibility model, and lightweight integration with existing tools.

Visual Studio Code is updated monthly with new features and bug fixes. You can download it for Windows, macOS, and Linux on Visual Studio Code's website. To get the latest releases every day, install the Insiders build.

Contributing

There are many ways in which you can participate in the project, for example:

If you are interested in fixing issues and contributing directly to the code base, please see the document How to Contribute, which covers the following:

Feedback

See our wiki for a description of each of these channels and information on some other available community-driven channels.

Related Projects

Many of the core components and extensions to VS Code live in their own repositories on GitHub. For example, the node debug adapter and the mono debug adapter have their own repositories. For a complete list, please visit the Related Projects page on our wiki.

Bundled Extensions

VS Code includes a set of built-in extensions located in the extensions folder, including grammars and snippets for many languages. Extensions that provide rich language support (code completion, Go to Definition) for a language have the suffix language-features. For example, the json extension provides coloring for JSON and the json-language-features provides rich language support for JSON.

Development Container

This repository includes a Visual Studio Code Remote - Containers / Codespaces development container.

  • For Remote - Containers, use the Remote-Containers: Open Repository in Container... command which creates a Docker volume for better disk I/O on macOS and Windows.
  • For Codespaces, install the Visual Studio Codespaces extension in VS Code, and use the Codespaces: Create New Codespace command.

Docker / the Codespace should have at least 4 Cores and 6 GB of RAM (8 GB recommended) to run full build. See the development container README for more information.

Code of Conduct

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

License

Copyright (c) Microsoft Corporation. All rights reserved.

Licensed under the MIT license.

Issues
  • Python path in debug configuration is invalid

    Python path in debug configuration is invalid

    ` Issue Type: Bug

    Whenever I click "Run and Debug" it asks for the debug configuration then says "The python path in your debug configuration is invalid." Even when I run it without debugging it does not run and an error message pops up saying "The python path in your debug configuration is invalid."

    VS Code version: Code 1.56.2 (054a9295330880ed74ceaedda236253b4f39a335, 2021-05-12T17:13:13.157Z) OS version: Windows_NT x64 10.0.18363

    System Info

    |Item|Value| |---|---| |CPUs|Intel(R) Core(TM) i5-4210U CPU @ 1.70GHz (4 x 2394)| |GPU Status|2d_canvas: enabled
    gpu_compositing: enabled
    multiple_raster_threads: enabled_on
    oop_rasterization: enabled
    opengl: enabled_on
    rasterization: enabled
    skia_renderer: enabled_on
    video_decode: enabled
    vulkan: disabled_off
    webgl: enabled
    webgl2: enabled| |Load (avg)|undefined| |Memory (System)|7.93GB (3.07GB free)| |Process Argv|--crash-reporter-id 9b600c10-a5de-4ffe-8307-5b6eb7eb9e5b| |Screen Reader|no| |VM|0%|

    Extensions (4)

    Extension|Author (truncated)|Version ---|---|--- python|ms-|2021.5.842923320 vscode-pylance|ms-|2021.6.0 jupyter|ms-|2021.6.832593372 pygame-snippets|tus|0.0.1

    A/B Experiments
    vsliv368:30146709
    vsreu685:30147344
    python383:30185418
    pythonvspyt700cf:30270857
    pythonvspyt602:30300191
    vspor879:30202332
    vspor708:30202333
    vspor363:30204092
    vswsl492:30256859
    pythonvspyt639:30300192
    pythontb:30283811
    pythonvspyt551:30311712
    vspre833:30267464
    pythonptprofiler:30281270
    vsdfh931cf:30280410
    vshan820:30294714
    vscoreces:30290705
    pythondataviewer:30285071
    vscus158cf:30286554
    vscgsv2:30307504
    vscorehov:30309549
    vscod805cf:30301675
    binariesv517cf:30312826
    
    

    https://user-images.githubusercontent.com/85450055/120931205-388c5300-c6b6-11eb-94cf-838c4eff3997.mp4

    `
    opened by TheCodingKerbal 1
  • Diff decorators not showing modified lines

    Diff decorators not showing modified lines

    I don't know the cause but I no longer see the git changes (diff decorators) in the file I'm working on. But I can see them well in Source Control. The problem is that it only happens to me for one file, for other files, I have no problem with diff decorators. In the SCM config, everything is enabled for diff decorators. For this problematic file, Vscode changes the color of the file name with the small letter M which means "modified" but not showing modified lines.

    Any explication for that ?

    Does this issue occur when all extensions are disabled?: Yes

    • VS Code Version: Version: 1.56.2
    • OS Version: Darwin x64 18.7.0
    opened by alicanyuksel 1
  • TypeScript: autoimporting imports from .js files

    TypeScript: autoimporting imports from .js files

    Issue Type: Bug

    When writing the name of a function or parameter that was exported in a different file, VSCode asks you if you want to automatically import said function or parameter. If you choose to do this on typescript, the import statement will include ".js" at the end of the file, when there should be no extension at all due to the nature of typescript.

    VS Code version: Code 1.56.2 (054a9295330880ed74ceaedda236253b4f39a335, 2021-05-12T17:13:13.157Z) OS version: Windows_NT x64 10.0.19043

    System Info

    |Item|Value| |---|---| |CPUs|Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz (12 x 3192)| |GPU Status|2d_canvas: enabled
    gpu_compositing: enabled
    multiple_raster_threads: enabled_on
    oop_rasterization: enabled
    opengl: enabled_on
    rasterization: enabled
    skia_renderer: enabled_on
    video_decode: enabled
    vulkan: disabled_off
    webgl: enabled
    webgl2: enabled| |Load (avg)|undefined| |Memory (System)|19.89GB (8.21GB free)| |Process Argv|D:\Users\rodri\Documents\GitHub\hypixel-translators-bot --crash-reporter-id 1aa51578-c79e-468f-b062-c24334e21918| |Screen Reader|no| |VM|0%|

    Extensions (10)

    Extension|Author (truncated)|Version ---|---|--- gitlens|eam|11.4.1 EditorConfig|Edi|0.16.4 prettier-vscode|esb|6.4.0 vscode-graphql|Gra|0.3.16 vscode-env|Iro|0.1.0 python|ms-|2021.5.842923320 vsliveshare|ms-|1.0.4360 vetur|oct|0.34.1 vscodeintellicode|Vis|1.2.14 minecraft-lang-colorizer|zz5|1.0.0

    A/B Experiments
    vsliv368cf:30146710
    vsreu685:30147344
    python383cf:30185419
    vspyt653:30270858
    pythonvspyt602:30300191
    vspor879:30202332
    vspor708:30202333
    vspor363:30204092
    pythonvspyt639:30300192
    pythontb:30283811
    vspre833cf:30267465
    pythonptprofiler:30281270
    vshan820:30294714
    pythondataviewer:30285071
    vscus158cf:30286554
    vscgsv2:30307504
    vscorehov:30309549
    vscod805cf:30301675
    binariesv517:30312825
    
    
    opened by ImRodry 0
  • Rust grammar: Doc comments in Rust are actually not comments, therefore shouldn't be marked as such

    Rust grammar: Doc comments in Rust are actually not comments, therefore shouldn't be marked as such

    Comments are pieces of code that is usually ignored and can be placed anywhere. Doc comments in most languages are usually ignored by the compiler/interpreter. But Rust's so-called "doc comments" are different from normal comments:

    • Under every outer doc (/// ..., /** ... */, or #[doc = "..."]) must be a language item. Otherwise, it is a syntax error.
    • Every inner doc (//! ..., /*! ... */, or #![doc = "..."]) must be placed within a language item. Otherwise, it is a syntax error.
    • Doc comment is just syntactic sugar for the #[doc] attribute.

    Suggestion

    Doc comment in Rust is a flavor of Markdown, therefore it should be highlighted as a Markdown code snippet.

    opened by KSXGitHub 0
  • Make suggest widget inherit editor.letterSpacing

    Make suggest widget inherit editor.letterSpacing

    I set my editor.letterSpacing on negative to make the font more condensed, but the suggest widget doesn't inherit the value and the text looks wider than the editor text, which depending on the font also makes it look uglier. I would like to be able to make the font look the same in both.

    opened by alexdreptu 0
  • Visual Studio Code is not autosaving the files also when autosave is enabled.

    Visual Studio Code is not autosaving the files also when autosave is enabled.

    Issue Type: Bug

    Visual Studio Code is not autosaving the files also when autosave is enabled.

    System Info
    Item Value
    CPUs Intel(R) Core(TM) i3-3220 CPU @ 3.30GHz (4 x 3293)
    GPU Status 2d_canvas: enabled
    flash_3d: enabled
    flash_stage3d: enabled
    flash_stage3d_baseline: enabled
    gpu_compositing: enabled
    multiple_raster_threads: enabled_on
    oop_rasterization: disabled_off
    opengl: enabled_on
    protected_video_decode: unavailable_off
    rasterization: enabled
    skia_renderer: disabled_off_ok
    video_decode: enabled
    vulkan: disabled_off
    webgl: enabled
    webgl2: enabled
    Load (avg) undefined
    Memory (System) 3.71GB (0.60GB free)
    Process Argv --crash-reporter-id cd1381bf-8877-4925-8f7f-f9777e24beda
    Screen Reader yes
    VM 0%
    Extensions (28)
    Extension Author (truncated) Version
    code-gnu-global aus 0.2.2
    bracket-pair-colorizer-2 Coe 0.2.0
    vscode-eslint dba 2.1.13
    vscode-html-css ecm 1.1.2
    vscode-great-icons emm 2.1.62
    vsc-material-theme Equ 33.0.0
    vsc-material-theme-icons equ 1.2.0
    prettier-vscode esb 5.8.0
    file-icons fil 1.0.28
    code-runner for 0.11.1
    rest-client hum 0.24.4
    r Iku 1.6.2
    csharp ms- 1.23.7
    python ms- 2020.11.371526539
    jupyter ms- 2020.12.414227025
    cpptools ms- 1.1.3
    typescript-javascript-grammar ms- 0.0.55
    debugger-for-chrome msj 4.12.11
    indent-rainbow ode 7.4.0
    material-icon-theme PKi 4.4.0
    vscode-css-peek pra 4.0.2
    ruby reb 0.27.0
    live-sass rit 3.0.0
    LiveServer rit 5.6.1
    vscode-zipexplorer sle 0.3.1
    vscode-icons vsc 11.0.0
    vscode-ruby win 0.27.0
    commandlist yam 1.0.3

    (1 theme extensions excluded)

    opened by Swastik-WhitehatJR 0
  • Link to Learn More of virtual workspace leads to Bing website

    Link to Learn More of virtual workspace leads to Bing website

    Issue Type: Bug

    1. Open Code-Insiders
    2. A notification will appear on the screen with "Manage Trust" and "Learn More" links. [Notification Message] Some features are not available because the current folder is backed by virtual file system and is note trusted. You can trust this folder to enable some of there features."
    3. Click "Learn More" link.
    4. The browser automatically launched and displayed the Bing site (https://www.bing.com/?ref=aka&shorturl=vscode-virtual-workspaces)

    VS Code version: Code - Insiders 1.57.0-insider (fe1eafc80c07608de52a2f9c99fee103dea77f5e, 2021-06-04T12:19:25.391Z) OS version: Darwin x64 20.5.0

    System Info

    |Item|Value| |---|---| |CPUs|Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz (8 x 2700)| |GPU Status|2d_canvas: enabled
    gpu_compositing: enabled
    metal: disabled_off
    multiple_raster_threads: enabled_on
    oop_rasterization: enabled
    opengl: enabled_on
    rasterization: enabled
    skia_renderer: disabled_off_ok
    video_decode: enabled
    webgl: enabled
    webgl2: enabled| |Load (avg)|4, 3, 2| |Memory (System)|16.00GB (0.07GB free)| |Process Argv|--crash-reporter-id 24e3eab7-335d-452f-bf6a-00d061debdb0| |Screen Reader|no| |VM|0%|

    Extensions (9)

    Extension|Author (truncated)|Version ---|---|--- vscode-pull-request-github|Git|0.26.0 gc-excelviewer|Gra|3.0.42 vscode-language-pack-ja|MS-|1.57.0 remote-containers|ms-|0.182.0 remote-ssh|ms-|0.65.6 remote-ssh-edit|ms-|0.65.6 remote-wsl|ms-|0.56.4 vscode-remote-extensionpack|ms-|0.21.0 vsliveshare-pack|ms-|0.4.0

    (5 theme extensions excluded)

    A/B Experiments
    vsliv695:30137379
    vsins829:30139715
    vsliv368:30146709
    vsreu685:30147344
    python383:30185418
    pythonvspyt602:30291494
    vspor879:30202332
    vspor708:30202333
    vspor363:30204092
    pythonvspyt639:30291487
    pythontb:30258533
    vspre833:30267464
    pythonptprofiler:30281269
    vshan820:30294714
    pythondataviewer:30285072
    vscus158cf:30286554
    pythonvsuse255:30303025
    vscgsv2:30305091
    vscorehov:30301224
    vscod805:30301674
    vscextlang:30310088
    vsccppwt:30312692
    
    
    opened by ayatokura 1
  • Syntax highlighting is enabled for text outside curly braces when adding logpoints

    Syntax highlighting is enabled for text outside curly braces when adding logpoints

    Does this issue occur when all extensions are disabled?: Yes

    • VS Code Version: 1.56.2
    • OS Version: macOS Big Sur (11.2.3)

    Steps to Reproduce:

    1. Add a logpoint
    2. Write some text to log
    screenshot

    Shouldn't it only be enabled inside the curly braces as only expressions within them are interpolated?

    debug 
    opened by fredriklengstrand 2
  • Markdown MATLAB code region handle backslash as escape erronously

    Markdown MATLAB code region handle backslash as escape erronously

    We have written the needed data into your clipboard because it was too large to send. Please paste.

    Issue Type: Bug

    Create a markdown file and type MATLAB code region as:

    Oir2OmeTiff(OirPath="C:\Example.oir",OutputDirectory="D:\");
    

    Open markdown preview. You'll see "D:"); is colored as if it's a string as a whole, as if the backslash is an escaper that convert the following " to a string character instead of the mark of the end of the string. However, in MATLAB language backslash is NOT an escaper. So " should be treated as the end of the string.

    VS Code version: Code - Insiders 1.57.0-insider (a62df5d6c53e844bfdc50694f943c3f34b6ff50e, 2021-06-03T17:38:02.890Z) OS version: Windows_NT x64 10.0.21387

    System Info

    |Item|Value| |---|---| |CPUs|Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz (4 x 3192)| |GPU Status|2d_canvas: enabled
    gpu_compositing: enabled
    multiple_raster_threads: enabled_on
    oop_rasterization: enabled
    opengl: enabled_on
    rasterization: enabled
    skia_renderer: enabled_on
    video_decode: enabled
    vulkan: disabled_off
    webgl: enabled
    webgl2: enabled| |Load (avg)|undefined| |Memory (System)|39.93GB (29.75GB free)| |Process Argv|C:\Users\vhtmf\OneDrive - 翁悸会\MATLAB\钙处理工具包 --crash-reporter-id a0af30be-1f9b-41f5-aa60-5cfc3680301c| |Screen Reader|no| |VM|0%|

    Extensions (5)

    Extension|Author (truncated)|Version ---|---|--- xml|Dot|2.5.1 matlab|Gim|2.0.1 vscode-language-pack-zh-hans|MS-|1.57.0 cpptools|ms-|1.4.0 vscode-arduino|vsc|0.4.3

    A/B Experiments
    vsliv695:30137379
    vsins829:30139715
    vsliv368cf:30146710
    vsreu685:30147344
    python383cf:30185419
    pythonvspyt602:30291494
    vspor879:30202332
    vspor708:30202333
    vspor363:30204092
    vstes627cf:30244335
    pythonvspyt639:30291487
    pythontb:30258533
    vsc_aa:30263845
    vspre833cf:30267465
    pythonptprofiler:30281269
    vsdfh931:30280409
    vshan820:30294714
    pythondataviewer:30285072
    vscus158cf:30286554
    pythonvsuse255:30303025
    vscgsv2:30305091
    vscorehov:30301224
    vscod805cf:30301675
    vscextlangct:30310089
    
    
    opened by Silver-Fang 1
  • electron_node tsserver.js cpu usage over 100%

    electron_node tsserver.js cpu usage over 100%

    there is a problem with the react projects and vscode I work with. I've seen multiple similar issues across forums and here (including the one i posted before #98725) but none of them has a solid solution or at least explanation. the problem is electron_node tsserver.js cpu usage getting easily over 100% while editing a few component long project.

    • VS Code Version: 1.56.2
    • OS Version: 11.2.3

    Steps to Reproduce:

    1. after npx creat-react--app and creating a react app, add a few component to the project.
    2. try to edit one file. electron_node tsserver.js cpu usage easily gets over 100%.
    3. it happens with insider version, and also all extensions (except js/ts language features) disabled:

    vscode

    tsserver verbose logs: tsserver.log

    opened by humahn 0
Releases(1.56.2)
Owner
Microsoft
Open source projects and samples from Microsoft
Microsoft
Git Extensions is a standalone UI tool for managing git repositories. It also integrates with Windows Explorer and Microsoft Visual Studio (2015/2017/2019).

Git Extensions Git Extensions is a standalone UI tool for managing git repositories. It also integrates with Windows Explorer and Microsoft Visual Stu

Git Extensions 5.6k Jun 4, 2021
Sourcetrail - free and open-source interactive source explorer

Sourcetrail Sourcetrail is a free and open-source cross-platform source explorer that helps you get productive on unfamiliar source code. Windows: Lin

Coati Software 11.5k Jun 5, 2021
A cross-platform Qt IDE

Qt Creator Qt Creator is a cross-platform, integrated development environment (IDE) for application developers to create applications for multiple des

Qt Creator 1.5k Jun 4, 2021
Code beautifier

Uncrustify A source code beautifier for C, C++, C#, ObjectiveC, D, Java, Pawn and VALA Features Highly configurable - 742 configurable options as of v

null 2.3k May 31, 2021
Series of System Administration Tools

NSudo - System Administration Toolkit 简体中文 This is the source code repository of NSudo. If you wonder to visit the NSudo official website, download NS

M2-Team 994 Jun 6, 2021
A modern file tail utility based on Rx.Net which show cases reactive programming and Dynamic Data (see https://github.com/RolandPheasant/DynamicData)

Tail Blazer In my day to day professional life I am always tailing log files but have always been disappointed with the utilities on offer. The curren

Roland Pheasant 1.9k Jun 5, 2021
git-cola: The highly caffeinated Git GUI

git-cola: The highly caffeinated Git GUI git-cola is a powerful Git GUI with a slick and intuitive user interface. Copyright (C) 2007-2020, David Agu

git-cola 1.7k Jun 4, 2021
The Fish Shell Framework

The Fishshell Framework Oh My Fish provides core infrastructure to allow you to install packages which extend or modify the look of your shell. It's f

Oh My Fish! 7.4k Jun 4, 2021
A modern Docker LAMP stack and MEAN stack for local development

The Devilbox Usage | Architecture | Community | Features | Intranet | Screenshots | Contributing | Logos | License Support for valid https out of the

cytopia 3.4k Jun 6, 2021
ShellCheck, a static analysis tool for shell scripts

ShellCheck - A shell script static analysis tool ShellCheck is a GPLv3 tool that gives warnings and suggestions for bash/sh shell scripts: The goals o

Vidar Holen 25k Jun 4, 2021
The user-friendly command line shell.

fish - the friendly interactive shell fish is a smart and user-friendly command line shell for macOS, Linux, and the rest of the family. fish includes

The user-friendly shell 17k Jun 5, 2021
IntelliJ IDEA Community Edition & IntelliJ Platform

IntelliJ IDEA Community Edition These instructions will help you build IntelliJ IDEA Community Edition from source code, which is the basis for Intell

JetBrains 12.1k Jun 4, 2021
A plugin manager for Fish.

Fisher A plugin manager for Fish—the friendly interactive shell. Manage functions, completions, bindings, and snippets from the command line. Extend y

Jorge Bucaran 5k Jun 6, 2021