π§ TroubleshootingΒΆ
Documentation for π§ Troubleshooting.
Common issues and solutions when using markdown includes.
β Issue: File Not Found ErrorΒΆ
π΄ Error MessageΒΆ
IntroligoError: Markdown file not found: /path/to/file.md
β SolutionΒΆ
Check that the path is relative to the configuration file:
# If config is at: docs/composition/introligo_config.yaml
# And markdown is at: docs/composition/markdown/guide.md
# β
Correct
markdown_includes: "markdown/guide.md"
# β Wrong - absolute path
markdown_includes: "/docs/composition/markdown/guide.md"
# β Wrong - relative to project root
markdown_includes: "docs/composition/markdown/guide.md"
π‘ Quick FixΒΆ
Use ls from the directory containing your config file to verify the path:
cd docs/composition
ls markdown/guide.md # Should show the file
β
β Issue: RST Syntax Errors in OutputΒΆ
π΄ Error MessageΒΆ
WARNING: Unexpected indentation
ERROR: Unexpected indentation
β SolutionΒΆ
This usually happens with complex markdown. The built-in converter handles: - Headers (H1-H4) - Code blocks with triple backticks - Regular paragraphs - Lists
For complex markdown, consider: 1. Simplifying the markdown structure 2. Using RST-compatible markdown syntax 3. Breaking into smaller files
β
β Issue: Code Blocks Not RenderingΒΆ
π΄ ProblemΒΆ
Code blocks appear as plain text instead of highlighted code.
β SolutionΒΆ
Ensure youβre using triple backticks with language specification:
# β
Correct
- def hello():
print(βHello!β)
# β Wrong - no language
- def hello():
print(βHello!β)
# β Wrong - indented code (not supported)
def hello():
print("Hello!")
β
β Issue: Headers Not ConvertingΒΆ
π΄ ProblemΒΆ
Headers appear as regular text with # symbols.
β SolutionΒΆ
Make sure thereβs a space after the #:
# β
Correct
## β
Also correct
### β
Works great
#β Wrong - no space
##β Wrong - no space
β
β Issue: Emojis Not DisplayingΒΆ
π΄ ProblemΒΆ
Emojis appear as squares or question marks.
β SolutionΒΆ
Emojis are supported! Make sure: 1. Your markdown file is saved with UTF-8 encoding 2. Your terminal/editor supports UTF-8 3. The Sphinx theme supports emojis (most modern themes do)
Example of working emojis: π π π β¨ π§ π‘
β
β Issue: Empty OutputΒΆ
π΄ ProblemΒΆ
The markdown content doesnβt appear in generated documentation.
β SolutionΒΆ
Check these common issues:
Verify the field name:
# β
Correct
markdown_includes: "file.md"
# β Wrong field name
markdown_include: "file.md" # Missing 's'
Check file has content:
cat docs/composition/markdown/file.md
# Should show content, not empty
Verify itβs in the right module:
modules:
my_module: # Make sure this is the right module
markdown_includes: "file.md"
β
β Issue: Path Resolution with !includeΒΆ
π΄ ProblemΒΆ
Using !include with markdown includes causes path issues.
β SolutionΒΆ
Paths in markdown includes are always relative to the main config file, not the included file:
# Main config: docs/composition/introligo_config.yaml
modules:
my_module: !include ../../src/my_module_doc.yaml
# In src/my_module_doc.yaml:
title: "My Module"
# β
Path relative to main config file
markdown_includes: "docs/markdown/guide.md"
# β Not relative to my_module_doc.yaml location
markdown_includes: "../docs/markdown/guide.md"
β
π Debugging TipsΒΆ
1οΈβ£ Enable Verbose ModeΒΆ
python introligo.py config.yaml -o docs -v
This shows which markdown files are being included.
2οΈβ£ Use Dry RunΒΆ
python introligo.py config.yaml -o docs --dry-run
Preview what would be generated without creating files.
3οΈβ£ Check Generated RSTΒΆ
Look at the generated .rst file to see the converted content:
cat docs/generated/my_module.rst
4οΈβ£ Test with Simple Markdown FirstΒΆ
Create a minimal test file:
# Test
This is a test.
## Works?
Yes it does! π
β
π Getting HelpΒΆ
If you encounter issues not covered here:
Check the logs - Run with -v for verbose output
Review the config - Ensure YAML syntax is correct
Test incrementally - Add one markdown file at a time
Check file permissions - Ensure files are readable
β¨ Pro TipsΒΆ
π‘ Start simple and add complexity gradually
π‘ Keep markdown files focused and modular
π‘ Use consistent formatting in your markdown
π‘ Test after each change to catch issues early
π‘ Use version control to track working configurations
Remember: The markdown converter is designed for documentation use cases. Keep your markdown clean and simple for best results! π