diff options
author | Bryan Drewery <bryan@shatow.net> | 2021-11-24 08:15:17 +0300 |
---|---|---|
committer | Bryan Drewery <bryan@shatow.net> | 2021-11-24 06:31:11 +0300 |
commit | e0f40aafe24bbefdf0890d56f5b54d1bca868422 (patch) | |
tree | bd14687f9639f672bfcb4939d1acf318cd34e778 /src/share | |
parent | f1bf143c1b5dc359410b9a6972209545b38898ce (diff) |
Add basic stripansi()
Diffstat (limited to 'src/share')
-rw-r--r-- | src/share/poudriere/include/util.sh | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/share/poudriere/include/util.sh b/src/share/poudriere/include/util.sh index 8b039948..10a45d09 100644 --- a/src/share/poudriere/include/util.sh +++ b/src/share/poudriere/include/util.sh @@ -1318,3 +1318,26 @@ globmatch() { return 0 done } + +stripansi() { + [ $# -eq 2 ] || eargs stripansi input output_var + local _input="$1" + local _output_var="$2" + local _gsub + + case "${_input}" in + *\\033*) ;; + *) + setvar "${_output_var}" "${_input}" + return 0 + ;; + esac + + _gsub="${_input}" + _gsub "${_gsub}" '\\033[?m' "" + _gsub "${_gsub}" '\\033[??m' "" + _gsub "${_gsub}" '\\033[?;?m' "" + _gsub "${_gsub}" '\\033[?;??m' "" + + setvar "${_output_var}" "${_gsub}" +} |