diff --git a/model.go b/model.go index f5cbb8d..768792c 100644 --- a/model.go +++ b/model.go @@ -121,6 +121,15 @@ func (a *AppState) getFilterPredicate(filter string) func(todotxt.Task) bool { } filterParts := strings.Split(filter, " ") for _, part := range filterParts { + if part == ":x" { + predicates = append(predicates, func(t todotxt.Task) bool { + return t.Completed + }) + } else if part == ":-x" || part == ":o" { + predicates = append(predicates, func(t todotxt.Task) bool { + return !t.Completed + }) + } if strings.HasPrefix(part, "@") { predicates = append(predicates, func(t todotxt.Task) bool { for _, v := range t.Contexts {