The positioning of subscripts and superscripts are done by character width (CHARWD) and italic correction (CHARIC) if the nucleus is one character. Suppose the typesetting point before nucleus is typeset. Then subscript is placed to CHARWD and superscript to CHARWD+CHARIC positions.
This is not very well concept in TeX because this metric information is used for another purposes: CHARWD when next character is typeset in normal text and CHARIC when \/ primitive is used.
You can change the mentioned metric information if you know that the symbol will not used in normal text without sub/superscript. But this is very rare situation, so the following hint is only as an academic experiment.
Do tftopl msbm10 > msbm10.pl in your working directory. Then edit the file msbm10.pl in the section (CHARACTER O 106 ... this is blackboard F mentioned in your example. Decrease the CHARWD by 1mu, ie. by .05555 and add the CHARIC as 2mu, i.e. .111111. The result looks like:
(CHARACTER O 106
(CHARWD R 0.555557)
(CHARHT R 0.688889)
(CHARIC R 0.111111)
)
Then run pltotf msbm10.pl. This process creates metric msbm10.tfm in your working directory where it has a precedence, if you are working here. You can try your example in this directory. You will see that the positioning of F sub/super-scripts are as you desired without correction at macro level.
But I don't recommend this. The reason was mentioned above.
You can define the \F macro more presicely. Instead
\newcommand\F{\mathbb{F}}
you can do (for example) following:
\def\F{\mathbb{F}\sbcorr{-2mu}{1mu}}
\def\sbcorr#1#2{\def\tmpa{#1}\def\tmpb{#2}\futurelet\next\sbcorrA}
\def\sbcorrA{\ifx\next_\expandafter\sbcorrB\fi}
\def\sbcorrB_#1{_{\mkern\tmpa#1}\futurelet\next\sbcorrC}
\def\sbcorrC{\ifx\next^\expandafter\sbcorrD\fi}
\def\sbcorrD^#1{^{\mkern\tmpb#1}}
Test: $\F(x), \F_a^b, \F$.
A=WorWA. See also this answer of mine and this question. – Hendrik Vogt May 01 '15 at 04:47\fontdimen2but msbm10 has non-zero space. So the rule about italic correction after each character from msbm10 isn't true. – wipet May 01 '15 at 05:10A_2^2. What I was addressing with "not true" was that you wrote "used for another purpose". I don't know any instance where one would use\/for a math font. Re #2: Ah, that's interesting! Right, I meant fonts with zero\fontdimen2. I didn't know that formsbm10it's non-zero, and I find that very strange. I haphazard a guess that all characters frommsbm10have zero CHARIC - then it makes some sense. If I were to manipulate the font, I'd set\fontdimen2=0. – Hendrik Vogt May 01 '15 at 05:26CHARACTER O 173is the only one with non-zero italic correction - no idea what character that is. And I have really no idea what could possibly have led to the decision to set\fontdimen2to 0.3. – Hendrik Vogt May 01 '15 at 05:40\fontdimen2would be zero and we have: real width=charwd+corrital, subsript position: charwd, superscript position: charwd+corrital and this seems to be sufficient. But we have fonts designed for text and math typesetting together, then\fontdimen2is nonzero and one dimen parameter per each character is missing. For example `${\rm F}_a^b$ is positioned by text italic correction and this "is not very well concept in TeX", I mean. – wipet May 01 '15 at 07:02cmrin math. – Hendrik Vogt May 01 '15 at 07:51