Readable Source Code Documentation
for 21 Programming Languages
Natural Docs lets you document code written in any of 21 programming languages, plus it can be easily extended for more so whatever you use, it can too. And if your project uses multiple languages, no problem! It will all be included in the same set of documentation. |
Natural Docs also speaks your other language... English! Its comments are designed to be very natural and readable so they're just as usable in the source code as they are in the generated documentation. No weird syntax or tags scattered everywhere. |
Natural Docs' generated documentation is pretty and powerful, with three independently scrolling panels, dynamic menus, search, and pop-up summaries when you hover over links. All its features work wherever you put it, be it a web server, a network share, or just opened from your hard drive. |
If you're new to Natural Docs be sure to read our Getting Started guide and we'll have you up and running in no time. If you've been using Natural Docs 1.5, check out our tour of What's New in 2.0! |
Time for another release. Let's recap what's new for the people who haven't been following the development releases. Dark Themes Natural Docs now has dark themes. Rather than just being new styles you can choose for your project, you're able to let the user choose which one they want from the browser. Just click the moon icon next to the search box: The dark theme is what you'd expect, and the black theme has less color and higher contrast. The auto themes will switch between two automatically based on whether your operating system is in light mode or dark mode, so if you have your OS switch between them on a timer you can have the documentation follow it. Here's a peek at what the dark theme looks like. You can also see it for yourself here.
Better macOS Compatibility The SQLite binaries are now signed and notarized, so you shouldn't have issues with macOS blocking them saying the developer can't be verified. They should just work without you needing to make an exception in the System Preferences. If Natural Docs has ever crashed complaining about libNaturalDocs.Engine.SQLite.Mac64.so this was why. SystemVerilog Work on full language support for SystemVerilog continues but is not ready yet, so 2.3 still has basic language support. There's an entry in Languages.txt for it, but this is just a placeholder so you'll probably still need to fill it out a bit more with your own settings to use it. However, the syntax highlighting has been improved. All of SystemVerilog's keywords will highlight correctly as well as complicated numeric literals like 8'b0011_00zz. Fully-Qualified Title Fix Probably because I primarily work in C#, which has full language support, and JavaScript, where I only use pseudo-classes, I didn't realize this wasn't working. Suppose you have this: namespace MyNamespace { You wouldn't get a prototype for MyClass because the declaration doesn't match the full title of MyNamespace::MyClass. This has been fixed, so it only requires the last segment to exist in the prototype now. Odds and Ends
.CTopic p,
|