diff --git a/sh/alias/gpg.sh b/sh/alias/gpg.sh deleted file mode 100644 index eb19651..0000000 --- a/sh/alias/gpg.sh +++ /dev/null @@ -1,12 +0,0 @@ -# turn gpg agent off -gak() { a__gpg_agent_kill "${@}"; } -a__gpg_agent_kill() { - gpgconf \ - --kill "gpg-agent" -} - -# bind gpg agent to current tty -gau() { a__gpg_agent_update "${@}"; } -a__gpg_agent_update() { - rwx_gpg_agent_update -} diff --git a/sh/gpg.sh b/sh/gpg.sh index b5ce07b..e1bf31c 100644 --- a/sh/gpg.sh +++ b/sh/gpg.sh @@ -1,4 +1,14 @@ +# functions to handle gpg + +# turn gpg agent off +#= gak +rwx_gpg_agent_kill() { + gpgconf \ + --kill "gpg-agent" +} + # bind gpg agent to current tty +#= gau rwx_gpg_agent_update() { gpg-connect-agent \ updatestartuptty \ diff --git a/sh/main.sh b/sh/main.sh index d26159a..72ebd54 100755 --- a/sh/main.sh +++ b/sh/main.sh @@ -172,17 +172,23 @@ RWX_REGEX_CONSTANT="[_A-Z][_0-9A-Z]*" RWX_REGEX_FUNCTION="[_A-Za-z][_0-9A-Za-z]*" RWX_REGEX_SET="=.*" RWX_REGEX_SPACES="[[:space:]]*" +RWX_REGEX_VARIABLE="[_a-z][_0-9a-z]*" -RWX_REGEX_BEGIN="^${RWX_REGEX_SPACES}" +RWX_REGEX_BEGIN="^" RWX_REGEX_OPEN="\ ${RWX_REGEX_SPACES}(${RWX_REGEX_SPACES})${RWX_REGEX_SPACES}{.*" RWX_REGEX_TARGET_CONSTANT="\ ${RWX_REGEX_BEGIN}\\(${RWX_REGEX_CONSTANT}\\)${RWX_REGEX_SET}" RWX_REGEX_TARGET_DOC="\ -${RWX_REGEX_BEGIN}# \\(.*\\)${RWX_REGEX_SPACES}\$" +${RWX_REGEX_BEGIN}${RWX_REGEX_SPACES}# \\(.*\\)${RWX_REGEX_SPACES}\$" RWX_REGEX_TARGET_FUNCTION="\ ${RWX_REGEX_BEGIN}\\(${RWX_REGEX_FUNCTION}\\)${RWX_REGEX_OPEN}" +RWX_REGEX_TARGET_VARIABLE="\ +${RWX_REGEX_BEGIN}\\(${RWX_REGEX_VARIABLE}\\)${RWX_REGEX_SET}" + +# cache for code variables +_rwx_code_variables="" rwx_parse_code() { # parse aliases @@ -197,6 +203,8 @@ EOF RWX_CONSTANTS="$(rwx_parse_constants)" # parse functions RWX_FUNCTIONS="$(rwx_parse_functions)" + # parse variables + _rwx_code_variables="$(rwx_parse_variables)" } rwx_parse_aliases() { printf "%s" "${_rwx_code}" | @@ -205,18 +213,23 @@ rwx_parse_aliases() { --file "${RWX_AWK}" } rwx_parse_constants() { - printf "%s\n" "${_rwx_code}" | + printf "%s" "${_rwx_code}" | sed --silent "s|${RWX_REGEX_TARGET_CONSTANT}|\\1|p" } rwx_parse_functions() { - printf "%s\n" "${_rwx_code}" | + printf "%s" "${_rwx_code}" | sed --silent "s|${RWX_REGEX_TARGET_FUNCTION}|\\1|p" } +rwx_parse_variables() { + printf "%s" "${_rwx_code}" | + sed --silent "s|${RWX_REGEX_TARGET_VARIABLE}|\\1|p" +} # ╭──────┬──────╮ # │ main │ test │ # ╰──────┴──────╯ +#= rt rwx_test() { local item # TODO CODE diff --git a/sh/self.sh b/sh/self.sh index 901c588..e2c30f7 100644 --- a/sh/self.sh +++ b/sh/self.sh @@ -1,7 +1,38 @@ # self # module +# show the cached code +#= rc +rwx_code() { + echo "${_rwx_code}" +} + +# show the cached aliases +#= rca +rwx_code_aliases() { + echo "${RWX_ALIASES}" +} + +# show the cached constants +#= rcc +rwx_code_constants() { + echo "${RWX_CONSTANTS}" +} + +# show the cached functions +#= rcf +rwx_code_functions() { + echo "${RWX_FUNCTIONS}" +} + +# show the cached variables +#= rcv +rwx_code_variables() { + echo "${_rwx_code_variables}" +} + # meta doc +#= rd rwx_doc() { local name="${1}" [ -n "${name}" ] || return