C# IDE Plugin for Sublime Text 3
Clone or download
Latest commit 17ce892 Sep 17, 2018
Permalink
Failed to load latest commit information.
commands Using quickpanel in swap server instead of popup Jan 22, 2016
docs Update index.md Jun 18, 2015
documents/ko + korean tutorial Sep 30, 2014
lib Fixed python script May 29, 2018
listeners Merge branch 'master' of https://github.com/OmniSharp/omnisharp-sublime Jan 30, 2016
messages Create 1.9.6 Jun 19, 2015
omnisharp-roslyn @ 51cf29c Prebuilt update (#243) Sep 11, 2018
prebuilt-omnisharp-roslyn Prebuilt update (#243) Sep 11, 2018
scripts Prebuilt update (#243) Sep 11, 2018
templates shortcuts added for new class Oct 23, 2014
.anaconda + async로 동작하는 자동완성 기능 추가 Mar 1, 2014
.gitignore .DS_Store added to gitignore and first crack at syntax and semantic e… Sep 13, 2014
.gitmodules Finished basic Roslyn + Legacy OmniSharpServer Jan 16, 2016
.no-sublime-package Update .no-sublime-package Oct 19, 2014
BuildConsole.hidden-tmLanguage Build: add highlighting for build output Apr 5, 2015
BuildConsole.hidden-tmTheme Build: add highlighting for build output Apr 5, 2015
BuildConsole.sublime-settings Build: fix file refering Apr 3, 2015
Context.sublime-menu Rename "Syntax Error" to "Code Issue" Apr 9, 2015
Default.sublime-commands Added in command to restart omnisharp. Jan 17, 2016
Default.sublime-keymap fix for new file key binding Apr 27, 2015
Main.sublime-menu pass config.json arg, show settings in menu, save config location on … Oct 31, 2014
OmniSharpSublime.py Finished basic Roslyn + Legacy OmniSharpServer Jan 16, 2016
OmniSharpSublime.sublime-project + async로 동작하는 자동완성 기능 추가 Mar 1, 2014
OmniSharpSublime.sublime-settings Default to prebuilt-roslyn Sep 17, 2018
OutputPanel.hidden-tmLanguage fix output panel color scheme by use buildin BuildConsole.hidden-tmTheme Jun 19, 2015
README.md Corrected requirements Sep 17, 2018
Side Bar.sublime-menu shortcuts added for new class Oct 23, 2014
appveyor.yml Adding in CI via Appveyor and Travis-CI Feb 5, 2016
build.cmd Prebuilt update (#243) Sep 11, 2018
build.sh Prebuilt update (#243) Sep 11, 2018
messages.json fix for new file key binding Apr 27, 2015
mkdocs.yml file templates Nov 4, 2014

README.md

OmniSharpSublime for ST3

OmnisharpSublime is a plugin for ST3 to provide a C# development environment. It communicates with omnisharp-roslyn by nosami for IDE functions.

It works on:

  1. Mac OSX
  2. Linux
  3. Windows

Features

  1. Auto OmniSharpServer running
  2. Asynchronous communication with OmniSharpServer (Never freeze!)
  3. Auto Completion
  4. Goto definition
  5. Rename
  6. Goto implementation
  7. Syntax/Semantic error highlighting
  8. Displays possible override methods
  9. Find Usages
  10. Format Document
  11. Displays code issues such as assigment is redundant
  12. Fix code issues - put cursor on highlighted issue and select Fix Code Issue
  13. Remove Unused, Add Missing and Sort Using Statements
  14. Code Actions eg. Convert LINQ query to Fluent Syntax
  15. Add File To Project
  16. Remove File from Project (via sidebar and context menu)
  17. Add New C# Class & Interface (via sidebar and context menu) via File Templates which also adds to csproj
  18. Type Lookup with Documentation
  19. Hide/Show Info Panel
  20. Run Unit Tests
  21. Build/ReBuild/Clean Solution
  22. Reload Solution

Requirements

  • mono
  • msbuild-stable

Build Requirements

  • dotnet core sdk

Installation

Building From Source

  1. Move to ST3 plugin directory in console.

     cd {path to ST3 plugin directory}/Packages
    
  2. Clone repository.

     git clone https://github.com/OmniSharp/omnisharp-sublime.git OmniSharp
    
  3. Move to plugin directory, update submodule and build.

    • Windows
    cd OmniSharp
    git submodule update --init --recursive
    build.cmd
    
    • Linux Or Mac OSX
    cd OmniSharp
    git submodule update --init --recursive
    ./build.sh
    

Project Setting

The server will automatically find the the solution file from the folder you have opened in Sublime. If you have multiple solutions you have to specify the solution file you wish to use in a sublime-project.

  1. Go to File -> Open and select the folder with your solution in it.

  2. Go to Project -> Save Project As and save a YOURPROJECTNAME.sublime-project in the same location as your *.sln

  3. Open your YOURPROJECTNAME.sublime-project file that should now appear in the sidebar on the left

  4. Enter the location to the *.sln file like below

Example of a sublime-project

{
    "folders":
    [
        {
            "follow_symlinks": true,
            "path": "."
        }
    ],
    "solution_file": "./testconsoleprj.sln"
}

Once the YOURPROJECT.sublime-project is set up and saved, follow the below:

  1. Close Sublime (YMMV but this seems to be the best way to open the YOURPROJECTNAME.sublime-project)
  2. Open Sublime
  3. Click Project -> Open Project, and select your YOURPROJECT.sublime-project file

C# language-specific settings

Create C# settings file as shown in this picture

Imgur

Paste the below in. This will launch intellisense on . and < symbols

{
   "auto_complete": true,
   "auto_complete_selector": "source - comment",
   "auto_complete_triggers": [ {"selector": "source.cs", "characters": ".<"} ],
}