From 16d68a8954e935182378bd8236dc4ac7d6a9d7dc Mon Sep 17 00:00:00 2001 From: Frans Bouma Date: Thu, 4 Aug 2016 11:25:26 +0200 Subject: [PATCH] Implements #36, version bump to 0.13 Adds permalink anchor inside all header HTML tags. Themes are adjusted to have a 'headerlink' css class to deal with this anchor: it's visible only when hovered. --- Themes/Default/Destination/css/theme.css | 32 +++++++++++++++++++++ Themes/LLBLGenPro/Destination/css/theme.css | 32 +++++++++++++++++++++ src/DocNet/Properties/AssemblyInfo.cs | 4 +-- src/MarkdownDeep/Block.cs | 9 ++++++ 4 files changed, 75 insertions(+), 2 deletions(-) diff --git a/Themes/Default/Destination/css/theme.css b/Themes/Default/Destination/css/theme.css index 07f5e01..00d59a1 100644 --- a/Themes/Default/Destination/css/theme.css +++ b/Themes/Default/Destination/css/theme.css @@ -136,6 +136,14 @@ a:hover, a:active { outline: 0; } +a.headerlink { + display: inline; + text-decoration: none; + visibility: hidden; + font-size: smaller; + margin-left: 3px; +} + abbr[title] { border-bottom: 1px dotted; } @@ -303,6 +311,30 @@ h6 { margin-bottom: 7px; } +h1:hover a.headerlink { + visibility: visible; +} + +h2:hover a.headerlink { + visibility: visible; +} + +h3:hover a.headerlink { + visibility: visible; +} + +h4:hover a.headerlink { + visibility: visible; +} + +h5:hover a.headerlink { + visibility: visible; +} + +h6:hover a.headerlink { + visibility: visible; +} + hr { display: block; height: 1px; diff --git a/Themes/LLBLGenPro/Destination/css/theme.css b/Themes/LLBLGenPro/Destination/css/theme.css index dad2c6a..fd4f6fd 100644 --- a/Themes/LLBLGenPro/Destination/css/theme.css +++ b/Themes/LLBLGenPro/Destination/css/theme.css @@ -136,6 +136,14 @@ a:hover, a:active { outline: 0; } +a.headerlink { + display: inline; + text-decoration: none; + visibility: hidden; + font-size: smaller; + margin-left: 3px; +} + abbr[title] { border-bottom: 1px dotted; } @@ -303,6 +311,30 @@ h6 { margin-bottom: 7px; } +h1:hover a.headerlink { + visibility: visible; +} + +h2:hover a.headerlink { + visibility: visible; +} + +h3:hover a.headerlink { + visibility: visible; +} + +h4:hover a.headerlink { + visibility: visible; +} + +h5:hover a.headerlink { + visibility: visible; +} + +h6:hover a.headerlink { + visibility: visible; +} + hr { display: block; height: 1px; diff --git a/src/DocNet/Properties/AssemblyInfo.cs b/src/DocNet/Properties/AssemblyInfo.cs index dd161f8..d5b1b7c 100644 --- a/src/DocNet/Properties/AssemblyInfo.cs +++ b/src/DocNet/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("0.12.0.0")] -[assembly: AssemblyFileVersion("0.12.0")] +[assembly: AssemblyVersion("0.13.0.0")] +[assembly: AssemblyFileVersion("0.13.0")] diff --git a/src/MarkdownDeep/Block.cs b/src/MarkdownDeep/Block.cs index 84b4335..4df2802 100644 --- a/src/MarkdownDeep/Block.cs +++ b/src/MarkdownDeep/Block.cs @@ -172,6 +172,7 @@ namespace MarkdownDeep case BlockType.h5: case BlockType.h6: string id = string.Empty; + bool insertPermalink = false; if (m.ExtraMode && !m.SafeMode) { b.Append("<" + BlockType.ToString()); @@ -181,6 +182,7 @@ namespace MarkdownDeep b.Append(" id=\""); b.Append(id); b.Append("\">"); + insertPermalink = true; } else { @@ -204,6 +206,13 @@ namespace MarkdownDeep { m.SpanFormatter.Format(b, Buf, ContentStart, ContentLen); } + if(insertPermalink) + { + // append header permalink link + b.Append(""); + } b.Append("\n"); break;