Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
    新ゝ月
    @NewNotMoon
    pythonとかも同じようにprojecttypeがpythonとかになってますけど、勝手に書き換えても動作しないので、プロジェクトタイプを追加する手段があるんですかね?
    Hideyuki Tanaka
    @tanakh
    やっぱりなにか追加する必要がある感じですかね
    調べてみます
    うーむしかし一つ一つドキュメントが重たいですね…
    新ゝ月
    @NewNotMoon
    一応こないだ貼った http://msdn.microsoft.com/en-us/library/bb166376.aspx は「Creating Project Types」ってセクションですけど、どこを見ればいいのかぱっと見で全然わからない。
    新ゝ月
    @NewNotMoon
    読む限りかなり大変そうですね。新しいプロジェクトを追加するために、そのプロジェクトのためのエディタを作成したり(もちろん普通のテキストエディタを使用してもいい)、設定項目を作成したりしてビルドしないといけないもよう。
    Hideyuki Tanaka
    @tanakh
    プロジェクトタイプを追加して、HaskellTypeを作ることはデキたのですが、
    プロジェクトテンプレートが今度は登録できませんね
    このままではいつまでたってもコミットできなさそうなので、
    動かないけど適当なものをプッシュしていくことにします。
    とにかくMSDNがでかいわ要領を得ない説明だわでかなりツライ。
    しろたま
    @sirotama
    進捗どうですか!!
    Hideyuki Tanaka
    @tanakh
    進捗ないです(´・_・`)
    quartorz
    @quartorz

    https://github.com/quartorz/VisualStudioHaskell/tree/develop

    突然失礼します。
    いくつか機能追加してみたのですがどうすればいいのかよく分からないのでとりあえずリポジトリのURLを上げておきます。
    追加した機能は以下の通りです。

    • プロジェクトの作成
    • ツール→オプション→テキスト エディターへの項目の追加
    • ツール→オプション→環境→フォントおよび色 の「表示項目」への項目の追加
    • シンタックスハイライト(未完成)
    • Interaction WindowでのGHCiの実行

    設定の変更には対応できていません。
    シンタックスハイライトはClassifier.GetClassificationSpansを実装すれば完成しそうです。

    Yukitoshi Suzuki
    @yukitos
    @quartorz さん
    すごいですね!試させていただきます!
    quartorz
    @quartorz

    ありがとうございます。
    自分のメインPCでしか試せていないので何か問題があればぜひ指摘などしていただきたいです。

    書き忘れてたのですが、色々雑ながら一応Qiitaに分かったことなどをまとめた記事があるのでそちらのURLを載せておきます。
    http://qiita.com/quartorz/items/b4ea1ba03ad9356686b1

    Yukitoshi Suzuki
    @yukitos
    Microsoft.VisualStudio.ReplWindow.dllがソリューションフォルダに無いのでビルドエラーになったのですが、PythonTools for VisualStudioをインストールしたらビルド出来るようになりました。
    あと「VisualStudioHaskell」プロジェクトの「デバッグ」設定で、「外部プログラムの開始」にdevenv.exeへのパス(C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\devenv.exe)、「コマンドライン引数」に/rootsuffix Expとすることで試験用インスタンス上で拡張機能をデバッグできるようになるというTipsもあると助かりますー
    Yukitoshi Suzuki
    @yukitos
    しかし逆にPTVSをインストールしたがために、GetService(typeof(IUIThread))がPTVS用のアセンブリにあるIUIThreadでGetServiceしようとして実行時エラーが起こるようになってしまいました。
    なのでIUIThreadを別の名前空間になるようにしてエラーを回避しました(namespace Microsoft.VisualStudioTools.Haskell)
    ひょっとするとSharedProject以下で定義されているインターフェイスはすべてPTVSと競合してGetServiceでエラーになるような気もします。
    Yukitoshi Suzuki
    @yukitos
    ProjectNode.CreatePropertiesObjectをoverrideしないとCommonProjectNodePropertiesが使われることになりますが、このままだとOutputTypeのgetで例外が出たり、OutputTypeExプロパティが定義されてなかったりでVS2015のあちこちでエラーが出る模様です。
    のでこのあたりを直せるといいなーという感じで作業中です。
    quartorz
    @quartorz
    ありがとうございます。
    デバッグの方法についてはQiitaの方には追記しておきました。
    Microsoft.VisualStudio.ReplWindow.dllですが、Python ToolsをビルドしたものからこのDLLだけ拾ってきてソリューションに追加してあったのですがその後不要だと思ってquartorz/VisualStudioHaskell@0bf43d0で消してしまっていました。
    このDLLの参照を追加すれば競合しないと思うので、とりあえずこの変更だけコミットしておきました。
    2013でも同様にOutputTypegetで例外が出るようですが、プロジェクトについてはまだ全く触っていないので自分もこれから見てみたいと思います。
    Yukitoshi Suzuki
    @yukitos
    助かりますー
    Yukitoshi Suzuki
    @yukitos
    SharedProject の中でClipboardServiceの登録が前提になっているコードがあったので登録する必要があるみたいです
    Yukitoshi Suzuki
    @yukitos
    プロジェクト上で右クリックしたらメニューが出るようになったのでオプションページを作れるといいかなあという状態になりました
    quartorz
    @quartorz
    ありがとうございます。ではそちらの方を調べてみます。
    quartorz
    @quartorz
    とりあえずプロパティページを作って表示するのはできたので、今から詳細をまとめます。
    Yukitoshi Suzuki
    @yukitos
    :+1:
    CommonPropertyPageをWPF Controlにしようかなとか思いついてCommonWpfPropertyPageとか作り始めて沼に嵌まってました :)
    quartorz
    @quartorz
    quartorz/VisualStudioHaskell@94e38fd
    CommonPropertyPageを継承したクラス(TestPropertyPage)のControlプロパティで適当なコントロール(TestPropertyControl)を返すようにしておいて、VisualHaskellPackageProvideObject属性を付けてProjectNodeGetConfigurationIndependentPropertyPagesメソッドでプロパティページのGUIDを返せば出来るようです。
    Yukitoshi Suzuki
    @yukitos
    なるほど了解です
    続きは明日頑張ります!ではお先ですー
    quartorz
    @quartorz
    お疲れ様です
    Yukitoshi Suzuki
    @yukitos
    blob
    :+1:
    quartorz
    @quartorz
    :clap:
    Yukitoshi Suzuki
    @yukitos
    WPFのUserControlを表示させてみようと頑張ってみたのですが、WPF ControlのHandleがHwndSource.FromVisual経由では取れなくて断念しました :cry:
    quartorz
    @quartorz
    マジですか…
    じゃあWindows Formsで頑張るしかなさそうな感じですかね
    Yukitoshi Suzuki
    @yukitos
    ですねえ。しかしPTVSを見ているとWPFでBindingしたいコードがちらほらと。。。
    quartorz
    @quartorz
    あ、オプションとかもFormsなんですね:disappointed:
    Yukitoshi Suzuki
    @yukitos
    WPFのElement HostをDock.FillしたWinFormsのUserControlを使うことでいい感じになりそうです
    quartorz
    @quartorz
    試してみました
    いい感じですね
    Yukitoshi Suzuki
    @yukitos