Quoting from my comment:
Judging from the fact that the DONE face and the TODO face look the same above, I'm guessing that your org-todo-keywords are screwed up, so Org mode does not know that it is done.
So I checked your init file and I see this:
...
'(org-todo-keywords
'((sequence "TODO(t)" "DONE(d)" "WAITING(w)" "SOMEDAY(s)" "NEXT(s)")))
...
So indeed your org-todo-keywords
setting is wrong: you need to move the DONE
entry to the last place:
...lang-el
...
'(org-todo-keywords
'((sequence "TODO(t)" "WAITING(w)" "SOMEDAY(s)" "NEXT(s)" "DONE(d)")))
...
The doc string for org-todo-keywords
(C-h v org-todo-keywords RET
) says:
Each sequence starts with a symbol, either ‘sequence’ or ‘type’,
indicating if the keywords should be interpreted as a sequence of
action steps, or as different types of TODO items. The first
keywords are states requiring action - these states will select a headline
for inclusion into the global TODO list Org produces. If one of the
"keywords" is the vertical bar, "|", the remaining keywords
signify that no further action is necessary. If "|" is not found,
the last keyword is treated as the only DONE state of the sequence.
So to be absolutely sure, it's probably best to include a "|" element in the list. That's necessary if you have more than one DONE
state, but it's good practice in general:
...
'(org-todo-keywords
'((sequence "TODO(t)" "WAITING(w)" "SOMEDAY(s)" "NEXT(s)" "|" "DONE(d)")))
DONE
face and theTODO
face look the same above, I'm guessing that yourorg-todo-keywords
are screwed up, so Org mode does not know that it is done. DoC-h v org-todo-keywords RET
and add it to your question.