Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Allow setting org_todo_keyword_faces directly with `@org.keyword.face.*` highlight groups

Open
#983 0 comments 1 reaction 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
45/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
lua
Domain
tooling

Research direction

Start by locating the code that processes org_todo_keyword_faces and registers highlights for entries in org_todo_keywords. Trace how the existing face settings and default todo/done links are selected. Done means each keyword receives an overridable @org.keyword.face. group, with the stated fallback behavior when no face attributes are configured.

Written by the indexing model from the issue text.

Description

Each @org.keyword.face.<name> highlight group is only considered in orgmode's highlight specs when <name> is defined inside org_todo_keyword_faces option with at least 1 attribute. Since the option is static, it cannot adapt to users changing Neovim colorschemes at runtime.

My workaround for now is to put a temporary face value (.e.g :weight bold) for each keyword and redefine the corresponding @org.keyword.face.<name> highlight groups in my colorscheme file.

It'd be nice if orgmode can register a single @org.keyword.face.* highlight group unconditionally for each entry in org_todo_keywords option, first considering the highlight settings of org_todo_keyword_faces, and if not available, linking to either @org.keyword.todo and @org.keyword.done by default. The users are free to override the highlight groups in their colorscheme configuration.

Dominant language
Lua
Stars
3.9k
Forks
192
Avg merge
1d 4h
Merged PRs (30d)
13

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from nvim-orgmode/orgmode

All issues in nvim-orgmode/orgmode

Similar issues

More Lua issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.