[MonoDevelop] syntax definition of "addin.xml"

Vasili I. Galchin vigalchin at gmail.com
Sun Mar 7 20:47:46 EST 2010


Hi Michael,

     Below is your suggested development path. For F#, I am able to create a
console project with a populated file. I put a call to LoggingService.Login
in all the methods of my implementation of
IDotNetLanguageBinding .... in particular method Compile. When I select
"Build" from MonoDevelop I don't see my "Compile" methods LogInfo's! ....
Instead .... I see ...

WARNING [2010-03-07 19:36:36Z]: Cannot get binding for null language at
at System.Environment.get_StackTrace()
   at
MonoDevelop.Projects.LanguageBindingService.GetBindingPerLanguageName(System.String
language) in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects/LanguageBindingService.cs:line
93
   at MonoDevelop.Projects.DotNetProject.FindLanguage(System.String name) in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects/DotNetProject.cs:line
596
   at MonoDevelop.Projects.DotNetProject.get_LanguageBinding() in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects/DotNetProject.cs:line
188
   at MonoDevelop.Projects.DotNetProject.get_SupportedClrVersions() in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects/DotNetProject.cs:line
364
   at
MonoDevelop.Projects.DotNetProject.SupportsFramework(MonoDevelop.Core.Assemblies.TargetFramework
framework) in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects/DotNetProject.cs:line
324
   at
MonoDevelop.Projects.DotNetAssemblyProject.SupportsFramework(MonoDevelop.Core.Assemblies.TargetFramework
framework) in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects/DotNetAssemblyProject.cs:line
56
   at
MonoDevelop.Projects.DotNetProject.GetValidFrameworkVersion(MonoDevelop.Core.Assemblies.TargetFramework
suggestion) in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects/DotNetProject.cs:line
344
   at
MonoDevelop.Projects.DotNetProject.set_TargetFramework(MonoDevelop.Core.Assemblies.TargetFramework
value) in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects/DotNetProject.cs:line
275
   at
MonoDevelop.Projects.Formats.MSBuild.MSBuildProjectHandler.CreateSolutionItem(System.String
language, System.String typeGuids, System.String itemType, System.Type
itemClass) in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectHandler.cs:line
257
   at
MonoDevelop.Projects.Formats.MSBuild.MSBuildProjectHandler.Load(IProgressMonitor
monitor, System.String fileName, System.String language, System.Type
itemClass) in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectHandler.cs:line
203
   at
MonoDevelop.Projects.Formats.MSBuild.GenericItemTypeNode.LoadSolutionItem(IProgressMonitor
monitor, System.String fileName, System.String itemGuid) in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectService.cs:line
542
   at
MonoDevelop.Projects.Formats.MSBuild.MSBuildProjectService.LoadItem(IProgressMonitor
monitor, System.String fileName, System.String typeGuid, System.String
itemGuid) in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects.Formats.MSBuild/MSBuildProjectService.cs:line
83
   at
MonoDevelop.Projects.Formats.MSBuild.SlnFileFormat+<LoadSolution>c__AnonStorey58.<>m__24(IProgressMonitor
, System.String ) in
/home/vasili/Downloads/monodevelop-2.2.1/src/core/MonoDevelop.Projects/MonoDevelop.Projects.Formats.MSBuild/SlnFileFormat.cs:line
662
   at Mo

I guess that this core code is called before "diving" down into
IDotNetLanguageBinding code. What have I forgotten to do to cause the
problem evidenced by exception trace!?

Regards,

Vasili


For writing a .NET language binding, there are a few stages of things
> you can do:
> 1) stub out the addin
> 2) file type definitions
> 3) IDotNetLanguageBinding for project & compilation support
> 4) file & project templates
> 5) option panels for setting language-specific project options
> 6) a syntax highlighting definition
> 7) code templates
> 8) a parser, to provide outlining, folding, class list, quick finder,
> and fill the database that code completion uses
> 9) a text editor extension subclassing CompletionTextEditorExtension,
> to provide code completion and smart indentation etc.
> 10) add Refactorer to the IDotNetLanguageBinding implementation to
> support things like find refs, rename, insert member etc
> 11) other things like code formatter etc.
>
> I can provide more specifics on any one of these.
>
> --
> Michael Hutchinson
> http://mjhutchinson.com
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/monodevelop-list/attachments/20100307/6ed9a562/attachment-0001.html 


More information about the Monodevelop-list mailing list