I am using bold upright tensor indices, which I include in a math environment via \textbf{}. I now want a little hat on these indices, which include the letter i. However, when I write \textbf{\^{i}} I get an i where the point has been replaced by the circumflex. This does not happen for j, there I get a point and a circumflex. I am not even sure if this is standard behaviour or if some package does this so that French words with accents look right.
I want the point and the circumflex for the i. Is there a quick fix for this?

  • 2
    \hat{\mathbf{i}}; don't use \textbf for this purpose in math mode.
    – egreg
    Sep 16, 2018 at 20:23
  • Typesetting \^{i} without a dot in text mode is intentional, because that is what you want for most western-alphabet languages that use accents. In cases where an accented i or j does get dot by default but you don't want one, the macros \i and \j give dotless letters.
    – alephzero
    Sep 16, 2018 at 20:29

1 Answer 1


I see quite often \textbf used in math mode. It isn't correct for a very important reason: its realization depends on the font current outside math mode, so it could be rendered as “bold italic” if appearing in a theorem statement.

The correct way to obtain “upright boldface” for a math letter is


Also accents should be the math ones, rather than the text accents.

So your symbol should be typed in as


(put a math accent hat above a boldface i). Notwithstanding that \mathbf{\hat{i}} produces the same result, the suggested syntax is more adherent to the semantic of the symbol.

There are legitimate usages of \textbf in math mode, but only for words that happen to be part of a formula and need to be typeset boldface (I'd say it should be very rare).

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .