Direktes Zitat mit Großbuchstaben des ersten Buchstabens des Autors

Direktes Zitat mit Großbuchstaben des ersten Buchstabens des Autors

Ich versuche, ein direktes Zitat aus meinem Text zu erstellen, wobei nur der erste Buchstabe des Autornamens groß geschrieben werden muss.

Aus irgendeinem Grund\Zitieren(mit großem C) schreibt den ersten Buchstaben der Quellenangabe im Text nicht groß, daher haben \citet und \Citet genau die gleiche Ausgabe:

Aktuelles Szenario

\citet[p. 32]{Christensen1997} --> CHRISTENSEN (1997, p. 32)    
\Citet[p. 32]{Christensen1997} --> CHRISTENSEN (2013, p. 32)

Beabsichtigte Ausgabe

\Citet[p.32]{Christensen1997} --> Christensen (1997, p. 32)

Bitte beachten Sie, dass dies auch gelten muss, wenn ich die Seitenzahl nicht hinzufüge:

\Citet{Christensen1997} --> Christensen (1997)

Hier ist der Eintrag in meiner .bib-Datei

@book{Christensen1997,
address = {Boston},
author = {Christensen, Clayton M},
booktitle = {The management of innovation and change series},
publisher = {Harvard Business School Press},
title = {{The Innovator's Dilemma: When New Technologies Cause Great Firms to Fail}},
year = {1997}
}

Der von mir verwendete Bibliographiestil ist ABNT (Verknüpfung)

Bitte lassen Sie mich wissen, wenn Sie weitere Informationen benötigen. Danke!

Antwort1

Sie können Zeile 383 von abnt.bst innerhalb der Funktion ändern format.family.namesvon

        "u" change.case$

Zu

        "t" change.case$

Dadurch wird die in Zitatbefehlen verwendete Zeichenfolge geändert, der Ausdruck in der Bibliographie wird jedoch nicht beeinflusst. Das „u“ macht den String groß, „t“ macht ihn groß.

Beispielausgabe

\documentclass{article}

\usepackage{natbib}
\bibliographystyle{abnt}

\begin{document}

\citet{Christensen1997}

\Citet{Christensen1997}

\bibliography{\jobname.bib}

\end{document}

Wenn Sie den Befehl verwenden, \citeauthor*sollten Sie eine ähnliche Änderung an der Funktion vornehmen format.family.names.all.

Abhängig von Ihren tatsächlichen Anforderungen möchten Sie die Zeichenfolge möglicherweise lieber in Kleinbuchstaben umwandeln, indem Sie "l"anstelle von verwenden "t". Dann \citetwird der Name in Kleinbuchstaben ausgegeben und \Citetder erste Buchstabe wird groß geschrieben.

Antwort2

In den Zeilen 319-419 gibt es einige Befehle zur Namensformatierung

%==============================================================================
% Formata uma lista de nomes.
%
% Parm:
%    os nomes a serem formatados
%==============================================================================
FUNCTION {format.names}
{
    duplicate$ num.names$ 'n :=
    #1 'i :=
    "" 'names :=

    {i n #1 + <}
    {
        duplicate$ duplicate$ i "{ll}{~jj}" format.name$
        duplicate$ "others" =
        n #3 >
        i #2 =
        and
        or
        {
            pop$ pop$ names " et~al." *
            n 'i :=
        }{
            "u" change.case$ swap$
            i "{, f.}{~vv}" format.name$ *
            names swap$ add.to.namelist
        } if$ 'names :=
        #1 i + 'i :=
    } while$
    pop$
    names
    duplicate$ #-1 #1 substring$ "." = {
        #-2 global.max$ substring$
        "\@." *
    }
        'skip$
    if$
}

%==============================================================================
% Formata uma lista de sobrenomes.
%
% Parm:
%    os nomes a serem formatados
%==============================================================================
FUNCTION {format.family.names}
{
    duplicate$ num.names$ 'n :=
    #1 'i :=
    "" 'names :=

    {i n #1 + <}
    {
        duplicate$ i "{ll}{~jj}" format.name$
        duplicate$ "others" =
        n #3 >
        i #2 =
        and
        or
        {
            pop$ names " et~al." *
            n 'i :=
        }{
            "u" change.case$
            names swap$ add.to.namelist
        } if$ 'names :=
        #1 i + 'i :=
    } while$
    pop$
    names
}

%==============================================================================
% Formata uma lista de sobrenomes com todos os autores.
%
% Parm:
%    os nomes a serem formatados
%==============================================================================
FUNCTION {format.family.names.all}
{
    duplicate$ num.names$ 'n :=
    #1 'i :=
    "" 'names :=

    {i n #1 + <}
    {
        duplicate$ i "{ll}{~jj}" format.name$
        duplicate$ "others" =
        {
            pop$ names " et~al." *
            n 'i :=
        }{
            "u" change.case$
            names swap$ add.to.namelist
        } if$ 'names :=
        #1 i + 'i :=
    } while$
    pop$
    names
}

Ich kenne mich mit der .bst-Sprache nicht wirklich aus, aber ich denke, dass das bloße Entfernen der change.case$Befehle Ihr Problem lösen könnte.

verwandte Informationen