From 42ebc151c349dde9f8e209fc2b316171deda9ee0 Mon Sep 17 00:00:00 2001 From: Marc Beninca Date: Sat, 2 Aug 2025 02:57:21 +0200 Subject: [PATCH] unindent --- sh/core/code.awk | 308 +++++++++++++++++++++++++---------------------- 1 file changed, 163 insertions(+), 145 deletions(-) diff --git a/sh/core/code.awk b/sh/core/code.awk index b57fd05..475822b 100644 --- a/sh/core/code.awk +++ b/sh/core/code.awk @@ -1,5 +1,7 @@ # code +# functions + function alias_eval(alias, name, type) { text = alias "() { " if (type == "function") { @@ -62,176 +64,192 @@ function trim(string) { return text } +# begin + BEGIN { - RE_ANY = "(.*)" - RE_BEGIN = "^" - RE_CONST = "([_A-Z][_0-9A-Z]*)" - RE_SET = "=.*" - RE_SPACE = "[[:space:]]" - RE_TSK = "(FIXME|TODO)" - RE_VAR = "([_a-z][_0-9a-z]*)" - RE_SPACES = RE_SPACE "*" +RE_ANY = "(.*)" +RE_BEGIN = "^" +RE_CONST = "([_A-Z][_0-9A-Z]*)" +RE_SET = "=.*" +RE_SPACE = "[[:space:]]" +RE_TSK = "(FIXME|TODO)" +RE_VAR = "([_a-z][_0-9a-z]*)" - RE_END = RE_SPACES "$" - RE_FUNC = RE_SPACES "\\(" RE_SPACES "\\)" RE_SPACES "{" +RE_SPACES = RE_SPACE "*" - 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["command"] = RE_BEGIN "#/" RE_SPACES RE_VAR RE_END - RE_COMMENT = RE_BEGIN "#" RE_ANY RE_END - re["constant"] = RE_BEGIN RE_CONST RE_SET RE_END - RE_DOC = RE_BEGIN RE_SPACES "#" RE_SPACE RE_ANY RE_END - re["function"] = RE_BEGIN RE_VAR RE_FUNC RE_END - RE_MODULE = RE_BEGIN "#\\." RE_SPACES RE_ANY RE_END - RE_SHEBANG = RE_BEGIN "#!" RE_SPACES RE_ANY RE_END - RE_TASK = RE_BEGIN RE_SPACES "#" RE_SPACES RE_TSK RE_ANY RE_END - re["variable"] = RE_BEGIN RE_VAR RE_SET RE_END +RE_END = RE_SPACES "$" +RE_FUNC = RE_SPACES "\\(" RE_SPACES "\\)" RE_SPACES "{" + +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["command"] = RE_BEGIN "#/" RE_SPACES RE_VAR RE_END +RE_COMMENT = RE_BEGIN "#" RE_ANY RE_END +re["constant"] = RE_BEGIN RE_CONST RE_SET RE_END +RE_DOC = RE_BEGIN RE_SPACES "#" RE_SPACE RE_ANY RE_END +re["function"] = RE_BEGIN RE_VAR RE_FUNC RE_END +RE_MODULE = RE_BEGIN "#\\." RE_SPACES RE_ANY RE_END +RE_SHEBANG = RE_BEGIN "#!" RE_SPACES RE_ANY RE_END +RE_TASK = RE_BEGIN RE_SPACES "#" RE_SPACES RE_TSK RE_ANY RE_END +re["variable"] = RE_BEGIN RE_VAR RE_SET RE_END + +f = "" +match_alias = 0 +match_command = 0 +match_module = 0 +match_task = 0 +reset() - f = "" - match_alias = 0 - match_command = 0 - match_module = 0 - match_task = 0 - reset() } +# main + { - if (action == "filter") { - if (match($0, re[target])) { - unique[extract($0, target)] = "" + +if (action == "filter") { + if (match($0, re[target])) { + unique[extract($0, target)] = "" + } + +} else if (action == "tasks") { + line++ + if (match($0, RE_MODULE)) { + line = 1 + if (output_tasks) { + print "" + print output_module + print output_tasks + output_tasks = "" } - } else if (action == "tasks") { - line++ - if (match($0, RE_MODULE)) { - line = 1 - if (output_tasks) { - print "" - print output_module - print output_tasks - output_tasks = "" - } - doc = "" - match_task = 0 - output_module = ". " extract($0, "module") - } else if (match($0, RE_TASK)) { - if (target) { - if (target == extract($0, "task")) { - match_task = 1 - } - } else { + doc = "" + match_task = 0 + output_module = ". " extract($0, "module") + } else if (match($0, RE_TASK)) { + if (target) { + if (target == extract($0, "task")) { match_task = 1 } - append(line ": " $0) - } else if (match($0, RE_COMMENT)) { - append(line ": " $0) } else { - if (match_task) { - output_tasks = output_tasks "\n" doc - } - doc = "" - match_task = 0 + match_task = 1 } - } else if (action == "eval") { - if (match($0, re[target])) { - append(extract($0, target)) - } else if (match($0, re["function"])) { - split(doc, array, "\n") - for (item in array) { - alias_eval(array[item], extract($0, "function"), "function") + append(line ": " $0) + } else if (match($0, RE_COMMENT)) { + append(line ": " $0) + } else { + if (match_task) { + output_tasks = output_tasks "\n" doc + } + doc = "" + match_task = 0 + } + +} else if (action == "eval") { + if (match($0, re[target])) { + append(extract($0, target)) + } else if (match($0, re["function"])) { + split(doc, array, "\n") + for (item in array) { + alias_eval(array[item], extract($0, "function"), "function") + } + reset() + } else { + reset() + } + +} else if (action == "function") { + if (match($0, re["command"])) { + append(extract($0, "command")) + } else if (match($0, re["function"])) { + split(doc, array, "\n") + for (item in array) { + if (array[item] == target) { + print extract($0, "function") + exit } - reset() + } + reset() + } else { + reset() + } + +} else if (action == "doc") { + # doc + if (match($0, RE_SHEBANG)) { + append("! " extract($0, "shebang")) + } else if (match($0, RE_DOC)) { + if (f) { + append($0) + } else { + append(extract($0, "doc")) + } + } else if (match($0, re["alias"])) { + matched = extract($0, "alias") + append("= " matched) + if (matched == target) { + match_alias = 1 + } + } else if (match($0, re["command"])) { + matched = extract($0, "command") + append("/ " matched) + if (matched == target) { + match_command = 1 + } + # set + } else if (match($0, re["constant"])) { + matched = extract($0, "constant") + if (matched == target) { + output(matched, "constant") } else { reset() } - } else if (action == "function") { - if (match($0, re["command"])) { - append(extract($0, "command")) - } else if (match($0, re["function"])) { - split(doc, array, "\n") - for (item in array) { - if (array[item] == target) { - print extract($0, "function") - exit - } - } - reset() + } else if (match($0, re["variable"])) { + matched = extract($0, "variable") + if (matched == target) { + output(matched, "variable") } else { reset() } - } else if (action == "doc") { - # doc - if (match($0, RE_SHEBANG)) { - append("! " extract($0, "shebang")) - } else if (match($0, RE_DOC)) { - if (f) { - append($0) - } else { - append(extract($0, "doc")) - } - } else if (match($0, re["alias"])) { - matched = extract($0, "alias") - append("= " matched) - if (matched == target) { - match_alias = 1 - } - } else if (match($0, re["command"])) { - matched = extract($0, "command") - append("/ " matched) - if (matched == target) { - match_command = 1 - } - # set - } else if (match($0, re["constant"])) { - matched = extract($0, "constant") - if (matched == target) { - output(matched, "constant") - } else { - reset() - } - } else if (match($0, re["variable"])) { - matched = extract($0, "variable") - if (matched == target) { - output(matched, "variable") - } else { - reset() - } - # others - } else if (match($0, RE_MODULE)) { - reset() - if (extract($0, "module") == target) { - match_module = 1 - } - } else if (match($0, re["function"])) { - f = extract($0, "function") - } else if (match($0, RE_CLOSE)) { - if (match_alias) { - print "= " target - output(f, "function") - } else if (match_command) { - print "/ " target - output(f, "function") - } else if (f == target) { - output(f, "function") - } else { - f = "" - reset() - } + # others + } else if (match($0, RE_MODULE)) { + reset() + if (extract($0, "module") == target) { + match_module = 1 + } + } else if (match($0, re["function"])) { + f = extract($0, "function") + } else if (match($0, RE_CLOSE)) { + if (match_alias) { + print "= " target + output(f, "function") + } else if (match_command) { + print "/ " target + output(f, "function") + } else if (f == target) { + output(f, "function") } else { - if (match_module) { - output(target, "module") - } else { - reset() - } + f = "" + reset() + } + } else { + if (match_module) { + output(target, "module") + } else { + reset() } } } +} + +# end + END { - if (action == "filter") { - for (item in unique) { - print item - } + +if (action == "filter") { + for (item in unique) { + print item } } + +}