Compare commits

...

3 commits

Author SHA1 Message Date
d80b61f490
fix
All checks were successful
/ job (push) Successful in 3m3s
2025-07-08 20:43:24 +02:00
faeda4feb9
awk/eval 2025-07-08 20:37:33 +02:00
23c0c18797
awk/↕ 2025-07-08 17:01:10 +02:00
2 changed files with 9 additions and 21 deletions

View file

@ -5,6 +5,10 @@ function append(line) {
doc = doc line
}
function eval(alias, target) {
print alias "() { " target " \"${@}\"; }"
}
function output(name, type) {
print "↙ " type
print name
@ -20,13 +24,14 @@ function reset() {
BEGIN {
RE_ANY = "(.*)"
RE_BEGIN = "^"
RE_CONST = "([_A-Z][_0-9A-Z]*)"
RE_SET = "=.*"
RE_SPACE = "[[:space:]]"
RE_SPACES = RE_SPACE "*"
RE_VAR = "([_a-z][_0-9a-z]*)"
RE_BEGIN = "^"
RE_SPACES = RE_SPACE "*"
RE_END = RE_SPACES "$"
RE_FUNC = RE_SPACES "\\(" RE_SPACES "\\)" RE_SPACES "{"
@ -79,7 +84,7 @@ BEGIN {
} else if (match($0, RE_FUNCTION, m)) {
split(doc, array, "\n")
for (item in array) {
print array[item] " " m[1]
eval(array[item], m[1])
}
reset()
} else {

View file

@ -103,21 +103,6 @@ rwx_code_aliases() {
echo "${_rwx_code_aliases}"
}
# find alias function
rwx_code_alias_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_aliases_functions}
EOF
}
# find command function
rwx_code_command_function() {
local target="${1}"
@ -204,9 +189,7 @@ rwx_code_load() {
# parse aliases functions
_rwx_code_aliases_functions="$(rwx_code_parse "aliases functions")"
while IFS= read -r line; do
text="$(echo "${line}" | sed "s| |() { |")"
text="${text} \"\${@}\"; }"
eval "${text}"
eval "${line}"
done <<EOF
${_rwx_code_aliases_functions}
EOF