If you are going to include qualifiers then it should include volatile constinit constexpr constexpr mutable, and what about alignas (_Alignas in C).
I don't think those are type qualifiers. But I can see it may cause confusion so I'll remove const.
Note I meant `constexpr` and `consteval`, not `constexpr` twice :-P.
In C++ `volatile` is a type qualifier just like `const` in fact the standard talks about [CV qualifiers](https://en.cppreference.com/w/cpp/language/cv) everywhere. Both `constexpr` and `consteval` apply the `const` qualifier to the type plus they specify some semantics as well, so `constexpr int i = expression;` gives `i` type `const int` as well as saying the initialiser _must_ be evaluated at compile time, so its a qualifier++. Oh, and `constexpr` and `consteval` can be applied to `if` statements as well as declarations. C++, its complicated!!!!
So yeah, best to keep the secondary keyword list just as types, they are only ever used with one meaning. And maybe that could be given the same style (`keyword_3` I think) as Geany detected types?