Skip to content

Commit

Permalink
srcBOOK: upgraded the template to support i18n feature by default
Browse files Browse the repository at this point in the history
Since i18n feature is often the scariest feature to implement, we
will upgrade the srcBOOK book template to support i18n feature
by default. Hence, let's do this.

This patch upgrades the template to support i18n feature by default
in srcBOOK/ directory.

Co-authored-by: Shuralyov, Jean <[email protected]>
Co-authored-by: Galyna, Cory <[email protected]>
Co-authored-by: (Holloway) Chew, Kean Ho <[email protected]>
Signed-off-by: (Holloway) Chew, Kean Ho <[email protected]>
  • Loading branch information
3 people committed Jun 10, 2024
1 parent bc125dd commit 0253c97
Show file tree
Hide file tree
Showing 6 changed files with 106 additions and 90 deletions.
106 changes: 56 additions & 50 deletions srcBOOK/.ci/build_unix-any.sh
Original file line number Diff line number Diff line change
Expand Up @@ -38,65 +38,71 @@ fi



# setup inportant variables
___name="${PROJECT_SKU}_${PROJECT_VERSION}_any-any"
___source="book.odt"
# setup important variables
Build_Book() {
#___input="$1"
#___name="$2"

# build PDF
___source="${PROJECT_PATH_ROOT}/${PROJECT_BOOK}/${1}"
___dest="${PROJECT_PATH_ROOT}/${PROJECT_PATH_TEMP}/build-${2}"
I18N_Prepare "$___source"
FS_Is_File "$___source"
if [ $? -ne 0 ]; then
I18N_Prepare_Failed
return 1
fi
FS_Remake_Directory "$___dest"


## IMPORTANT: refer the following page for modifying parameters:
## https://help.libreoffice.org/latest/en-US/text/shared/guide/pdf_params.html
I18N_Build "$___source"
$(LIBREOFFICE_Get) --headless --convert-to "pdf:writer_pdf_Export:{
\"UseLosslessCompression\": true,
\"Quality\": 100,
\"SelectPdfVersion\": 0,
\"PDFUACompliance\": false,
\"UseTaggedPDF\": true,
\"ExportFormFields\": true,
\"FormsType\": 1,
\"ExportBookmarks\": true,
\"ExportPlaceholders\": true
}" --outdir "$___dest" "$___source"
___process=$?
if [ $___process -ne 0 ]; then
I18N_Build_Failed
return 1
fi


## export output
___source="${___dest}/$(FS_Get_File "$___source")"
___source="$(FS_Extension_Replace "$___source" ".odt" ".pdf")"
___dest="${PROJECT_PATH_ROOT}/${PROJECT_PATH_BUILD}/${2}.pdf"

FS_Is_File "$___source"
if [ $? -ne 0 ]; then
I18N_Build_Failed
return 1
fi

# build PDF
___source="${PROJECT_PATH_ROOT}/${PROJECT_BOOK}/${___source}"
___dest="${PROJECT_PATH_ROOT}/${PROJECT_PATH_TEMP}/build-${___name}"
I18N_Prepare "$___source"
FS_Is_File "$___source"
if [ $? -ne 0 ]; then
I18N_Prepare_Failed
return 1
fi
I18N_Export "$___dest"
FS_Remove_Silently "$___dest"
FS_Make_Housing_Directory "$___dest"
FS_Copy_File "$___source" "$___dest"
if [ $? -ne 0 ]; then
I18N_Export_Failed
return 1
fi
}

FS_Remake_Directory "$___dest"

## IMPORTANT: refer the following page for modifying parameters:
## https://help.libreoffice.org/latest/en-US/text/shared/guide/pdf_params.html
I18N_Build "$___source"
$(LIBREOFFICE_Get) --headless --convert-to "pdf:writer_pdf_Export:{
\"UseLosslessCompression\": true,
\"Quality\": 100,
\"SelectPdfVersion\": 0,
\"PDFUACompliance\": false,
\"UseTaggedPDF\": true,
\"ExportFormFields\": true,
\"FormsType\": 1,
\"ExportBookmarks\": true,
\"ExportPlaceholders\": true
}" --outdir "$___dest" "$___source"
___process=$?
if [ $___process -ne 0 ]; then
I18N_Build_Failed
return 1
fi




## export output
___source="${___dest}/$(FS_Get_File "$___source")"
___source="$(FS_Extension_Replace "$___source" ".odt" ".pdf")"
___dest="${PROJECT_PATH_ROOT}/${PROJECT_PATH_BUILD}/${___name}.pdf"

FS_Is_File "$___source"
if [ $? -ne 0 ]; then
I18N_Build_Failed
return 1
fi

