Skip to content

Commit

Permalink
Use latest FSharp.Formatting version
Browse files Browse the repository at this point in the history
  • Loading branch information
forki committed Nov 11, 2013
1 parent ee3d2fe commit 95725d4
Show file tree
Hide file tree
Showing 6 changed files with 189 additions and 136 deletions.
2 changes: 1 addition & 1 deletion build.cmd
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ if %MinimalFAKEVersion%==%FAKEVersion% goto Build
cls

if not exist tools\FSharp.Formatting\lib\net40\FSharp.CodeFormat.dll (
"tools\nuget\nuget.exe" "install" "FSharp.Formatting" "-OutputDirectory" "tools" "-ExcludeVersion"
"tools\nuget\nuget.exe" "install" "FSharp.Formatting" "-OutputDirectory" "tools" "-ExcludeVersion" "-Prerelease"
)

SET TARGET="Default"
Expand Down
7 changes: 7 additions & 0 deletions help/templates/docpage.cshtml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
@{
Layout = "template";
Title = Properties["page-title"];
Description = Properties["project-summary"];
}
@Properties["document"]
@Properties["tooltips"]
171 changes: 84 additions & 87 deletions help/templates/reference/module.cshtml
Original file line number Diff line number Diff line change
@@ -1,123 +1,120 @@
@using FSharp.MetadataFormat
@{
Layout = "default";
Title = "Module";
Layout = "template";
Title = Model.Module.Name + " - " + Properties["project-name"];
}

@{
var nestModules = (IEnumerable<Module>)Model.Module.NestedModules;
var nestTypes = (IEnumerable<FSharp.MetadataFormat.Type>)Model.Module.NestedTypes;
var nestModules = (IEnumerable<Module>)Model.Module.NestedModules;
var nestTypes = (IEnumerable<FSharp.MetadataFormat.Type>)Model.Module.NestedTypes;

var members = (IEnumerable<Member>)Model.Module.AllMembers;
var comment = (Comment)Model.Module.Comment;
var byCategory =
members.GroupBy(m => m.Category).OrderBy(g => String.IsNullOrEmpty(g.Key) ? "ZZZ" : g.Key)
.Select((g, n) => new { Index = n, GroupKey = g.Key, Members = g.OrderBy(m => m.Name), Name = String.IsNullOrEmpty(g.Key) ? "Other module members" : g.Key });
var members = (IEnumerable<Member>)Model.Module.AllMembers;
var comment = (Comment)Model.Module.Comment;
var byCategory =
members.GroupBy(m => m.Category).OrderBy(g => String.IsNullOrEmpty(g.Key) ? "ZZZ" : g.Key)
.Select((g, n) => new { Index = n, GroupKey = g.Key, Members = g.OrderBy(m => m.Name), Name = String.IsNullOrEmpty(g.Key) ? "Other module members" : g.Key});
}

