Documentation Monster
DM import from HB json and other feedback
Gravatar is a globally recognized avatar based on your email address. DM import from HB json and other feedback
  Richard Kaye
  All
  Jun 15, 2026 @ 07:27am

Hi Rick,

Been a while since I ran through the import process for my main HB project and thought I'd share some feedback. This was imported using the 0.5.4.2 build.

Import appeared to go smoothly. No errors reported. I started going through my topic tree and noticed a bunch of broken image links. I vaguely recall this from earlier testing. It looks like some image links are coming in with backslashes as opposed to forward slashes. The pattern I've noticed is that the ones that are wrong have image captions inside the square braces ![A Caption](images\cantfindme.png). OTOH image refs like this appear to be fine: ![](images/lookatme.png). I also just noticed that if the image ref used a leading backslash it does get converted properly even when there is a caption in the square braces.

Before I noticed this pattern, I decided to try the broken link checker. It threw an error.

Here's the log:

6/15/2026 12:27:38 PM - Task: Invalid URI: The hostname could not be parsed.
Invalid URI: The hostname could not be parsed.
Documentation Monster v0.5.4.2
10.0.20348.1.amd64fre.fe_release.210507-1500 - en-US - NET .NET 10.0.3 - 64 bit
Amazon EC2 r7iz.2xlarge, Microsoft Remote Display Adapter, hw-acc: True
WebView: rt: 149.0.4022.69 - sdk: 1.0.3912.50
en-US - en-US
C:\Program Files\Documentation Monster
Portable: False
---
System.Private.Uri
   at System.Uri..ctor(String uriString, UriKind uriKind)
   at MarkdownMonster.Controls.LeftSidebar.MarkdownLinkChecker.ParseInlines(MarkdownObject inline, IList`1 docLinks, HashSet`1 anchors, Block block, Boolean noLinkCheck, String docHtml, Boolean noHttpCheck) in D:\projects\DocumentationMonster\DocumentationMonster\Controls\LeftSideBar\LinkCheckSidebar\MarkdownLinkChecker.cs:line 288
   at MarkdownMonster.Controls.LeftSidebar.MarkdownLinkChecker.ParseInlines(MarkdownObject inline, IList`1 docLinks, HashSet`1 anchors, Block block, Boolean noLinkCheck, String docHtml, Boolean noHttpCheck) in D:\projects\DocumentationMonster\DocumentationMonster\Controls\LeftSideBar\LinkCheckSidebar\MarkdownLinkChecker.cs:line 356
   at MarkdownMonster.Controls.LeftSidebar.MarkdownLinkChecker.ParseInlines(MarkdownObject inline, IList`1 docLinks, HashSet`1 anchors, Block block, Boolean noLinkCheck, String docHtml, Boolean noHttpCheck) in D:\projects\DocumentationMonster\DocumentationMonster\Controls\LeftSideBar\LinkCheckSidebar\MarkdownLinkChecker.cs:line 368
   at MarkdownMonster.Controls.LeftSidebar.MarkdownLinkChecker.GetLinks(String markdown, Boolean brokenLinksOnly, Boolean noLinkCheck, String docHtml, Boolean noHttpChecks) in D:\projects\DocumentationMonster\DocumentationMonster\Controls\LeftSideBar\LinkCheckSidebar\MarkdownLinkChecker.cs:line 123
   at DocumentationMonster.DocMonster.Utilities.BrokenLinkChecker.GetBrokenTopicLinksForTopic(DocTopic topic, Boolean noHttpChecks) in D:\projects\DocumentationMonster\DocumentationMonster\DocMonster\Utilities\BrokenLinkChecker.cs:line 46
   at DocumentationMonster.DocMonster.Utilities.BrokenLinkChecker.<>c__DisplayClass8_0.<<GetBrokenTopicLinksForTopicForAllTopics>g__OnTopicHandler|0>d.MoveNext() in D:\projects\DocumentationMonster\DocumentationMonster\DocMonster\Utilities\BrokenLinkChecker.cs:line 114
System.UriFormatException
---------------------------

Dunno where that D:\projects ref is coming from?

After continuing I noticed some display anomalies while the dialog was up. Specifically the text in the topic area was not wrapping. This went away after I closed the BLC.

Clicking links in the right-hand sidebar do not reposition to the appropriate html anchor in the previewer.

Clicking this in the preview pane

results in this

I think that's as much as I should stuff into one message. I know how much you enjoy my essay length reports. 😃

Gravatar is a globally recognized avatar based on your email address. re: DM import from HB json and other feedback
  Rick Strahl
  Richard Kaye
  Jun 15, 2026 @ 08:32am

Hmm... that's odd. Can you get to the list and look at the links that do show up there? I suspect whatever failed is not actually making it into the list.

I guess there's a bad path somewhere that has invalid characters or something in that blows path parsing in .NET (I pass it to new Uri()).

I've added try/catch around that block of code to avoid that in the future which should fix the issue.

+++ Rick ---

Gravatar is a globally recognized avatar based on your email address. re: DM import from HB json and other feedback
  Richard Kaye
  Rick Strahl
  Jun 15, 2026 @ 08:34am

Sorry, which list? You mean the right hand sidebar links?

Gravatar is a globally recognized avatar based on your email address. re: DM import from HB json and other feedback
  Richard Kaye
  Rick Strahl
  Jun 15, 2026 @ 08:35am

Shall I use this dialog?

Gravatar is a globally recognized avatar based on your email address. re: DM import from HB json and other feedback
  Richard Kaye
  Rick Strahl
  Jun 15, 2026 @ 08:41am

So the markdown looks like this:

### Sys Admin Update

But the slug(?) in the sidebar looks like

#sys-admin-update
Gravatar is a globally recognized avatar based on your email address. re: DM import from HB json and other feedback
  Rick Strahl
  Richard Kaye
  Jun 15, 2026 @ 08:43am

Dude - this is why you post one issue at a time 😄

I was talking about the Link Checker list.

The bad TOC in the topic is likely due to cached content of some sort from a previous theme that was updated.

The file system links are likely links that don't resolve because they're dead links. They'll behave differently in the published site (reloading the page I believe). On the file system - which the preview loads the preview page from - reloading the 'root page' (ie. /) results in a directory list which is what you're seeing.

+++ Rick ---

Gravatar is a globally recognized avatar based on your email address. re: DM import from HB json and other feedback
  Richard Kaye
  Rick Strahl
  Jun 15, 2026 @ 09:07am

Hey, I took a guess. It's not like you told me which specific feedback you were asking about. Ambiguity is a two-way street. 😃

Assuming this is an answer to the BLC list q. I picked one at random.

Note the space in the file name. Here's the file system:

My next assumption is that spaces in file names are a bad practice and I should stop that. 😃 Having said that, the previewer does show the image just fine.

Let me know if I got that right or if you are looking for something else?

Gravatar is a globally recognized avatar based on your email address. re: DM import from HB json and other feedback
  Rick Strahl
  Richard Kaye
  Jun 16, 2026 @ 06:28am

Spaces replaced with %20 should work - I don't think that's what's breaking. The issue is the protocol handler. (ie. bogus://) is my guess or something that isn't a proper Url (which is pretty hard to do actually).

IAC, I've added the try/catch handler and that code is online on the download page. It should just ignore that link now and display as is.

+++ Rick ---

© 1996-2026