`filetypes.verilog` only includes ancient Verilog-1995 keywords (plus `signed` and `unsigned` for some reason), but is missing plenty of the newer Verilog-2001 and the newest Verilog-2005 keywords, some of them very common, such as `generate`/`endgenerate`, `localparam`, `automatic`...
I have added all those "new" keywords to the `word3=` category to distinguish them from the "classic" keywords from the previous century, although I honestly don't know what's the difference between the two categories.
I have also moved all the keywords that used to be in `word3=` to `word=`, since I didn't see any reason to keep those keywords there (they seem to be related to "variable declarations" one way or another, but then again, so are many of the keywords listed in `word=`). This way, `word=` will be for the "old" keywords, and `word3=` for the "new" ones that "might not work in a Verilog tool made in the previous century".
Finally, I have added `$` to the list of `wordchars=`, because Verilog is special and considers $ to be an identifier character like `_` (so e.g. `$finish` and `gotabout$350` are valid identifiers). You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany/pull/4037
-- Commit Summary --
* filetypes.verilog: add Verilog-2005 keywords and $
-- File Changes --
M data/filedefs/filetypes.verilog (6)
-- Patch Links --
https://github.com/geany/geany/pull/4037.patch https://github.com/geany/geany/pull/4037.diff