@techee the code [here](https://github.com/geany/geany/blob/3787677de43204d1396c8f5439e82e90fe61b8a4...) is fundamentally flawed, it only compares the hashes, not the strings, so any hash clash between different strings will result in the keywords not being loaded.
Personally I would just keep the string and do a compare, its unlikely to be slower than calculating a hash. That would mean keeping the string, but the memory usage is unlikely to be significant compared to the tagmanager structs it is created from.