To answer your question more directly, GMEdit only picks up function and variable definitions in Create events as it is good practice and spares me of having to make some decisions (e.g. what if you re-define a function with different arguments/types in different events).
If you are 100% sure of your actions, you may use the @init JSDoc tag to assert that variable and function definitions should be picked up in the event as if they were in Create.