I18N_Export "$___dest"
FS_Remove_Silently "$___dest"
FS_Make_Housing_Directory "$___dest"
FS_Copy_File "$___source" "$___dest"
# build books
Build_Book "en.odt" "${PROJECT_SKU}_${PROJECT_VERSION}_en_any-any"
if [ $? -ne 0 ]; then
I18N_Export_Failed
return 1
fi

Expand Down
90 changes: 50 additions & 40 deletions srcBOOK/.ci/build_windows-any.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -38,27 +38,29 @@ if ($___process -ne 0) {


# setup important variables
$___name = "${env:PROJECT_SKU}_${env:PROJECT_VERSION}_any-any"
$___source = "book.odt"




# build PDF
$___source = "${env:PROJECT_PATH_ROOT}\${env:PROJECT_BOOK}\${___source}"
$___dest = "${env:PROJECT_PATH_ROOT}\${env:PROJECT_PATH_TEMP}\build-${___name}"
$null = I18N-Prepare "${___source}"
$___process = FS-Is-File "${___source}"
if ($___process -ne 0) {
$null = I18N-Prepare-Failed
return 1
}
$null = FS-Remake-Directory "${___dest}"

## IMPORTANT: refer the following page for modifying parameters:
## https://help.libreoffice.org/latest/en-US/text/shared/guide/pdf_params.html
$null = I18N-Build "${___source}"
$___process = OS-Exec "$(LIBREOFFICE-Get)" @"
function Build-Book {
param(
[string]$___input,
[string]$___name
)


# build PDF
$___source = "${env:PROJECT_PATH_ROOT}\${env:PROJECT_BOOK}\${___input}"
$___dest = "${env:PROJECT_PATH_ROOT}\${env:PROJECT_PATH_TEMP}\build-${___name}"
$null = I18N-Prepare "${___source}"
$___process = FS-Is-File "${___source}"
if ($___process -ne 0) {
$null = I18N-Prepare-Failed
return 1
}
$null = FS-Remake-Directory "${___dest}"


## IMPORTANT: refer the following page for modifying parameters:
## https://help.libreoffice.org/latest/en-US/text/shared/guide/pdf_params.html
$null = I18N-Build "${___source}"
$___process = OS-Exec "$(LIBREOFFICE-Get)" @"
--headless --convert-to "pdf:writer_pdf_Export:{
"UseLosslessCompression": true,
"Quality": 100,
Expand All @@ -71,31 +73,39 @@ $___process = OS-Exec "$(LIBREOFFICE-Get)" @"
"ExportPlaceholders": true,
}" --outdir "${___dest}" "${___source}"
"@
if ($___process -ne 0) {
$null = I18N-Build-Failed
return 1
if ($___process -ne 0) {
$null = I18N-Build-Failed
return 1
}


## export output
$___source = "${___dest}\$(FS-Get-File "${___source}")"
$___source = FS-Extension-Replace "${___source}" ".odt" ".pdf"
$___dest = "${env:PROJECT_PATH_ROOT}\${env:PROJECT_PATH_BUILD}\${___name}.pdf"

$___process = FS-Is-File "${___source}"
if ($___process -ne 0) {
$null = I18N-Build-Failed
return 1
}

$null = I18N-Export "${___dest}"
$null = FS-Remove-Silently "${___dest}"
$null = FS-Make-Housing-Directory "${___dest}"
$___process = FS-Copy-File "${___source}" "${___dest}"
if ($___process -ne 0) {
$null = I18N-Export-Failed
return 1
}
}




# export output
$___source = "${___dest}\$(FS-Get-File "${___source}")"
$___source = FS-Extension-Replace "${___source}" ".odt" ".pdf"
$___dest = "${env:PROJECT_PATH_ROOT}\${env:PROJECT_PATH_BUILD}\${___name}.pdf"

$___process = FS-Is-File "${___source}"
if ($___process -ne 0) {
$null = I18N-Build-Failed
return 1
}

$null = I18N-Export "${___dest}"
$null = FS-Remove-Silently "${___dest}"
$null = FS-Make-Housing-Directory "${___dest}"
$___process = FS-Copy-File "${___source}" "${___dest}"
# build books
$___process = Build-Book "en.odt" "${env:PROJECT_SKU}_${env:PROJECT_VERSION}_en_any-any"
if ($___process -ne 0) {
$null = I18N-Export-Failed
return 1
}

Expand Down
Binary file not shown.
Binary file added srcBOOK/00-01-00_Abstract/en.odt
Binary file not shown.
Binary file added srcBOOK/00-02-00_Prologue/en.odt
Binary file not shown.
Binary file added srcBOOK/en.odt
Binary file not shown.

0 comments on commit 0253c97

Please sign in to comment.