However ... You can't declare global variables anywhere but the tab that contains your main loop()
huh ? ... once a sketch gets large I use main tab for intro text + global declarations, second tab for setup(), third for loop(), and 4,5,6 etc for functions or device specific code. You can add local declarations in any tab (including before/between functions)
This works fine for me, as I much prefer multiple tabs to one a looooong main tab.
I use
Notepad++ for formatted viewing of ino, h or cpp files. I may move to this for coding too one day, but the IDE has been fine for me so far.
And
TyQt for much improved teensy uploading, Serial output, resetting etc
There is one hassle using tabs that more experienced coders may know how to avoid: sometimes if I make a small coding error (like omitting a semi-colon at line end) I start getting out of scope errors that hide my small error, and are hard to find. The workaround is simply to add prototypes for every function to main tab, so all the scope errors dissapear, then the remaining error messages will point me to my simple error.