MacのAtomでOmniSharpを使う


このページは以下のURLに移転しました。5秒後に自動で移動します。
新URL: https://note.nkmk.me/c-sharp-mac-atom-omnisharp/

MacでC#をコンパイル、実行できるようにしたので、IntelliSenseが使えるようになるというOmniSharpをAtomに導入してみた。

VimやEmacsでも使える。特にVimはomnisharp atomでGoogle検索するともしかして: omnisharp vimと出てくるぐらいなので、かなり活発な感じ。

インストール

omnisharp-atom

Atomの設定画面から検索してインストールするか、apmコマンドを使う。

1
$ apm install omnisharp-atom

Mono

公式のDownloadから.pkgファイルをダウンロードしてインストールする。

Homebrewでもインストール可能。

1
$ brew install mono

dnvm

omnisharp-atomの説明だとオプションのようにも読めるが、dnvmのインストールも必要。

If you want to work on a DNX application then you will also need to have dnvm installed.

DNXは”.NET Execution Environment”で、dnvmは”.NET Version Manager”の意味。aspnet/Homeに導入方法が書いてある。

Homebrewでdnvmをインストールする。

1
2
3
$ brew tap aspnet/dnx
$ brew update
$ brew install dnvm

~/.bash_profileに以下を追記。

1
source dnvm.sh

以下のコマンドで.bash_profileを再読み込みして反映させる。

1
$ source ~/.bash_profile

dnvmコマンドでエラーが無ければOK。

1
$ dnvm

dnvm(.NET Version Manager)が準備出来たので、DNXをダウンロードする。

1
$ dnvm upgrade

dnvm listで確認する。

1
2
3
4
5
$ dnvm list
Active Version Runtime Arch OperatingSystem Alias
------ ------- ------- ---- --------------- -----
* 1.0.0-beta6 mono linux/darwin default

使い方

.csファイルを開くと、エディタ部分の左下隅のマークが緑色になりサーバーが起動する。

この状態だとまだプロジェクトとして認識されていない。緑色マークの右側に青文字で0 Projectsと表示されているはず。

とりあえず中身は{}だけでいいので、同じフォルダにproject.jsonを作成して保存すると、project.lock.jsonというファイルが自動的に生成される。

同時にサーバーがリスタートしてプロジェクトとして認識される。リスタートされない場合は、青文字の0 ProjectsをクリックしてRestartボタンをクリックすればリスタートできる。

1 ProjectsになればOKで、補間などIntelliSenseの機能が使えるようになる。cmd押しながらクリックで定義に飛べたり、コードの文脈に沿った補間やリネームが可能。

project.jsonproject.lock.jsonに関しては以下に情報が記載されているがまだちゃんと読んでない。

ひな形作成

コマンドパレットからOmnisharp Atom:New Applicationでひな形を作成出来る。Web ApplicationConsole Applicationなどがある。

関連記事