Prio-Tasks färben nicht mehr die ganze Zeile ein

This commit is contained in:
Florian Tham
2024-03-08 14:57:53 +01:00
parent afdc68fc67
commit 3a369110d6

26
todo.sh
View File

@@ -955,43 +955,45 @@ _format()
return color
}
{
clr = ""
clr_done = ""
if (match($0, /^[0-9]+ x /)) {
clr = highlight("COLOR_DONE")
clr_done = highlight("COLOR_DONE")
} else if (match($0, /^[0-9]+ \([A-Z]\) /)) {
clr = highlight("PRI_" substr($0, RSTART + RLENGTH - 3, 1))
clr = (clr ? clr : highlight("PRI_X"))
pri_beg = highlight("PRI_" substr($0, RSTART + RLENGTH - 3, 1))
pri_beg = (pri_beg ? pri_beg : highlight("PRI_X"))
if (ENVIRON["HIDE_PRIORITY_SUBSTITUTION"] != "") {
$0 = substr($0, 1, RLENGTH - 4) substr($0, RSTART + RLENGTH)
}
}
end_clr = (clr ? highlight("DEFAULT") : "")
end_clr = (pri_beg ? highlight("DEFAULT") : "")
prj_beg = highlight("COLOR_PROJECT")
prj_end = (prj_beg ? (highlight("DEFAULT") clr) : "")
prj_end = (prj_beg ? (highlight("DEFAULT") clr_done) : "")
ctx_beg = highlight("COLOR_CONTEXT")
ctx_end = (ctx_beg ? (highlight("DEFAULT") clr) : "")
ctx_end = (ctx_beg ? (highlight("DEFAULT") clr_done) : "")
dtx_beg = highlight("COLOR_DATEEXT")
dtx_end = (dtx_beg ? (highlight("DEFAULT") clr) : "")
dtx_end = (dtx_beg ? (highlight("DEFAULT") clr_done) : "")
dat_beg = highlight("COLOR_DATE")
dat_end = (dat_beg ? (highlight("DEFAULT") clr) : "")
dat_end = (dat_beg ? (highlight("DEFAULT") clr_done) : "")
num_beg = highlight("COLOR_NUMBER")
num_end = (num_beg ? (highlight("DEFAULT") clr) : "")
num_end = (num_beg ? (highlight("DEFAULT") clr_done) : "")
met_beg = highlight("COLOR_META")
met_end = (met_beg ? (highlight("DEFAULT") clr) : "")
met_end = (met_beg ? (highlight("DEFAULT") clr_done) : "")
gsub(/[ \t][ \t]*/, "\n&\n")
len = split($0, words, /\n/)
printf "%s", clr
printf "%s", clr_done
for (i = 1; i <= len; ++i) {
if (i == 1 && words[i] ~ /^[0-9]+$/ ) {
printf "%s", num_beg words[i] num_end
} else if (words[i] ~ /\([A-Z]\)$/) {
printf "%s", pri_beg words[i] pri_end
} else if (words[i] ~ /^[+].*[A-Za-z0-9_]$/) {
printf "%s", prj_beg words[i] prj_end
} else if (words[i] ~ /^[@].*[A-Za-z0-9_]$/) {