diff options
Diffstat (limited to 'book')
| -rwxr-xr-x | book/generate_module_tex.sh | 27 | ||||
| -rwxr-xr-x | book/generate_tex_files.sh | 32 |
2 files changed, 59 insertions, 0 deletions
diff --git a/book/generate_module_tex.sh b/book/generate_module_tex.sh new file mode 100755 index 0000000..4d3c449 --- /dev/null +++ b/book/generate_module_tex.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +book_dir="." + +# Loop through all module directories (module1, module2, etc.) +for module_path in "$book_dir"/module*/; do + [ -d "$module_path" ] || continue + + module_name=$(basename "$module_path") # e.g. module2 + module_number="${module_name//[!0-9]/}" # extract number: 2 + output_file="$module_path/$module_name.tex" + + echo "Generating $output_file" + + # Start writing the .tex file + { + echo "\\chapter{Module $module_number}" + for texfile in "$module_path"/*.tex; do + tex_base=$(basename "$texfile" .tex) + + # Skip the module.tex itself + [[ "$tex_base" == "$module_name" ]] && continue + + echo "\\input{$module_name/$tex_base}" + done + } > "$output_file" +done diff --git a/book/generate_tex_files.sh b/book/generate_tex_files.sh new file mode 100755 index 0000000..87238f4 --- /dev/null +++ b/book/generate_tex_files.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +markdown_dir="../tutorials" +book_dir="." + +# Enable recursive globbing with ** +shopt -s globstar + +# Loop through markdown files in source directory +for filepath in "$markdown_dir"/module_*/**/*.md; do + [ -e "$filepath" ] || continue + + # Get module name and clean it (remove underscore) + module_base=$(basename "$(dirname "$filepath")") # module_# + module_clean="${module_base//_/}" # module# + + # Get filename without extension + filename="${filepath##*/}" # file.md + filename_no_ext="${filename%.md}" # file + + # Make sure output directory exists + output_dir="$book_dir/$module_clean" + mkdir -p "$output_dir" + + # Define output .tex file path + output_file="$output_dir/$filename_no_ext.tex" + + # Convert markdown to LaTeX + pandoc -f markdown -t latex "$filepath" -o "$output_file" + + echo "Converted $filepath -> $output_file" +done |
