| #!/bin/bash |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| function texinfo_updateStructureSection { |
| |
| |
| |
| |
| cli_printMessage "`gettext "Updating section menus, nodes and cross references"`" --as-banner-line |
| |
| local PATTERN='' |
| local MANUAL_ENTRIES='' |
| local ACTIONNAM_SECMENU='' |
| local ACTIONNAM_CROSREF='' |
| |
| |
| |
| if [[ "$1" != '' ]];then |
| PATTERN="$1" |
| else |
| PATTERN="${MANUAL_ENTRY}" |
| fi |
| |
| |
| |
| |
| |
| if [[ $PATTERN =~ "${MANUAL_NAME}\.${MANUAL_EXTENSION}$" ]] \ |
| || [[ $PATTERN =~ "chapter\.${MANUAL_EXTENSION}$" ]];then |
| PATTERN="$(dirname ${MANUAL_ENTRY})/.+\.${MANUAL_EXTENSION}" |
| fi |
| |
| |
| |
| case "$2" in |
| |
| --delete ) |
| |
| |
| |
| ACTIONNAM_SECMENU='updateSectionMenu --delete-entry' |
| |
| |
| |
| ACTIONNAM_CROSREF='deleteCrossReferences' |
| ;; |
| |
| --update | * ) |
| |
| |
| |
| ACTIONNAM_SECMENU='updateSectionMenu --add-entry' |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| ACTIONNAM_CROSREF='restoreCrossReferences' |
| ;; |
| |
| esac |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| MANUAL_ENTRIES=$(cli_getFilesList ${MANUAL_BASEDIR_L10N} \ |
| --pattern="${PATTERN}" | egrep -v "/(${MANUAL_NAME}|chapter)") |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| if [[ $MANUAL_ENTRIES == '' ]] && [[ $PATTERN =~ '^/[[:alnum:]./_-]+$' ]];then |
| MANUAL_ENTRIES=${PATTERN} |
| fi |
| |
| |
| |
| |
| if [[ $MANUAL_ENTRIES == '' ]];then |
| cli_printMessage "`gettext "No section entry found to process."`" --as-error-line |
| fi |
| |
| |
| |
| |
| |
| for MANUAL_ENTRY in ${MANUAL_ENTRIES};do |
| cli_printMessage "${MANUAL_ENTRY}" --as-response-line |
| texinfo_${ACTIONNAM_SECMENU} |
| texinfo_updateSectionNodes |
| texinfo_makeSeeAlso "${MANUAL_ENTRY}" |
| texinfo_${ACTIONNAM_CROSREF} "${MANUAL_ENTRY}" |
| done |
| |
| } |