2015-12-30 58 views
2

我编写了一个visual studio 2015扩展来集成编程语言Haskell。自定义项目类型的“开始按钮”的自定义行为

我已经实现了语言服务,语法高亮和一个新的项目类型 - 因此您可以创建一个包含* .hsproj文件和Main.hs文件的Haskell项目。

现在我需要重写开始按钮的行为,因为我想将所有Haskell模块加载到GHCi解释器中(解释器也已经集成到Visual Studio中作为新窗口)。

问题是,在目前visual studio运行msbuild进程 - 但我想要做的是发送编程命令给我的集成解释器(:l Main.hs),当开发人员点击“开始”或按下F5 - 但只适用于名为“HaskellProject”的项目类型!

如果可能我想替换我的项目类型的默认构建过程 - 我不需要msbuild,我只想将文件加载到ghci中。

有没有人知道我能做什么?

谢谢你,对不起我的英语;-)

+0

我会开始查看我的* .hsproj文件中的'Target'节点,这就是Visual Studio知道如何构建项目以及如何使用类似下面的Import节点:''。 –

+0

另外,你的Haskell窗口可以通过'EnvDte'订阅'BuildEventClass'事件,并将这些文件加载​​到解释器窗口中... https://msdn.microsoft.com/zh-cn/library/envdte._dispbuildevents_event.onbuildbegin .aspx这样你不需要任何东西int他MsBuild文件。 – jessehouwing

回答

1

通过F5启动一个项目或开始菜单,通过项目系统的I VsDebuggableProjectCfg实施完成。

我还没有挖掘到新的CPS项目系统,但是如果您的项目类型基于CPS,Python Tools for VS repository可能会为您提供一个良好的开端。