Compare commits
No commits in common. "967e17e224b43f322ae83152a94d7348d81f75e6" and "a3ea2e6ef06b088c6dc75d234de1eb55d9e12885" have entirely different histories.
967e17e224
...
a3ea2e6ef0
3 changed files with 6 additions and 73 deletions
25
sh/code.awk
25
sh/code.awk
|
@ -31,7 +31,6 @@ BEGIN {
|
||||||
RE_FUNC = RE_SPACES "\\(" RE_SPACES "\\)" RE_SPACES "{"
|
RE_FUNC = RE_SPACES "\\(" RE_SPACES "\\)" RE_SPACES "{"
|
||||||
|
|
||||||
RE_ALIAS = RE_BEGIN "#=" RE_SPACES RE_VAR RE_END
|
RE_ALIAS = RE_BEGIN "#=" RE_SPACES RE_VAR RE_END
|
||||||
RE_BINARY = RE_BEGIN "#\\|" RE_SPACES RE_VAR RE_END
|
|
||||||
RE_CLOSE = RE_BEGIN "}" RE_SPACES RE_END
|
RE_CLOSE = RE_BEGIN "}" RE_SPACES RE_END
|
||||||
RE_COMMAND = RE_BEGIN "#/" RE_SPACES RE_VAR RE_END
|
RE_COMMAND = RE_BEGIN "#/" RE_SPACES RE_VAR RE_END
|
||||||
RE_CONSTANT = RE_BEGIN RE_CONST RE_SET RE_END
|
RE_CONSTANT = RE_BEGIN RE_CONST RE_SET RE_END
|
||||||
|
@ -53,10 +52,6 @@ BEGIN {
|
||||||
if (match($0, RE_ALIAS, m)) {
|
if (match($0, RE_ALIAS, m)) {
|
||||||
print m[1]
|
print m[1]
|
||||||
}
|
}
|
||||||
} else if (action == "binaries") {
|
|
||||||
if (match($0, RE_BINARY, m)) {
|
|
||||||
binaries[m[1]] = ""
|
|
||||||
}
|
|
||||||
} else if (action == "commands") {
|
} else if (action == "commands") {
|
||||||
if (match($0, RE_COMMAND, m)) {
|
if (match($0, RE_COMMAND, m)) {
|
||||||
print m[1]
|
print m[1]
|
||||||
|
@ -85,18 +80,6 @@ BEGIN {
|
||||||
} else {
|
} else {
|
||||||
reset()
|
reset()
|
||||||
}
|
}
|
||||||
} else if (action == "commands functions") {
|
|
||||||
if (match($0, RE_COMMAND, m)) {
|
|
||||||
append(m[1])
|
|
||||||
} else if (match($0, RE_FUNCTION, m)) {
|
|
||||||
n = split(doc, array, "\n")
|
|
||||||
for (i = 1; i<= n; i++) {
|
|
||||||
print array[i] " " m[1]
|
|
||||||
}
|
|
||||||
reset()
|
|
||||||
} else {
|
|
||||||
reset()
|
|
||||||
}
|
|
||||||
} else if (action == "doc") {
|
} else if (action == "doc") {
|
||||||
# doc
|
# doc
|
||||||
if (match($0, RE_SHEBANG, m)) {
|
if (match($0, RE_SHEBANG, m)) {
|
||||||
|
@ -160,11 +143,3 @@ BEGIN {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
END {
|
|
||||||
if (action == "binaries") {
|
|
||||||
for (binary in binaries) {
|
|
||||||
print binary
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
51
sh/code.sh
51
sh/code.sh
|
@ -18,12 +18,8 @@ _rwx_code_awk="$(cat "${RWX_ROOT_SYSTEM}/code.awk")"
|
||||||
_rwx_code_aliases=""
|
_rwx_code_aliases=""
|
||||||
# cache for code aliases functions
|
# cache for code aliases functions
|
||||||
_rwx_code_aliases_functions=""
|
_rwx_code_aliases_functions=""
|
||||||
# cache for code binaries
|
|
||||||
_rwx_code_binaries=""
|
|
||||||
# cache for code commands
|
# cache for code commands
|
||||||
_rwx_code_commands=""
|
_rwx_code_commands=""
|
||||||
# cache for code commands functions
|
|
||||||
_rwx_code_commands_functions=""
|
|
||||||
# cache for code constants
|
# cache for code constants
|
||||||
_rwx_code_constants=""
|
_rwx_code_constants=""
|
||||||
# cache for code functions
|
# cache for code functions
|
||||||
|
@ -103,7 +99,7 @@ rwx_code_aliases() {
|
||||||
echo "${_rwx_code_aliases}"
|
echo "${_rwx_code_aliases}"
|
||||||
}
|
}
|
||||||
|
|
||||||
# find alias function
|
# find aliased function
|
||||||
rwx_code_alias_function() {
|
rwx_code_alias_function() {
|
||||||
local target="${1}"
|
local target="${1}"
|
||||||
local line name
|
local line name
|
||||||
|
@ -118,43 +114,17 @@ ${_rwx_code_aliases_functions}
|
||||||
EOF
|
EOF
|
||||||
}
|
}
|
||||||
|
|
||||||
# find command function
|
|
||||||
rwx_code_command_function() {
|
|
||||||
local target="${1}"
|
|
||||||
local line name
|
|
||||||
while IFS= read -r line; do
|
|
||||||
name="$(echo "${line}" | awk "{print \$1}")"
|
|
||||||
if [ "${name}" = "${target}" ]; then
|
|
||||||
echo "${line}" |
|
|
||||||
awk "{print \$2}"
|
|
||||||
fi
|
|
||||||
done <<EOF
|
|
||||||
${_rwx_code_commands_functions}
|
|
||||||
EOF
|
|
||||||
}
|
|
||||||
|
|
||||||
# show the cached aliases and functions
|
# show the cached aliases and functions
|
||||||
#= rcaf
|
#= rcaf
|
||||||
rwx_code_aliases_functions() {
|
rwx_code_aliases_functions() {
|
||||||
echo "${_rwx_code_aliases_functions}"
|
echo "${_rwx_code_aliases_functions}"
|
||||||
}
|
}
|
||||||
|
|
||||||
# show the cached binaries
|
|
||||||
rwx_code_binaries() {
|
|
||||||
echo "${_rwx_code_binaries}"
|
|
||||||
}
|
|
||||||
|
|
||||||
# show the cached commands
|
# show the cached commands
|
||||||
rwx_code_commands() {
|
rwx_code_commands() {
|
||||||
echo "${_rwx_code_commands}"
|
echo "${_rwx_code_commands}"
|
||||||
}
|
}
|
||||||
|
|
||||||
# show the cached commands and functions
|
|
||||||
#= rccf
|
|
||||||
rwx_code_commands_functions() {
|
|
||||||
echo "${_rwx_code_commands_functions}"
|
|
||||||
}
|
|
||||||
|
|
||||||
# show the cached constants
|
# show the cached constants
|
||||||
#= rcc
|
#= rcc
|
||||||
rwx_code_constants() {
|
rwx_code_constants() {
|
||||||
|
@ -200,8 +170,10 @@ rwx_code_doc() {
|
||||||
}
|
}
|
||||||
|
|
||||||
rwx_code_load() {
|
rwx_code_load() {
|
||||||
local line text
|
# parse aliases
|
||||||
|
_rwx_code_aliases="$(rwx_code_parse "aliases")"
|
||||||
# parse aliases functions
|
# parse aliases functions
|
||||||
|
local line text
|
||||||
_rwx_code_aliases_functions="$(rwx_code_parse "aliases functions")"
|
_rwx_code_aliases_functions="$(rwx_code_parse "aliases functions")"
|
||||||
while IFS= read -r line; do
|
while IFS= read -r line; do
|
||||||
text="$(echo "${line}" | sed "s| |() { |")"
|
text="$(echo "${line}" | sed "s| |() { |")"
|
||||||
|
@ -210,19 +182,6 @@ rwx_code_load() {
|
||||||
done <<EOF
|
done <<EOF
|
||||||
${_rwx_code_aliases_functions}
|
${_rwx_code_aliases_functions}
|
||||||
EOF
|
EOF
|
||||||
# parse commands functions
|
|
||||||
_rwx_code_commands_functions="$(rwx_code_parse "commands functions")"
|
|
||||||
while IFS= read -r line; do
|
|
||||||
text="$(echo "${line}" | sed "s| |() { |")"
|
|
||||||
text="${text} \"\${@}\"; }"
|
|
||||||
eval "${text}"
|
|
||||||
done <<EOF
|
|
||||||
${_rwx_code_commands_functions}
|
|
||||||
EOF
|
|
||||||
# parse aliases
|
|
||||||
_rwx_code_aliases="$(rwx_code_parse "aliases")"
|
|
||||||
# parse binaries
|
|
||||||
_rwx_code_binaries="$(rwx_code_parse "binaries")"
|
|
||||||
# parse commands
|
# parse commands
|
||||||
_rwx_code_commands="$(rwx_code_parse "commands")"
|
_rwx_code_commands="$(rwx_code_parse "commands")"
|
||||||
# parse constants
|
# parse constants
|
||||||
|
@ -263,7 +222,7 @@ rwx_code_main() {
|
||||||
if [ -n "${command}" ]; then
|
if [ -n "${command}" ]; then
|
||||||
local function
|
local function
|
||||||
# find the matching function
|
# find the matching function
|
||||||
function="$(rwx_code_command_function "${command}")"
|
function="$(rwx_code_alias_function "${command}")"
|
||||||
if [ -n "${function}" ]; then
|
if [ -n "${function}" ]; then
|
||||||
"${function}" "${@}"
|
"${function}" "${@}"
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -22,8 +22,7 @@ rwx_test_code() {
|
||||||
"functions" \
|
"functions" \
|
||||||
"aliases" \
|
"aliases" \
|
||||||
"aliases_functions" \
|
"aliases_functions" \
|
||||||
"commands" \
|
"commands"
|
||||||
"commands_functions"
|
|
||||||
rwx_code
|
rwx_code
|
||||||
for items in "${@}"; do
|
for items in "${@}"; do
|
||||||
echo
|
echo
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue