Using abntcite, \citeauthor puts the author's name in caps. How can I fix it?

There are two Bibtex style files as part of ABN-Tex: abnt-alf.bst, citating by name, and abnt-num.bst, citing by number. I wrote the answer below assuming you want to use ABNT bibliography, but with names in title case, rather than all caps; I realise now that maybe you want to use numeric citing, in which case just specify the other bibliography style.

You can't change the case used in the citation from your Latex document, because capitalisation is determined in the style file, abnt-alf.bst:

FUNCTION {format.single.name}
{
s nameptr get.person 'r :=
abnt.last.names
  {r #1 "{ll}{ jj}" format.name$ "u" change.case$
   abnt.full.initials
    {r #1 "{, ff}{ vv}" format.name$ *}
    {r #1 "{, f.}{ vv}" format.name$ *}
  if$}
  {%r #1 is.composed.von {r #1 recompose.name 'r :=} 'skip$ if$
   r #1 "{ll}" format.name$
   #1 "{ll}" format.name$
   r #1 "{ jj}" format.name$ * "u" change.case$
   abnt.full.initials
    {r #1 "{, ff}{ vv}" format.name$ *
     r #1 "{ll}" format.name$
     #1 "{ ff}{ vv}" format.name$ *}
    {iso.author.punctuation
      {r #1 "{, f{}}{ vv}" format.name$ *}
      {r #1 "{, f.}{ vv}" format.name$ *} if$
     r #1 "{ll}" format.name$
     #1 "{ f.}{ vv}" format.name$ *}
  if$}

You could use your own modified bst file: change the instances "u" change.case$ (upper case the string) to "t" change.case$ (title case the string) and save it as a new file. There may be other similar changes needed than the two quoted above.


If you don't like to change the style file, you could prevent the capitalization if you enclose the author's name in additional braces, in your .bib file, like

author = {{Knuth}},

or

author = {D. {Knuth}},

or the like, depending on your needs.


Use \citeauthoronline instead of \citeauthor.