2010-01-13 Jonathan Pryor * Resources/mdoc-html-utils.xsl: Fix regression caused by 2009-12-02 commit adding GetLinkTargetHtml(). The problem was that when running within ASP.NET/monodoc ~all extension method links would be 'javascript:alert("...")M:Foo.Method(...)', which is clearly wrong. This occurred because $linkid's generation would always call GetLinkTargetHtml() with a $cref value of '', thus the monodoc GetLinkTarget() would return '', so GetLinkTargetHtml() would return the javascript "not found" alert. Thus, we can't expect GetLinkTargetHtml() with $cref='' to work under monodoc, but it's ~required to work sanely under 'mdoc export-html'. Solution is to not call GetLinkTargetHtml() here UNLESS we're doing 'mdoc export-html' generation, which we assume to be the case if $html-anchor is true. 2009-12-30 Jonathan Pryor * Lucene.Net/Lucene.Net/QueryParser/QueryParser.cs: Fix crash when searching for "()". Fixes #423853. Thanks to BenoƮt Tuduri . 2009-12-03 Jonathan Pryor * Resources/mdoc-html-utils.xsl: Add support for generating namespace links via 2009-12-03 Jonathan Pryor * Resources/mdoc-html-utils.xsl: Fix link-id generation of conversion operators. 2009-12-02 Jonathan Pryor * Mono.Documentation/ManifestResourceResolver.cs: Assembly.GetManifestResourceStream() throws an exception if the resource isn't present (instead of returning null), so don't just call it to see if the resource exists. * Resources/mdoc-html-utils.xsl: .NET compatibility fixes (so that mdoc can run under .NET w/o bundling Mono's System.Xml): - Use msxsl:node-set() when required. - Use not when a variable is needed. - Change semantics of GetLinkTarget(): instead of returning javascript code (previous behavior) or '--not-available--' (did this ever happen), return "" if the target can't be found. - Add GetLinkTargetHtml() to wrap GetLinkTarget() and return the previous javascript if the target couldn't be found. 2009-11-24 Jonathan Pryor * Monodoc/ecma-provider.cs: Use XslCompiledTransform instead of XslTransform, as XslCompiledTransform is *significantly* faster under .NET (3m7s -> 1.7s for some tests). 2009-10-02 Jonathan Pryor * Mono.Documentation/XmlDocUtils.cs: GetInterfaces() can throw if the type we're trying to load can't be found (e.g. if a type implements an internal interface, there won't be an XML file for that internal interface). Ignore the exception. 2009-09-25 Jonathan Pryor * Monodoc/ecma-provider.cs: Don't return 'null' from GetPublicUrl(), but instead provide a decent URL even if the url isn't to a single member, but instead to show all members, e.g. T:System.String/*. * Monodoc/provider.cs: Obsolete Node.URL. It's too variable for sane use; use Node.PublicUrl. 2009-09-09 Jonathan Pryor * Mono.Documentation/ManifestResourceResolver.cs: Allow it to lookup files located in multiple directories. Needed so that 'mdoc export-html' can properly deal with multiple source directories. 2009-08-13 Jonathan Pryor * Monodoc/provider.cs: Add a RootTree.AddSource(string) method, so that additional directories can be checked for .source file loading. 2009-08-13 Jonathan Pryor * Monodoc/provider.cs: Make RootTree.LoadTree() just call RootTree.LoadTree(null), and move the .config-file parsing into .LoadTree(string) (for when basedir==null). This will simplify the logic of monodoc, as we want to add the ability to monodoc to use any arbitrary directory, and this will remove the need to do `if (d==null) RootTree.LoadTree(); else RootTree.LoadTree(d)`. This also conforms to FxDG guidelines. 2009-08-12 Jonathan Pryor * Resources/mdoc-html-format: Added; XSLT file to match "//format[@type='text/html']//*", to support "pass-through" semantics. This allows you to use actual HTML within your documentation and have it visible to HTML-supporting output formats. WARNING: Use as a "last resort" -- this is primarily intended for importing existing HTML w/o needing lots of extra logic to convert into mdoc format XML first (with a corresponding loss of fidelity). However, it means that if (when) we get non-HTML output format support, the blocks WILL be skipped for that non-HTML output format. For example, the forever-on-the-back-burner ROFF output support -- to remove the use of lynx, as no one ever has it installed -- wouldn't be able to support HTML format, so it would skip these blocks. Consider the moral equivalent of Perl POD's '=begin formatname' block; see perlpod(1). * Resources/mdoc-html-utils.xsl: mdoc-html-format.xsl. It *must* be imported (NOT included) so that it will have a lower priority than other