<h1>@Model.Module.Name</h1>
<div class="xmldoc">
@foreach (var sec in comment.Sections)
{
if (!byCategory.Any(g => g.GroupKey == sec.Key))
{
if (sec.Key != "<default>")
{
<h2>@sec.Key</h2>
}
@sec.Value
}
@foreach (var sec in comment.Sections) {
if (!byCategory.Any(g => g.GroupKey == sec.Key)) {
if (sec.Key != "<default>") {
<h2>@sec.Key</h2>
}
@sec.Value
}
}
</div>
@if (byCategory.Count() > 1)
{
<h2>Table of contents</h2>
<ul>
@foreach (var g in byCategory)
{
<li><a href="@("#section" + g.Index.ToString())">@g.Name</a></li>
}
</ul>
<h2>Table of contents</h2>
<ul>
@foreach (var g in byCategory)
{
<li><a href="@("#section" + g.Index.ToString())">@g.Name</a></li>
}
</ul>
}

<!-- TODO: Refactor me - copy & paste from 'namespaces.cshtml' -->

@if (nestTypes.Count() + nestModules.Count() > 0)
{
<h2>Nested types and modules</h2>
<h2>Nested types and modules</h2>
}

@if (nestTypes.Count() > 0)
{
<table class="table table-bordered type-list">
<thead>
<tr><td>Type</td><td>Description</td></tr>
</thead>
<tbody>
@foreach (var it in nestTypes)
{
<tr>
<td class="type-name">
<a href="@(it.UrlName).html">@it.Name</a>
</td>
<td class="xmldoc">@it.Comment.Blurb</td>
</tr>
}
</tbody>
</table>
<table class="table table-bordered type-list">
<thead>
<tr><td>Type</td><td>Description</td></tr>
</thead>
<tbody>
@foreach (var it in nestTypes)
{
<tr>
<td class="type-name">
<a href="@(it.UrlName).html">@it.Name</a>
</td>
<td class="xmldoc">@it.Comment.Blurb</td>
</tr>
}
</tbody>
</table>
}
@if (nestModules.Count() > 0)
{
<table class="table table-bordered module-list">
<thead>
<tr><td>Module</td><td>Description</td></tr>
</thead>
<tbody>
@foreach (var it in nestModules)
{
<tr>
<td class="module-name">
<a href="@(it.UrlName).html">@it.Name</a>
</td>
<td class="xmldoc">@it.Comment.Blurb</td>
</tr>
}
</tbody>
</table>
<table class="table table-bordered module-list">
<thead>
<tr><td>Module</td><td>Description</td></tr>
</thead>
<tbody>
@foreach (var it in nestModules)
{
<tr>
<td class="module-name">
<a href="@(it.UrlName).html">@it.Name</a>
</td>
<td class="xmldoc">@it.Comment.Blurb</td>
</tr>
}
</tbody>
</table>
}

<!-- END TODO -->



@foreach (var g in byCategory)
{
if (byCategory.Count() > 1)
{
if (byCategory.Count() > 1) {
<h2>@g.Name<a name="@("section" + g.Index.ToString())">&#160;</a></h2>
var info = comment.Sections.FirstOrDefault(kvp => kvp.Key == g.GroupKey);
if (info.Key != null)
{
<h2>@g.Name<a name="@("section" + g.Index.ToString())">&#160;</a></h2>
var info = comment.Sections.FirstOrDefault(kvp => kvp.Key == g.GroupKey);
if (info.Key != null)
{
<div class="xmldoc">
@info.Value
</div>
}
<div class="xmldoc">
@info.Value
</div>
}
}

@RenderPart("members", new
{
Header = "Functions and values",
TableHeader = "Function or value",
Members = g.Members.Where(m => m.Kind == MemberKind.ValueOrFunction)
})
@RenderPart("members", new {
Header = "Functions and values",
TableHeader = "Function or value",
Members = g.Members.Where(m => m.Kind == MemberKind.ValueOrFunction)
})

@RenderPart("members", new
{
Header = "Type extensions",
TableHeader = "Type extension",
Members = g.Members.Where(m => m.Kind == MemberKind.TypeExtension)
})
@RenderPart("members", new {
Header = "Type extensions",
TableHeader = "Type extension",
Members = g.Members.Where(m => m.Kind == MemberKind.TypeExtension)
})

@RenderPart("members", new
{
Header = "Active patterns",
TableHeader = "Active pattern",
Members = g.Members.Where(m => m.Kind == MemberKind.ActivePattern)
})
@RenderPart("members", new {
Header = "Active patterns",
TableHeader = "Active pattern",
Members = g.Members.Where(m => m.Kind == MemberKind.ActivePattern)
})
}
4 changes: 2 additions & 2 deletions help/templates/reference/namespaces.cshtml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
@{
Layout = "default";
Title = "Namespaces";
Layout = "template";
Title = "Namespaces - " + Properties["project-name"];
}

<h1>@Model.Name.Name</h1>
Expand Down
83 changes: 37 additions & 46 deletions help/templates/reference/type.cshtml
Original file line number Diff line number Diff line change
@@ -1,73 +1,64 @@
@using FSharp.MetadataFormat
@{
Layout = "default";
Title = "Module";
Layout = "template";
Title = Model.Type.Name + " - " + Properties["project-name"];
}

@{
var members = (IEnumerable<Member>)Model.Type.AllMembers;
var comment = (Comment)Model.Type.Comment;
var byCategory =
members.GroupBy(m => m.Category).OrderBy(g => String.IsNullOrEmpty(g.Key) ? "ZZZ" : g.Key)
.Select((g, n) => new { Index = n, GroupKey = g.Key, Members = g.OrderBy(m => m.Name), Name = String.IsNullOrEmpty(g.Key) ? "Other type members" : g.Key });
var members = (IEnumerable<Member>)Model.Type.AllMembers;
var comment = (Comment)Model.Type.Comment;
var byCategory =
members.GroupBy(m => m.Category).OrderBy(g => String.IsNullOrEmpty(g.Key) ? "ZZZ" : g.Key)
.Select((g, n) => new { Index = n, GroupKey = g.Key, Members = g.OrderBy(m => m.Name), Name = String.IsNullOrEmpty(g.Key) ? "Other type members" : g.Key });
}

<h1>@Model.Type.Name</h1>
<div class="xmldoc">
@foreach (var sec in comment.Sections)
{
if (!byCategory.Any(g => g.GroupKey == sec.Key))
{
if (sec.Key != "<default>")
{
<h2>@sec.Key</h2>
}
@sec.Value
}
@foreach (var sec in comment.Sections) {
if (!byCategory.Any(g => g.GroupKey == sec.Key)) {
if (sec.Key != "<default>") {
<h2>@sec.Key</h2>
}
@sec.Value
}
}
</div>
@if (byCategory.Count() > 1)
{
<h2>Table of contents</h2>
<ul>
@foreach (var g in byCategory)
{
<li><a href="@("#section" + g.Index.ToString())">@g.Name</a></li>
}
</ul>
}
@foreach (var g in byCategory)
{
if (byCategory.Count() > 1)
<h2>Table of contents</h2>
<ul>
@foreach (var g in byCategory)
{
<h2>@g.Name<a name="@("section" + g.Index.ToString())">&#160;</a></h2>
var info = comment.Sections.FirstOrDefault(kvp => kvp.Key == g.GroupKey);
if (info.Key != null)
{
<div class="xmldoc">
@info.Value
</div>
}
<li><a href="@("#section" + g.Index.ToString())">@g.Name</a></li>
}
</ul>
}
@foreach (var g in byCategory) {
if (byCategory.Count() > 1) {
<h2>@g.Name<a name="@("section" + g.Index.ToString())">&#160;</a></h2>
var info = comment.Sections.FirstOrDefault(kvp => kvp.Key == g.GroupKey);
if (info.Key != null) {
<div class="xmldoc">
@info.Value
</div>
}
}

@RenderPart("members", new
{
@RenderPart("members", new {
Header = "Constructors",
TableHeader = "Constructor",
Members = g.Members.Where(m => m.Kind == MemberKind.Constructor)
})
})

@RenderPart("members", new
{
@RenderPart("members", new {
Header = "Instance members",
TableHeader = "Instance member",
Members = g.Members.Where(m => m.Kind == MemberKind.InstanceMember)
})
})

@RenderPart("members", new
{
@RenderPart("members", new {
Header = "Static members",
TableHeader = "Static member",
Members = g.Members.Where(m => m.Kind == MemberKind.StaticMember)
})
}
})
}
Loading

0 comments on commit 95725d4

Please sign in to comment.