build_directories.sh 1.1 KB

1234567891011121314151617181920212223242526272829303132
  1. #!/usr/bin/env bash
  2. echo "Building directory markdown files for known tonies"
  3. while read -r LANG_DIR; do
  4. NFC_FILES=()
  5. while IFS= read -r -d '' NFC_FILE; do
  6. NFC_FILES+=("${NFC_FILE}")
  7. done < <(find "${LANG_DIR}" -type f -name "*.nfc" -print0 | sort -z)
  8. FOLDER=$(basename "${LANG_DIR}")
  9. NFC_FILES_COUNT=${#NFC_FILES[@]}
  10. echo "${FOLDER} has ${NFC_FILES_COUNT}"
  11. {
  12. echo "# ${FOLDER} Tonies (${NFC_FILES_COUNT} files)"
  13. echo ""
  14. echo "*Note: this file is automatically generated, do not edit manually*"
  15. echo ""
  16. echo "| Folder | Filename |"
  17. echo "|--------|----------|"
  18. } > "${LANG_DIR}/README.md"
  19. for FILE_PATH_ABS in "${NFC_FILES[@]}"; do
  20. FILE_NAME=$(basename "$FILE_PATH_ABS")
  21. FILE_PATH_REL=${FILE_PATH_ABS#"${LANG_DIR}/"}
  22. FILE_PATH_REL_ENC=$(echo "$FILE_PATH_REL" | awk '{gsub(/ /, "%20"); print}')
  23. FOLDER_NAME_REL=$(dirname "${FILE_PATH_REL}")
  24. printf "| %s | [%s](%s) |\n" "${FOLDER_NAME_REL}" "${FILE_NAME}" "${FILE_PATH_REL_ENC}" >> "${LANG_DIR}/README.md"
  25. done
  26. done < <(find "." -maxdepth 1 -type d ! -name ".*")