無理矢理。
概要
Eto.Formsでハイライトできるテキストエディタが欲しい。調査するとEto.CodeEditorというのがあるようだが、NuGetパッケージから入手できず、git cloneで入手するもMonoDevelopでビルドできなかった。
そこで、新しいプロジェクトを作成し、コードをパクってビルドしてみた。
対象環境
- Raspbierry pi 3 Model B+
- Raspbian stretch(9.0) 2018-06-27
- Mono 5.16.0
- MonoDevelop 7.6 build 711
- Eto.Forms 2.4.1 拡張機能, NuGetパッケージ
- .NET Core 2.2, MonoDevelop参照方法
調査
ググると以下をみつけた。
Eto.CodeEditorというのがある。Gtkではgtksourceviewが参照されるらしい。
入手
MonoDevelopのNuGetパッケージ
Eto.Toolkitで検索しても見つからない。

git clone
$ git clone https://github.com/picoe/Eto.Toolkit
入手できた。
ビルド
Eto.Toolkit.sln(プロジェクトを読み込めません)
Eto.Toolkit.slnファイルをダブルクリックし、MonoDevelopを起動すると、「プロジェクトを読み込めません」と怒られる。

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

新規プロジェクト
新規プロジェクトを作成し、ソースコードをコピペしてビルドしてみる。
1. プロジェクト作成
- MonoDevelopを起動する
- メニュー→
ファイル→新しいソリューション

.NET Core→ライブラリ→.NET Standard ライブラリ
対象のフレームワークを1.6にする(2.0にするとなぜか次のダイアログで「作成」が反応しなくなる)

- 名前などを適当に入力し、
Codeを選択する

- プロジェクトが作成される

2. .NET Standard バージョン指定
- ソリューションウインドウからプロジェクトを右クリックする
オプションをクリックする

ビルド→ターゲットフレームワークから.NET Standard 2.0を選ぶ

- ソリューションウインドウのSDKの
.NET Standardが、2.0.3になっているのを確認する
これで1.6から2.0にできた。
3. NuGetでEto.Formsを追加
- メニュー→
プロジェクト→NuGet パッケージの追加

パッケージを追加ダイアログから欲しいパッケージを探す

- 検索窓に
Eto.Formsと入力して絞り込む パッケージを追加ボタンをクリックする
同意する

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

.dllファイルが作成される。
所感
このdllを使えばハイライトできるTextEditorが使えるかも? 次回試してみる。