diff --git a/scripts/pdf/build-pdf.sh b/scripts/pdf/build-pdf.sh index 34d6a151c..621145d74 100755 --- a/scripts/pdf/build-pdf.sh +++ b/scripts/pdf/build-pdf.sh @@ -21,22 +21,24 @@ function process_page { } function main { - type="$1" - case $type in - "all") - pageDirs=(../../pages*) - ;; - *) - changedFiles=$(git diff-tree --no-commit-id --name-only -r "$(git rev-parse HEAD)") - changedPageDirs=$(echo "$changedFiles" | awk -F/ '/^(pages[^\/]+|pages)\//{print $1}' | sort -u) - - if [ -z "$changedPageDirs" ]; then - pageDirs=() - else - mapfile -t pageDirs <<< "$changedPageDirs" - fi - ;; - esac + languageId="$1" + if [ -z "$languageId" ]; then + changedFiles=$(git diff-tree --no-commit-id --name-only -r "$(git rev-parse HEAD)") + changedPageDirs=$(echo "$changedFiles" | awk -F/ '/^(pages[^\/]+|pages)\//{print $1}' | sort -u) + if [ -z "$changedPageDirs" ]; then + pageDirs=() + else + mapfile -t pageDirs <<< "$changedPageDirs" + fi + else + case $languageId in + "all") + pageDirs=(../../pages*) + ;; + *) + pageDirs=("pages.${languageId}") + esac + fi for pageDir in "${pageDirs[@]}"; do process_page "../../${pageDir}"