/omnisharp-vscode

Fork of C# support for Visual Studio Code (powered by OmniSharp) - https://github.com/OmniSharp/omnisharp-vscode

Primary LanguageTypeScriptOtherNOASSERTION

debugging .VSIX

npm run package
"package": "vsce package --baseContentUrl"

C# for Visual Studio Code (powered by OmniSharp)

Master Dev
Master Build Status Dev Build Status

Welcome to the C# extension for Visual Studio Code! This preview provides the following features inside VS Code:

  • Lightweight development tools for .NET Core.
  • Great C# editing support, including Syntax Highlighting, IntelliSense, Go to Definition, Find All References, etc.
  • Debugging support for .NET Core (CoreCLR). NOTE: Mono and Desktop CLR debugging is not supported.
  • Support for project.json projects on Windows, macOS and Linux, and csproj projects on Windows.

The C# extension is powered by OmniSharp.

What's New in 1.3

  • Support for Unity and Mono development on macOS and Linux has been restored! This release brings back support for the Mono version of OmniSharp, which is used to provide much better support for .csproj/.sln projects. Please note that Mono version 4.0.1 or newer is required.
  • Generation of tasks.json and launch.json files can now properly handle nested projects. #170
  • New UI that makes it easy to select a process ID when attaching the debugger to another process. Note: If you have an existing launch.json file, you can re-generate it by deleting the file, closing your workspace in Visual Studio Code and opening it again. Or, you can open the launch.json file and change the processId value to "${command.pickProcess}".
  • Support for debugging in .cshtml files. To enable this, add a sourceFileMap entry to your launch.json with the following content: "sourceFileMap": { "/Views": "${workspaceRoot}/Views" }
  • Support for conditional breakpoints
  • New support for changing variable values in the debugger! To try this, just right-click on the variable name and select 'Set Value'. Note: To properly support this feature, we've changed the display of variable type names in the debugger to a shortened form. The full type name can be viewed by hovering over the name with the mouse.
  • New configuration option to enable stepping into properties and operators.
  • Duplicate warnings and errors should no longer accumulate in Unity projects #447

Supported Operating Systems

  • Currently, the C# extension supports the following operatings systems:
    • Windows (64-bit only)
    • macOS
    • Ubuntu 14.04 / Linux Mint 17
    • Ubuntu 16.04
    • Debian 8.2
    • CentOS 7.1 / Oracle Linux 7
    • Red Hat Enterprise Linux (RHEL)
    • Fedora 23
    • OpenSUSE 13.2

Found a Bug?

Please file any issues at https://github.com/OmniSharp/omnisharp-vscode/issues.

Debugging

The C# extension now supports basic debugging capabilities! See http://aka.ms/vscclrdebugger for details.

Development

First install:

  • Node.js (newer than 4.3.1)
  • Npm (newer 2.14.12)

To run and develop do the following:

  • Run npm i
  • Open in Visual Studio Code (code .)
  • Optional: run tsc -w, make code changes (on Windows, try start node ".\node_modules\typescript\bin\tsc -w")
  • Press F5 to debug

License

The Microsoft C# extension is subject to these license terms.
The source code to this extension is available on https://github.com/OmniSharp/omnisharp-vscode and licensed under the MIT license.