nitweb: show full name in mentities cards
[nit.git] / src / doc / commands / commands_html.nit
index 7822eb2..7aac39a 100644 (file)
@@ -17,6 +17,8 @@ module commands_html
 
 import commands::commands_graph
 import commands::commands_usage
+import commands::commands_ini
+import commands::commands_main
 
 import templates::templates_html
 import doc_down
@@ -171,3 +173,162 @@ redef class CmdGraph
                return output.write_to_string
        end
 end
+
+# Ini commands
+
+redef class CmdIniDescription
+       redef fun to_html do
+               var desc = self.desc
+               if desc == null then return ""
+
+               return "<p>{desc}</p>"
+       end
+end
+
+redef class CmdIniGitUrl
+       redef fun to_html do
+               var url = self.url
+               if url == null then return ""
+
+               return "<a href=\"{url}\">{url}</a>"
+       end
+end
+
+redef class CmdIniCloneCommand
+       redef fun to_html do
+               var command = self.command
+               if command == null then return ""
+
+               return "<pre>{command}</pre>"
+       end
+end
+
+redef class CmdIniIssuesUrl
+       redef fun to_html do
+               var url = self.url
+               if url == null then return ""
+
+               return "<a href=\"{url}\">{url}</a>"
+       end
+end
+
+redef class CmdIniMaintainer
+       redef fun to_html do
+               var name = self.maintainer
+               if name == null then return ""
+
+               return "<b>{name.html_escape}</b>"
+       end
+end
+
+redef class CmdIniContributors
+       redef fun to_html do
+               var names = self.contributors
+               if names == null or names.is_empty then return ""
+
+               var tpl = new Template
+               tpl.add "<ul>"
+               for name in names do
+                       tpl.add "<li><b>{name.html_escape}</b></li>"
+               end
+               tpl.add "</ul>"
+               return tpl.write_to_string
+       end
+end
+
+redef class CmdIniLicense
+       redef fun to_html do
+               var license = self.license
+               if license == null then return ""
+
+               return "<a href=\"https://opensource.org/licenses/{license}\">{license}</a>"
+       end
+end
+
+redef class CmdEntityFile
+
+       # URL to the file
+       #
+       # Can be refined in subtools.
+       var file_url: nullable String = file is lazy, writable
+
+       redef fun to_html do
+               var file = self.file
+               if file == null then return ""
+
+               return "<a href=\"{file_url or else ""}\">{file.basename}</a>"
+       end
+end
+
+redef class CmdEntityFileContent
+       redef fun to_html do
+               var content = self.content
+               if content == null then return ""
+
+               return "<pre>{content}</pre>"
+       end
+end
+
+# Main commands
+
+redef class CmdMains
+       redef fun to_html do return super # FIXME lin
+end
+
+redef class CmdMainCompile
+       redef fun to_html do
+               var command = self.command
+               if command == null then return ""
+
+               return "<pre>{command}</pre>"
+       end
+end
+
+redef class CmdManSynopsis
+       redef fun to_html do
+               var synopsis = self.synopsis
+               if synopsis == null then return ""
+
+               return "<pre>{synopsis}</pre>"
+       end
+end
+
+redef class CmdManOptions
+       redef fun to_html do
+               var options = self.options
+               if options == null or options.is_empty then return ""
+
+               var tpl = new Template
+               tpl.addn "<pre>"
+               tpl.addn "<table width='100%'>"
+               for opt, desc in options do
+                       tpl.addn "<tr>"
+                       tpl.addn "<th valign='top' width='30%'>{opt}</th>"
+                       tpl.addn "<td width='70%'>{desc}</td>"
+                       tpl.addn "</tr>"
+               end
+               tpl.addn "</table>"
+               tpl.addn "</pre>"
+
+               return tpl.write_to_string
+       end
+end
+
+redef class CmdTesting
+       redef fun to_html do
+               var command = self.command
+               if command == null then return ""
+
+               return "<pre>{command}</pre>"
+       end
+end
+
+# Misc
+
+redef class CmdHtmlightVisitor
+       redef fun hrefto(mentity) do
+               if mentity isa MClassDef then return mentity.mclass.html_url
+               if mentity isa MPropDef then return mentity.mproperty.html_url
+               return mentity.html_url
+       end
+end