The names of my vectors often have ascenders, e.g. \vec b and \vec d. By themselves, they look fine, but I have two issues with them:

  • They make the letters so tall that they cause whitespace above their line;
  • They look ugly next to other vectors, e.g. \vec a;

My goal is to lower the vector arrow so that it crosses the ascender when it's there, sort of how this thread raises all vector arrows to the tallest height (which is the inverse of what I want). It'd look similar to bar characters (e.g. this and this), except with a straight vector arrow, of course. If possible, it should be compatible with shifting the arrow leftward as demonstrated here.

  • Since you're already using code for shifting vectors, why not do the following? k\myvec[12mu]{} -- add blank vector next to a tall letter and shift it back to look desirably.
    – antshar
    Commented Oct 6, 2022 at 13:30
  • @antshar I'm not using that code myself, but I knew it existed and wanted to allow people who needed both features to use both solutions.
    – Mew
    Commented Oct 6, 2022 at 14:01
  • The final result is even uglier, I'm afraid. There's a reason why the overarrow is not so frequently used nowadays.
    – egreg
    Commented Oct 6, 2022 at 16:24

1 Answer 1


You could do something like this, but I am unsure whether this looks really nice:




$\myvec{a} \cdot \myvec[-1mu]{b} \cdot \myvec[6mu]{k} x$


enter image description here

  • The b is acceptable, but what's up with that k? Edit: ah, the optional argument is a manual horizontal shift.
    – Mew
    Commented Oct 6, 2022 at 14:02
  • @Mew Yes, since you said that you would like to add an option to shift the arrow, I added this. The kx is just an example for this. Anyways, I think the arrow is a bit too large. Maybe it would look better with another font Commented Oct 6, 2022 at 14:06

You must log in to answer this question.

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