# Generate a markdown file with all the help info. # Outputs to ~/.doc/bash.md function doc_bash() { local IFS=$'\n' local file="${HOME}/.doc/bash.md" # Print title. echo "# Bash reference file." > "${file}" echo >> "${file}" # Print help info. echo "To get help with usage info run:" >> "${file}" echo >> "${file}" echo '```text' >> "${file}" echo '$ help ' >> "${file}" echo >> "${file}" echo "or" >> "${file}" echo >> "${file}" echo '$ h ' >> "${file}" echo '```' >> "${file}" echo >> "${file}" # Print table title. echo "Command|Description" >> "${file}" echo "---|---" >> "${file}" # Fill with data. for fun in $(find_functions); do # Skip private functions. [[ "${fun}" =~ ^_.* ]] && continue # Parse help info. local desc="$(help ${fun} | grep -v Usage\: | tr '\n' ' ')" local usage="$(help ${fun} | grep Usage\: | sed -e s\/Usage\:\ \/\/)" # Use function name if no usage info available. [[ "${usage}" = "" ]] && usage="${fun}" # Write to file. [[ "${desc}" != "" ]] && echo "${usage}|${desc}" >> "${file}" done }