How to watch a variable in the editor, without the editor having control over it?

If I put a variable in the global scope of scripts, it shows in the script's inspector in a gameobject the script's applied to, which is a very nice way to watch things. But after that, if I change the default value in the script, the editor's value overrides it. So from the moment I set up such watch, I am forced to edit it in the editor; if I change the value in the script, the editor still insists on the old value which he received. I would prefer to have control over the variable in both ways - if I change it in one place, it updates in both (unless the script is open, in which case Unity can't access it, and in that specific case it could start applying the overriding rule). Any ideas?

This might not be quite what you're after, but if you switch the inspector to 'debug' mode, you can view the values of private variables in the inspector (but you can't edit them).

Right click on the inspector title bar to get the debug mode option.