<story><title>Markdeep</title><url>https://casual-effects.com/markdeep/</url></story><parent_chain></parent_chain><comment><author>wernsey</author><text>If you&amp;#x27;ll indulge me for a moment, I have a story to tell:&lt;p&gt;Many years ago, I had this idea of creating a documentation tool for my hobby projects that was based on Awk.&lt;p&gt;I liked Doxygen, but it was a bit heavy duty for a small C library with only a handful of functions. You could almost guarantee that Awk would be available on the system where you might be compiling the project, so you could just bundle the awk script with your sources, add two lines to your makefile and have HTML documentation ready to go.&lt;p&gt;Now I had never heard of Markdown at this time; It was before StackOverflow or GitHub was a thing (perhaps they existed, but I haven&amp;#x27;t used them yet). Therefore my syntax was a crude markup scheme  that was difficult to explain and didn&amp;#x27;t always work correctly.&lt;p&gt;Skip forward a couple of years and I had the bright idea to rewrite the script to rather use a Markdown syntax. This ended up being one of those hobby projects that you never really finish, and it grew organically to include all sorts of Markdown features. The result of that effort is now on GitHub [1].&lt;p&gt;Where does Markdeep fit into all of this? Sometimes when I stumble upon a project on GitHub that I find interesting, I click on the author&amp;#x27;s name to see what other repositories they have that looks interesting. One day I browsed GitHub like that and stumbled upon user r-lyeh&amp;#x27;s `stddoc.c` file [2].&lt;p&gt;It is a C program that simply extracts the comments from your source file and appends the Markdeep tags to the end. If you save the result to a HTML file, you achieve the same result as my script, except the implementation is much much simpler.&lt;p&gt;I nearly fell off my chair when I realised that all the effort I put into my own script was basically made useless(*) by Markdeep. Instead of parsing the markdown, I could rather have had Markdeep do all the heavy lifting, and it comes with a bunch of very nice features that I doubt I&amp;#x27;d ever be able to implement in my own script.&lt;p&gt;[1]: &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;wernsey&amp;#x2F;d.awk&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;wernsey&amp;#x2F;d.awk&lt;/a&gt;
[2]: &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;r-lyeh&amp;#x2F;stddoc.c&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;r-lyeh&amp;#x2F;stddoc.c&lt;/a&gt;</text></comment>
<story><title>Markdeep</title><url>https://casual-effects.com/markdeep/</url></story><parent_chain></parent_chain><comment><author>asicsp</author><text>Past discussions:&lt;p&gt;&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;news.ycombinator.com&amp;#x2F;item?id=22348190&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;news.ycombinator.com&amp;#x2F;item?id=22348190&lt;/a&gt; &lt;i&gt;(360 points | 2020 | 108 comments)&lt;/i&gt;&lt;p&gt;&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;news.ycombinator.com&amp;#x2F;item?id=10402121&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;news.ycombinator.com&amp;#x2F;item?id=10402121&lt;/a&gt; &lt;i&gt;(256 points | 2015 | 78 comments)&lt;/i&gt;</text></comment>