Visual Studio Code

From Hidden Wiki
(Redirected from VS Code)
Jump to navigation Jump to search

Template:Short description Template:For {{#invoke:Infobox|infobox}}

Visual Studio Code is a source-code editor developed by Microsoft for Windows, Linux and macOS.[1] It includes support for debugging, embedded Git control and GitHub, syntax highlighting, intelligent code completion, snippets, and code refactoring. It is highly customizable, allowing users to change the theme, keyboard shortcuts, preferences, and install extensions that add additional functionality. The source code is free and open source and released under the permissive MIT License.[2] The compiled binaries are freeware and free for private or commercial use.[3]

Visual Studio Code is based on Electron, a framework which is used to deploy Node.js applications for the desktop running on the Blink layout engine. Although it uses the Electron framework,[4] the software does not use Atom and instead employs the same editor component (codenamed "Monaco") used in Azure DevOps (formerly called Visual Studio Online and Visual Studio Team Services).[5]

In the Stack Overflow 2019 Developer Survey, Visual Studio Code was ranked the most popular developer environment tool, with 50.7% of 87,317 respondents claiming to use it.[6]

History

Visual Studio Code was announced on April 29, 2015, by Microsoft at the 2015 Build conference. A Preview build was released shortly thereafter.[7]

On November 18, 2015, Visual Studio Code was released under the MIT License and its source code posted to GitHub. Extension support was also announced.[8]

On April 14, 2016, Visual Studio Code graduated the public preview stage and was released to web.[9]

Features

File:Visual Studio Code 1.17 icon.svg
Visual Studio Code Insiders logo

Visual Studio Code is a source code editor that can be used with a variety of programming languages. Instead of a project system it allows users to open one or more directories, which can then be saved in workspaces for future reuse. This allows it to operate as a language-agnostic code editor for any language, contrary to Microsoft Visual Studio which uses the proprietary .sln solution file and project-specific project files. It supports a number of programming languages and a set of features that differs per language. Unwanted files and folders can be excluded from the project tree via the settings. Many of Visual Studio Code features are not exposed through menus or the user interface, but can be accessed via the command palette.[10]

Visual Studio Code can be extended via plug-ins,[11] available through a central repository. This includes additions to the editor[12] and language support.[10] A notable feature is the ability to create extensions that add support for new languages, themes, debuggers, perform static code analysis, add code linters, using the Language Server Protocol[13] and connect to additional services.

Visual Studio Code includes multiple extensions for FTP, allowing the software to be used as a free alternative for web development. Code can be synced between the editor and the server, without downloading any extra software.

Visual Studio Code allows users to set the code page in which the active document is saved, the newline character for Windows/Linux, and the programming language of the active document. This allows it to be used on any platform, in any locale, and for any given programming language.

Language support

Visual Studio Code has out-of-the-box support for almost every major programming language. Several are included by default, for example, JavaScript, TypeScript, CSS, and HTML but other language extensions can be found and downloaded for free from the VS Code Marketplace.[14]

Language Snippets Syntax highlighting Brace matching Code folding
ActionScript [15] [16] Template:No Template:Yes Template:Yes Template:Yes
C and C++ [17] Template:Yes Template:Partial Template:Yes Template:Yes
C# [18] Template:Yes Template:Yes Template:Yes Template:Yes
Clojure [19] [20] Template:No Template:Yes Template:Yes Template:No
CoffeeScript [21] Template:Yes Template:Yes Template:Yes Template:Yes
CSS [22] [23] Template:No Template:Yes Template:Yes Template:No
D (Dlang) [24] Template:No Template:Yes Template:Yes Template:Yes
Dockerfile [25] Template:No Template:Yes Template:Yes Template:No
Erlang [26] Template:No Template:Yes Template:Yes Template:Yes
F# [27] Template:Yes Template:Yes Template:Yes Template:Yes
Go [28] [29] Template:No Template:Yes Template:Yes Template:Yes
Groovy [30] Template:Yes Template:Yes Template:Yes Template:No
Handlebars [31] Template:No Template:Yes Template:Yes Template:No
Haxe [32] Template:No Template:Yes Template:Yes Template:Yes
HLSL [33] [34] Template:No Template:Yes Template:Yes Template:No
HTML [35] Template:Yes Template:Yes Template:Yes Template:Yes
INI file [36] Template:No Template:Yes Template:Yes Template:No
Java [37] Template:Yes Template:Yes Template:Yes Template:Yes
JavaScript [38] Template:Yes Template:Yes Template:Yes Template:Yes
JSON [39] Template:No Template:Yes Template:Yes Template:Yes
LESS [22] [40] Template:No Template:Yes Template:Yes Template:Yes
Log file [41] Template:No Template:Yes Template:No Template:No
Lua [42] Template:No Template:Yes Template:Yes Template:No
Makefile [43] Template:No Template:Yes Template:Yes Template:No
Markdown [44] Template:Yes Template:Yes Template:No Template:No
Nim [45] Template:No Template:Yes Template:Yes Template:Yes
Perl [46] Template:No Template:Yes Template:Yes Template:No
PHP [47] [48] Template:No Template:Yes Template:Yes Template:No
PowerShell [49] Template:Yes Template:Yes Template:Yes Template:Yes
Python [50] Template:Yes Template:Yes Template:Yes Template:Yes
R [51] Template:No Template:Yes Template:Yes Template:No
Razor [52] Template:No Template:Yes Template:Yes Template:Yes
Ruby [53] [54] Template:No Template:Yes Template:Yes Template:Yes
Rust [55] Template:No Template:Yes Template:Yes Template:No
SCSS [22] [56] Template:No Template:Yes Template:Yes Template:Yes
Shaderlab [33] [57] Template:No Template:Yes Template:Yes Template:No
SQL [58] [59] [60] Template:No Template:Yes Template:Yes Template:No
Swift [61] [62] Template:Yes Template:Yes Template:Yes Template:No
TypeScript [63] [64] Template:Yes Template:Yes Template:Yes Template:Yes
Visual Basic [65] Template:Yes Template:Yes Template:Yes Template:Yes
XML [66] Template:No Template:Yes Template:Yes Template:Yes
YAML [67] Template:No Template:Yes Template:Yes Template:Yes

Reception

In the 2016 Developers Survey of Stack Overflow, Visual Studio Code ranked #13 among the top popular development tools, with only 7.2% of the 46,613 respondents using it.[68] However, in the 2019 Developers Survey, Visual Studio Code was ranked #1, with 50.7% of the 87,317 respondents using it.[6]

Visual Studio Code is widely reviewed to be fast and lightweight, and is considered to be flexible across various domains such as Java, JavaScript, Go, Node.js and even C++.[69][70][71][72]

Data collection

Visual Studio Code collects usage data and sends it to Microsoft, although this telemetry reporting can be disabled.[73] The data is shared among Microsoft-controlled affiliates and subsidiaries and with law enforcement, per the privacy statement.[74] Because of the open-source nature of the app, it is known exactly what is collected. Upstream's binary is shipped under a proprietary licence.[75]

VSCodium is an alternative binary distribution of the software which uses only the open-source parts and omits Microsoft’s trademarks and the telemetry component, while remaining fully functional and compatible in all other regards.[76]

See also

Template:Portal

References

  1. Template:Cite news
  2. Comment on Menu license links to non Open Source license, VS Code Repository on Github
  3. VS Code FAQ, VS Code, "VS Code is free for private or commercial use."
  4. Template:Cite web
  5. Template:Cite web
  6. 6.0 6.1 Template:Cite web
  7. Template:Cite web
  8. Template:Cite news
  9. Template:Cite web
  10. 10.0 10.1 Template:Cite web
  11. Template:Cite web
  12. Template:Cite web
  13. Template:Cite news
  14. Template:Cite web
  15. Template:Cite web
  16. Template:Cite web
  17. Template:Cite web
  18. Template:Cite web
  19. Template:Cite web
  20. Template:Cite web
  21. Template:Cite web
  22. 22.0 22.1 22.2 Template:Cite web
  23. Template:Cite web
  24. Template:Cite web
  25. Template:Cite web
  26. Template:Cite web
  27. Template:Cite web
  28. Template:Cite web
  29. Template:Cite web
  30. Template:Cite web
  31. Template:Cite web
  32. Template:Cite web
  33. 33.0 33.1 Template:Cite web
  34. Template:Cite web
  35. Template:Cite web
  36. Template:Cite web
  37. Template:Cite web
  38. Template:Cite web
  39. Template:Cite web
  40. Template:Cite web
  41. Template:Cite web
  42. Template:Cite web
  43. Template:Cite web
  44. Template:Cite web
  45. Template:Cite web
  46. Template:Cite web
  47. Template:Cite web
  48. Template:Cite web
  49. Template:Cite web
  50. Template:Cite web
  51. Template:Cite web
  52. Template:Cite web
  53. Template:Cite web
  54. Template:Cite web
  55. Template:Cite web
  56. Template:Cite web
  57. Template:Cite web
  58. Template:Cite web
  59. Template:Cite web
  60. Template:Cite web
  61. Template:Cite web
  62. Template:Cite web
  63. Template:Cite web
  64. Template:Cite web
  65. Template:Cite web
  66. Template:Cite web
  67. Template:Cite web
  68. Template:Cite web
  69. Template:Cite web
  70. Template:Cite web
  71. Template:Cite web
  72. Template:Cite web
  73. cite web |url=https://code.visualstudio.com/docs/supporting/faq#_how-to-disable-telemetry-reporting |title=Visual Studio Code FAQ |website=code.visualstudio.com |publisher=Microsoft |access-date=4 November 2016 |archive-url=https://web.archive.org/web/20160828111301/https://code.visualstudio.com/docs/supporting/faq |archive-date=28 August 2016 |dead-url=no |quote=VS Code collects usage data and sends it to Microsoft to help improve our products and services. Read our privacy statement to learn more. If you don’t wish to send usage data to Microsoft, you can set the telemetry.enableTelemetry setting to false.
  74. cite web |url=https://privacy.microsoft.com/en-us/privacystatement |title=Microsoft Enterprise and Developer Privacy Statement |website=privacy.microsoft.com |publisher=Microsoft |access-date=4 November 2016 |archive-url=https://web.archive.org/web/20161105141442/https://www.microsoft.com/en-us/privacystatement/EnterpriseDev/default.aspx |archive-date=4 November 2016 |dead-url=no
  75. https://github.com/Microsoft/vscode/tree/master/src/vs/platform/telemetry
  76. Citation|title=binary releases of VS Code without MS branding/telemetry/licensing: VSCodium/vscodium|date=2019-03-17|url=https://github.com/VSCodium/vscodium%7Cpublisher=VSCodium%7Caccess-date=2019-03-18

External links

Template:Microsoft development tools Template:HTML editors Template:JavaScript