# ╭──────╮ # │ self │ # ╰──────╯ # ╭──────┬──────╮ # │ self │ help │ # ╰──────┴──────╯ # output help message rwx_self_help() { rwx_log \ "rwx_… = functions" \ " a__… = aliases" \ " u__… = user" } # ╭──────┬──────╮ # │ self │ init │ # ╰──────┴──────╯ rwx_self_init() { # run interactive extras if rwx_shell_interactive; then # help rwx_log rwx_self_help fi } # ╭──────┬────────╮ # │ self │ subset │ # ╰──────┴────────╯ rwx_self_subset() { local argument file root for argument in "${@}"; do root="${RWX_ROOT_SYSTEM}/${argument}" file="${argument}.sh" if [ -d "${root}" ]; then local file for file in $(rwx_find_shell "${root}"); do echo "${argument}/${file}" done elif [ -f "${RWX_ROOT_SYSTEM}/${file}" ]; then echo "${file}" fi done } # ╭──────┬───────╮ # │ self │ write │ # ╰──────┴───────╯ rwx_self_write() { local target="${1}" if [ -n "${target}" ]; then shift local file files text text="#! /usr/bin/env sh " files="$(rwx_self_subset "${@}")" while IFS= read -r file; do text="${text} $(cat "${RWX_ROOT_SYSTEM}/${file}") " done <