It seems that GDK_MOD2_MASK isn't the right modifier to check for command pressed - its mapping is platform-specific and while this works on macOS, it has undesirable side-effects on linux. Use GDK_META_MASK instead which based on my testing seems to do the right thing both on macOS and linux.
Fixes (1) in #1136 You can view, comment on, or merge this pull request online at:
https://github.com/geany/geany-plugins/pull/1141
-- Commit Summary --
* vimode: fix escape not working when numlock is on
-- File Changes --
M vimode/src/keypress.c (2)
-- Patch Links --
https://github.com/geany/geany-plugins/pull/1141.patch https://github.com/geany/geany-plugins/pull/1141.diff