やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

Eto.ToolkitのCodeEditorをMonoDevelopでビルドする

 無理矢理。

概要

 Eto.Formsでハイライトできるテキストエディタが欲しい。調査するとEto.CodeEditorというのがあるようだが、NuGetパッケージから入手できず、git cloneで入手するもMonoDevelopでビルドできなかった。
 そこで、新しいプロジェクトを作成し、コードをパクってビルドしてみた。

対象環境

調査

 ググると以下をみつけた。

 Eto.CodeEditorというのがある。Gtkではgtksourceviewが参照されるらしい。

入手

MonoDevelopのNuGetパッケージ

 Eto.Toolkitで検索しても見つからない。

f:id:ytyaru:20181217161250p:plain

git clone

$ git clone https://github.com/picoe/Eto.Toolkit

 入手できた。

ビルド

Eto.Toolkit.sln(プロジェクトを読み込めません)

 Eto.Toolkit.slnファイルをダブルクリックし、MonoDevelopを起動すると、「プロジェクトを読み込めません」と怒られる。

f:id:ytyaru:20181217161432p:plain

 実行ボタンを押してビルドすると「このプロジェクトの種類は、MonoDevelopによってサポートされていません」と怒られる。

f:id:ytyaru:20181217161519p:plain

新規プロジェクト

 新規プロジェクトを作成し、ソースコードをコピペしてビルドしてみる。

1. プロジェクト作成

  1. MonoDevelopを起動する
  2. メニュー→ファイル新しいソリューション
    f:id:ytyaru:20181201194454p:plain
  3. .NET Coreライブラリ.NET Standard ライブラリ f:id:ytyaru:20181202083840p:plain
  4. 対象のフレームワーク1.6にする(2.0にするとなぜか次のダイアログで「作成」が反応しなくなる)
    f:id:ytyaru:20181217164137p:plain
  5. 名前などを適当に入力し、Codeを選択する
    f:id:ytyaru:20181217164248p:plain
  6. プロジェクトが作成される
    f:id:ytyaru:20181217164313p:plain

2. .NET Standard バージョン指定

  1. ソリューションウインドウからプロジェクトを右クリックする
  2. オプションをクリックする
    f:id:ytyaru:20181215112340p:plain
  3. ビルドターゲットフレームワークから.NET Standard 2.0を選ぶ
    f:id:ytyaru:20181215112408p:plain
  4. ソリューションウインドウのSDK.NET Standardが、2.0.3になっているのを確認する

 これで1.6から2.0にできた。

3. NuGetでEto.Formsを追加

  1. メニュー→プロジェクトNuGet パッケージの追加
    f:id:ytyaru:20181201194958p:plain
  2. パッケージを追加ダイアログから欲しいパッケージを探す
    f:id:ytyaru:20181201195154p:plain
  3. 検索窓にEto.Formsと入力して絞り込む
  4. パッケージを追加ボタンをクリックする f:id:ytyaru:20181217164409p:plain
  5. 同意する f:id:ytyaru:20181217164500p:plainf:id:ytyaru:20181217164517p:plain

4. ソースコード

 Eto.Toolkitソリューション内にあるCodeEditor.csをコピペする。ファイル名もそれに変更する。

5. ビルド

f:id:ytyaru:20181217164701p:plain f:id:ytyaru:20181217164707p:plain

 .dllファイルが作成される。

所感

 このdllを使えばハイライトできるTextEditorが使えるかも? 次回試してみる。