<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Pachadata Blog on Rudi Bruchez</title><link>https://www.pachadata.com/en/blog/</link><description>Recent content in Pachadata Blog on Rudi Bruchez</description><generator>Hugo</generator><language>en</language><atom:link href="https://www.pachadata.com/en/blog/index.xml" rel="self" type="application/rss+xml"/><item><title>Writing technical books in AsciiDoc</title><link>https://www.pachadata.com/en/blog/2025/11/30/writing-technical-books-in-asciidoc/</link><pubDate>Sun, 30 Nov 2025 00:00:00 +0000</pubDate><guid>https://www.pachadata.com/en/blog/2025/11/30/writing-technical-books-in-asciidoc/</guid><description>&lt;p&gt;Writing technical books in &lt;strong&gt;AsciiDoc&lt;/strong&gt; is an excellent choice thanks to its simplicity, power, and integration with modern documentation and publishing tools. Here are the best practices and tools to streamline your writing and publishing process.&lt;/p&gt;&#10;&lt;h2 id="project-structure-and-organization"&gt;Project Structure and Organization&lt;/h2&gt;&#10;&lt;h3 id="recommended-tree"&gt;Recommended tree&lt;/h3&gt;&#10;&lt;p&gt;Organize your project clearly and modularly. Example:&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt;my-book/&#10;├── manuscript/&#10;│ ├── preface.adoc&#10;│ ├── chapter1.adoc&#10;│ ├── chapter2.adoc&#10;│ └── ...&#10;├── images/&#10;│ ├── diagram1.png&#10;│ └── ...&#10;├── includes/&#10;│ ├── glossary.adoc&#10;│ └── appendices.adoc&#10;├── styles/&#10;│ └── theme.yml&#10;├── build.sh&#10;└── book.adoc&#10;&lt;/code&gt;&lt;/pre&gt;&lt;ul&gt;&#10;&lt;li&gt;&lt;strong&gt;Modular files&lt;/strong&gt;: One file per chapter or major section to ease maintenance.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;Includes&lt;/strong&gt;: Use the &lt;code&gt;include::file.adoc[]&lt;/code&gt; directive to assemble the book from multiple files.&lt;/li&gt;&#10;&lt;li&gt;&lt;strong&gt;External resources&lt;/strong&gt;: Place images, source code, and appendices in dedicated folders.&lt;/li&gt;&#10;&lt;/ul&gt;&#10;&lt;h2 id="asciidoc-best-practices"&gt;AsciiDoc Best Practices&lt;/h2&gt;&#10;&lt;h3 id="syntax-and-style"&gt;Syntax and style&lt;/h3&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;&lt;strong&gt;Hierarchical headings&lt;/strong&gt;: Use &lt;code&gt;=&lt;/code&gt;, &lt;code&gt;==&lt;/code&gt;, &lt;code&gt;===&lt;/code&gt;, etc. to structure content.&lt;/p&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;&lt;strong&gt;Code blocks&lt;/strong&gt;: Use backticks with the language for syntax highlighting:&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code class="language-asciidoc" data-lang="asciidoc"&gt;[source,python]&#10;-----&#10;def hello():&#10; print(&amp;#34;Hello, AsciiDoc!&amp;#34;)&#10;-----&#10;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;&lt;strong&gt;Notes and warnings&lt;/strong&gt;:&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code class="language-asciidoc" data-lang="asciidoc"&gt;NOTE: Important information.&#10;&#10;WARNING: Pay attention to this step!&#10;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;&lt;strong&gt;Lists and tables&lt;/strong&gt;: Prefer CSV-style tables for complex data.&lt;/p&gt;&#10;&lt;/li&gt;&#10;&lt;li&gt;&#10;&lt;p&gt;&lt;strong&gt;Variables&lt;/strong&gt;: Define variables for versions, software names, etc.:&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code class="language-asciidoc" data-lang="asciidoc"&gt;:version: 1.0&#10;:software: Python&#10;&#10;This book covers {software} version {version}.&#10;&lt;/code&gt;&lt;/pre&gt;&lt;/li&gt;&#10;&lt;/ul&gt;</description></item></channel></rss>