Mein mit bib-it erstellter style funktioniert nicht.

Erstellung eines Literaturverzeichnisses mit BibTeX, Biber, BibLaTeX und Co.


Mathias

Mein mit bib-it erstellter style funktioniert nicht.

Beitrag von Mathias »

Hallo alle zusammen,

ich versuche gerade einen eigenen Stil nach den Zitierregeln der Römisch-Germanischen Kommission des Deutschen Archäologischen Instituts zu erstellen. Die Regeln sind so spezifisch, dass ich mit jurabib, custom-bib und biblatex nicht weitergekommen bin.
Deshalb war ich froh, auf bib-it und seinen Style Generator getroffen zu sein. Ich hab auch gleich einen Stil erstellt. Wenn ich das daraus resultierende .bst-file aber verwende, erkennt Latex plötzlich die Bibliographie nicht mehr, meine Zitate werden als undefined angegeben.

Weiß jemand, was ich da tun kann?

-------------------------
Hier ist mein LaTEX-Dokument:
\documentclass{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\begin{document}
	bla 
	\cite{ttt}
	blabla
\bibliography{bib}
\bibliographystyle{rgk6}
\end{document}
Hier das zugehörige .bib-file: (bib.bib)
@Book{ttt,
	author = {Ich Ichson},
	title = {Ein BibTEX Experiment},
	year = {2011},
	address = {Freiburg i. Br.}
}
und hier das .bst: (rgk6.bst)
ENTRY
  { 
    address
    author
    crossref
    journal
    number
    pages
    series
    title
    year
  }
  {}
  { label extra.label sort.label }
INTEGERS { output.state before.all mid.sentence after.sentence after.block }
FUNCTION {init.state.consts}
{ #0 'before.all :=
  #1 'mid.sentence :=
  #2 'after.sentence :=
  #3 'after.block :=
}
STRINGS { s t}
FUNCTION {output.nonnull}
{ 's :=
  output.state mid.sentence =
    { ", " * write$ }
    { output.state after.block = 
        { add.period$ write$
          newline$
          "\newblock " write$
        }
        { output.state before.all =
            'write$
            { add.period$ " " * write$ }
          if$
        }
      if$
      mid.sentence 'output.state :=
    }
  if$
  s
}
FUNCTION {output.nonnull.nostate}
{ 's :=
  output.state after.block =
    { add.period$ write$
      newline$
      "\newblock " write$
    }
    'write$
  if$
  s
}
FUNCTION {output}
{ duplicate$ empty$
    'pop$
    'output.nonnull
  if$
}
FUNCTION {output.check}
{ 't :=
  duplicate$ empty$
    { pop$ "empty " t * " in " * cite$ * warning$ }
    'output.nonnull
  if$
}
INTEGERS { nameptr namesleft numnames posothers showetal}

FUNCTION {output.bibitem}
{ newline$
  "\bibitem[" write$
  label write$
  "]{" write$
  cite$ write$
  "}" write$
  newline$
  ""
  before.all 'output.state :=
}
FUNCTION {bibinfo.check}
{ swap$
  duplicate$ missing$
    {
      pop$ pop$
      ""
    }
    { duplicate$ empty$
        {
           swap$ pop$
        }
        { swap$
          pop$
        }
      if$
    }
  if$
}
FUNCTION {fin.entry}
{ add.period$
  write$
  newline$
}
FUNCTION {new.block}
{ output.state before.all =
    'skip$
    { after.block 'output.state := }
  if$
}
FUNCTION {new.sentence}
{ output.state after.block =
    'skip$
    { output.state before.all =
        'skip$
        { after.sentence 'output.state := }
      if$
    }
  if$
}
FUNCTION {add.blank}
{  " " * before.all 'output.state :=
}
FUNCTION {add.colon}
{ duplicate$ empty$
    'skip$
    { ":" * add.blank }
  if$
}
FUNCTION {not}
{   { #0 }
    { #1 }
  if$
}
FUNCTION {and}
{   'skip$
    { pop$ #0 }
  if$
}
FUNCTION {or}
{   { pop$ #1 }
    'skip$
  if$
}
FUNCTION {field.or.null}
{ duplicate$ empty$
    { pop$ "" }
    'skip$
  if$
}
FUNCTION {bolden}
{ duplicate$ empty$
    { pop$ "" }
    { "\textbf{" swap$ * "}" * }
  if$
}
FUNCTION {italize}
{ duplicate$ empty$
    { pop$ "" }
    { "\textit{" swap$ * "}" * }
  if$
}
FUNCTION {scaps}
{ duplicate$ empty$
    { pop$ "" }
    { "\textsc{" swap$ * "}" * }
  if$
}
FUNCTION {anglequote}
{ duplicate$ empty$
    { pop$ "" }
    { "<<" swap$ * ">>" * }
  if$
}
FUNCTION {singlequote}
{ duplicate$ empty$
    { pop$ "" }
    { "'{}" swap$ * "'{}" * }
  if$
}
FUNCTION {doublequote}
{ duplicate$ empty$
    { pop$ "" }
    { "``{}" swap$ * "''{}" * }
  if$
}
FUNCTION {format.names.author}
{
  's :=

  #1 'nameptr :=
  s num.names$ 'numnames :=

  numnames 'namesleft :=
  #0 'posothers :=
    { namesleft #0 > }
    { s nameptr "{f}{ll}{v}" format.name$ 't :=
      t "others" =
         { nameptr 'posothers := }
         'skip$
       if$
       nameptr #1 + 'nameptr :=
       namesleft #1 - 'namesleft :=
    }
  while$

  #0 'showetal :=

  numnames #11 >
    { #3 'numnames :=
      #1 'showetal :=
    }
    { numnames #11 =
        { posothers #0 >
          { #1 'showetal :=
            #3 'numnames :=
          }
          'skip$
         if$
         }
         { posothers #0 >
             { #1 'showetal :=
               #1 'numnames -
             }
             'skip$
           if$
         }
       if$
    }
  if$

  #1 'nameptr :=
  numnames 'namesleft :=
    { namesleft #0 > }
    { s nameptr "{f}{ll}{v}" format.name$ 't :=
      nameptr #1 >
        { namesleft #1 >
            { ", " * t * }
            { showetal #0 >
                { ", " * t * }
                { " and " * t * }
              if$
            }
          if$
        }
        't
      if$
      nameptr #1 + 'nameptr :=
      namesleft #1 - 'namesleft :=
    }
  while$

  showetal #0 >
    { " u.a." * }
    'skip$
  if$
}

FUNCTION {format.names.editor}
{
  's :=

  #1 'nameptr :=
  s num.names$ 'numnames :=

  numnames 'namesleft :=
  #0 'posothers :=
    { namesleft #0 > }
    { s nameptr "{f}{v}{ll}" format.name$ 't :=
      t "others" =
         { nameptr 'posothers := }
         'skip$
       if$
       nameptr #1 + 'nameptr :=
       namesleft #1 - 'namesleft :=
    }
  while$

  #0 'showetal :=

  numnames #11 >
    { #3 'numnames :=
      #1 'showetal :=
    }
    { numnames #11 =
        { posothers #0 >
          { #1 'showetal :=
            #3 'numnames :=
          }
          'skip$
         if$
         }
         { posothers #0 >
             { #1 'showetal :=
               #1 'numnames -
             }
             'skip$
           if$
         }
       if$
    }
  if$

  #1 'nameptr :=
  numnames 'namesleft :=
    { namesleft #0 > }
    { s nameptr "{f}{v}{ll}" format.name$ 't :=
      nameptr #1 >
        { namesleft #1 >
            { ", " * t * }
            { showetal #0 >
                { ", " * t * }
                { " and " * t * }
              if$
            }
          if$
        }
        't
      if$
      nameptr #1 + 'nameptr :=
      namesleft #1 - 'namesleft :=
    }
  while$

  showetal #0 >
    { " u.a." * }
    'skip$
  if$
}

FUNCTION {sortify}
{ purify$
  "l" change.case$
}

INTEGERS { len }


FUNCTION {chop.word}
{ 's :=
  'len :=
  s #1 len substring$ =
    { s len #1 + global.max$ substring$ }
    's
  if$
}

FUNCTION {format.title.short}
{ 't :=
  "A " #2
    "An " #3
      "The " #4 t chop.word
    chop.word
  chop.word
  #1 #3 substring$
}
FUNCTION {format.techreport.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.techreport.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.techreport.address}
{ address
  "address" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.techreport.year}
{ year
  "year" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.techreport.pages}
{ pages
  "pages" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {techreport}
{ output.bibitem
  author empty$
  'skip$
    {         format.techreport.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.techreport.title
       output.nonnull.nostate
    }
  if$
  new.block
  address empty$
  'skip$
    {  "("
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.techreport.address
       output.nonnull.nostate
    }
  if$
  new.block
  year empty$
  'skip$
    {         format.techreport.year
       output.nonnull.nostate
       ")"
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  pages empty$
  'skip$
    {         format.techreport.pages
       output.nonnull.nostate
       "."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.inbook.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.inbook.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.inbook.crossref}
{ crossref
  "crossref" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {inbook}
{ output.bibitem
  author empty$
  'skip$
    {         format.inbook.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.inbook.title
       output.nonnull.nostate
       ". "
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  crossref empty$
  'skip$
    {  "In:"
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.inbook.crossref
       output.nonnull.nostate
    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.unpublished.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.unpublished.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {unpublished}
{ output.bibitem
  author empty$
  'skip$
    {         format.unpublished.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.unpublished.title
       output.nonnull.nostate
       ". Unpubl."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.mastersthesis.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.mastersthesis.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.mastersthesis.address}
{ address
  "address" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.mastersthesis.year}
{ year
  "year" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {mastersthesis}
{ output.bibitem
  author empty$
  'skip$
    {         format.mastersthesis.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.mastersthesis.title
       output.nonnull.nostate
    }
  if$
  new.block
  address empty$
  'skip$
    {  "("
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.mastersthesis.address
       output.nonnull.nostate
    }
  if$
  new.block
  year empty$
  'skip$
    {         format.mastersthesis.year
       output.nonnull.nostate
       ") Unveröfftl. Magisterarbeit."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.misc.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.misc.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.misc.address}
{ address
  "address" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.misc.year}
{ year
  "year" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {misc}
{ output.bibitem
  author empty$
  'skip$
    {         format.misc.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.misc.title
       output.nonnull.nostate
    }
  if$
  new.block
  address empty$
  'skip$
    {  "("
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.misc.address
       output.nonnull.nostate
    }
  if$
  new.block
  year empty$
  'skip$
    {         format.misc.year
       output.nonnull.nostate
       ")."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.manual.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.manual.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.manual.address}
{ address
  "address" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.manual.year}
{ year
  "year" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {manual}
{ output.bibitem
  author empty$
  'skip$
    {         format.manual.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.manual.title
       output.nonnull.nostate
    }
  if$
  new.block
  address empty$
  'skip$
    {  "("
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.manual.address
       output.nonnull.nostate
    }
  if$
  new.block
  year empty$
  'skip$
    {         format.manual.year
       output.nonnull.nostate
       ")."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.booklet.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.booklet.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.booklet.address}
{ address
  "address" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.booklet.year}
{ year
  "year" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {booklet}
{ output.bibitem
  author empty$
  'skip$
    {         format.booklet.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.booklet.title
       output.nonnull.nostate
    }
  if$
  new.block
  address empty$
  'skip$
    {  "("
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.booklet.address
       output.nonnull.nostate
    }
  if$
  new.block
  year empty$
  'skip$
    {         format.booklet.year
       output.nonnull.nostate
       ")."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.article.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
     italize
   }
  if$
}
FUNCTION {format.article.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.article.journal}
{ journal
  "journal" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.article.number}
{ number
  "number" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.article.year}
{ year
  "year" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.article.pages}
{ pages
  "pages" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {article}
{ output.bibitem
  author empty$
  'skip$
    {         format.article.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.article.title
       output.nonnull.nostate
       "."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  journal empty$
  'skip$
    {         format.article.journal
       output.nonnull.nostate
    }
  if$
  new.block
  number empty$
  'skip$
    {         format.article.number
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  year empty$
  'skip$
    {         format.article.year
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  pages empty$
  'skip$
    {         format.article.pages
       output.nonnull.nostate
       "."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.book.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
     italize
   }
  if$
}
FUNCTION {format.book.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.book.series}
{ series
  "series" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.book.number}
{ number
  "number" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.book.address}
{ address
  "address" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.book.year}
{ year
  "year" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {book}
{ output.bibitem
  author empty$
  'skip$
    {         format.book.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.book.title
       output.nonnull.nostate
    }
  if$
  new.block
  series empty$
  'skip$
    {  "."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.book.series
       output.nonnull.nostate
    }
  if$
  new.block
  number empty$
  'skip$
    {         format.book.number
       output.nonnull.nostate
    }
  if$
  new.block
  address empty$
  'skip$
    {  "("
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.book.address
       output.nonnull.nostate
    }
  if$
  new.block
  year empty$
  'skip$
    {         format.book.year
       output.nonnull.nostate
       ")."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.incollection.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
     italize
   }
  if$
}
FUNCTION {format.incollection.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.incollection.crossref}
{ crossref
  "crossref" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.incollection.pages}
{ pages
  "pages" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {incollection}
{ output.bibitem
  author empty$
  'skip$
    {         format.incollection.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.incollection.title
       output.nonnull.nostate
       "."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  crossref empty$
  'skip$
    {  "In:"
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.incollection.crossref
       output.nonnull.nostate
    }
  if$
  new.block
  pages empty$
  'skip$
    {         format.incollection.pages
       output.nonnull.nostate
       "."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.proceedings.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.proceedings.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.proceedings.series}
{ series
  "series" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.proceedings.number}
{ number
  "number" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.proceedings.address}
{ address
  "address" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.proceedings.year}
{ year
  "year" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {proceedings}
{ output.bibitem
  author empty$
  'skip$
    {         format.proceedings.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.proceedings.title
       output.nonnull.nostate
    }
  if$
  new.block
  series empty$
  'skip$
    {  "."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.proceedings.series
       output.nonnull.nostate
    }
  if$
  new.block
  number empty$
  'skip$
    {         format.proceedings.number
       output.nonnull.nostate
    }
  if$
  new.block
  address empty$
  'skip$
    {  "("
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.proceedings.address
       output.nonnull.nostate
    }
  if$
  new.block
  year empty$
  'skip$
    {         format.proceedings.year
       output.nonnull.nostate
       ")."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.inproceedings.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.inproceedings.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.inproceedings.crossref}
{ crossref
  "crossref" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.inproceedings.pages}
{ pages
  "pages" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {inproceedings}
{ output.bibitem
  author empty$
  'skip$
    {         format.inproceedings.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.inproceedings.title
       output.nonnull.nostate
       "."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  crossref empty$
  'skip$
    {  "In:"
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.inproceedings.crossref
       output.nonnull.nostate
    }
  if$
  new.block
  pages empty$
  'skip$
    {         format.inproceedings.pages
       output.nonnull.nostate
       "."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.conference.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.conference.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.conference.address}
{ address
  "address" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.conference.year}
{ year
  "year" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {conference}
{ output.bibitem
  author empty$
  'skip$
    {         format.conference.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.conference.title
       output.nonnull.nostate
    }
  if$
  new.block
  address empty$
  'skip$
    {  "("
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.conference.address
       output.nonnull.nostate
    }
  if$
  new.block
  year empty$
  'skip$
    {         format.conference.year
       output.nonnull.nostate
       ")."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
FUNCTION {format.phdthesis.author}
{ author
  duplicate$ empty$ 'skip$
    { format.names.author }
  if$
  "author" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.phdthesis.title}
{ title
  "title" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.phdthesis.address}
{ address
  "address" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {format.phdthesis.year}
{ year
  "year" bibinfo.check
  duplicate$ empty$ 'skip$
   {
   }
  if$
}
FUNCTION {phdthesis}
{ output.bibitem
  author empty$
  'skip$
    {         format.phdthesis.author
       output.nonnull.nostate
       ","
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  title empty$
  'skip$
    {         format.phdthesis.title
       output.nonnull.nostate
    }
  if$
  new.block
  address empty$
  'skip$
    {  "("
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate       format.phdthesis.address
       output.nonnull.nostate
    }
  if$
  new.block
  year empty$
  'skip$
    {         format.phdthesis.year
       output.nonnull.nostate
       ")."
  duplicate$ empty$ 'skip$
   {
   }
  if$
output.nonnull.nostate    }
  if$
  new.block
  fin.entry
}
READ
INTEGERS { et.al.char.used }

FUNCTION {initialize.et.al.char.used}
{ #0 'et.al.char.used :=
}

EXECUTE {initialize.et.al.char.used}

FUNCTION {format.lab.names}
{ 's :=
  s num.names$ 'numnames :=
  numnames #1 >
    { numnames #4 >
        { #3 'namesleft := }
        { numnames 'namesleft := }
      if$
      #1 'nameptr :=
      ""
        { namesleft #0 > }
        { nameptr numnames =
            { s nameptr "{ff }{vv }{ll}{ jj}" format.name$ "others" =
                { "{\etalchar{+}}" *
                  #1 'et.al.char.used :=
                }
                { s nameptr "{v{}}{l{}}" format.name$ * }
              if$
            }
            { s nameptr "{v{}}{l{}}" format.name$ * }
          if$
          nameptr #1 + 'nameptr :=
          namesleft #1 - 'namesleft :=
        }
      while$
      numnames #4 >
        { "{\etalchar{+}}" *
          #1 'et.al.char.used :=
        }
        'skip$
      if$
    }
    { s #1 "{v{}}{l{}}" format.name$
      duplicate$ text.length$ #2 <
        { pop$ s #1 "{ll}" format.name$ #3 text.prefix$ }
        'skip$
      if$
    }
  if$
}
FUNCTION {author.title.label}
{ author empty$
    { title empty$
        { cite$ #1 #3 substring$ }
        {title format.title.short }
      if$
    }
    { author format.lab.names }
  if$
}
FUNCTION {author.year.label}
{ author empty$
    { year empty$
        { cite$ #1 #3 substring$ }
        {year format.title.short }
      if$
    }
    { author format.lab.names }
  if$
}
FUNCTION {calc.label}
{  type$ "techreport" =
     'author.title.label 
    'skip$
  if$
  type$ "inbook" =
     'author.title.label 
    'skip$
  if$
  type$ "unpublished" =
     'author.title.label 
    'skip$
  if$
  type$ "mastersthesis" =
     'author.title.label 
    'skip$
  if$
  type$ "misc" =
     'author.year.label 
    'skip$
  if$
  type$ "manual" =
     'author.title.label 
    'skip$
  if$
  type$ "booklet" =
     'author.title.label 
    'skip$
  if$
  type$ "article" =
     'author.title.label 
    'skip$
  if$
  type$ "book" =
     'author.title.label 
    'skip$
  if$
  type$ "incollection" =
     'author.title.label 
    'skip$
  if$
  type$ "proceedings" =
     'author.title.label 
    'skip$
  if$
  type$ "inproceedings" =
     'author.title.label 
    'skip$
  if$
  type$ "conference" =
     'author.title.label 
    'skip$
  if$
  type$ "phdthesis" =
     'author.title.label 
    'skip$
  if$
  duplicate$
  year field.or.null purify$ #-1 #2 substring$
  *
  'label :=
  year field.or.null purify$ #-1 #4 substring$
  *
  sortify 'sort.label :=
}
FUNCTION {sort.format.names}
{ 's :=
  #1 'nameptr :=
  ""
  s num.names$ 'numnames :=
  numnames 'namesleft :=
    { namesleft #0 > }
    { nameptr #1 >
        { "   " * }
        'skip$
      if$
      s nameptr "{vv{ } }{ll{ }}{  f{ }}{  jj{ }}" format.name$ 't :=
      nameptr numnames = t "others" = and
        { "et al" *}
        { t sortify * }
      if$
      nameptr #1 + 'nameptr :=
      namesleft #1 - 'namesleft :=
    }
  while$
}
FUNCTION {sort.format.title}
{ 't :=
  "A " #2
    "An " #3
      "The " #4 t chop.word
    chop.word
  chop.word
  sortify
  #1 global.max$ substring$
}
FUNCTION {author.title.sort}
{ author empty$
    { title empty$
        { "to sort, need author, ortitle in " cite$ * warning$
  ""
}
        {title format.title.short sortify }      if$
    }
    { author sort.format.names }
  if$
}
FUNCTION {author.year.sort}
{ author empty$
    { year empty$
        { "to sort, need author, oryear in " cite$ * warning$
  ""
}
        {year format.title.short sortify }      if$
    }
    { author sort.format.names }
  if$
}
FUNCTION {presort}
{ calc.label
  sort.label
  "    "
  *
  type$ "techreport" =
    'author.title.sort
    'skip$
  if$
  type$ "inbook" =
    'author.title.sort
    'skip$
  if$
  type$ "unpublished" =
    'author.title.sort
    'skip$
  if$
  type$ "mastersthesis" =
    'author.title.sort
    'skip$
  if$
  type$ "misc" =
    'author.year.sort
    'skip$
  if$
  type$ "manual" =
    'author.title.sort
    'skip$
  if$
  type$ "booklet" =
    'author.title.sort
    'skip$
  if$
  type$ "article" =
    'author.title.sort
    'skip$
  if$
  type$ "book" =
    'author.title.sort
    'skip$
  if$
  type$ "incollection" =
    'author.title.sort
    'skip$
  if$
  type$ "proceedings" =
    'author.title.sort
    'skip$
  if$
  type$ "inproceedings" =
    'author.title.sort
    'skip$
  if$
  type$ "conference" =
    'author.title.sort
    'skip$
  if$
  type$ "phdthesis" =
    'author.title.sort
    'skip$
  if$
  *
  "    "
  *
  year field.or.null sortify
  *
  "    "
  *
  title field.or.null
  sort.format.title
  *
  #1 entry.max$ substring$
  'sort.key$ :=
}

ITERATE {presort}

SORT

STRINGS { longest.label last.sort.label next.extra }

INTEGERS { longest.label.width last.extra.num }

FUNCTION {initialize.longest.label}
{ "" 'longest.label :=
  #0 int.to.chr$ 'last.sort.label :=
  "" 'next.extra :=
  #0 'longest.label.width :=
  #0 'last.extra.num :=
}

FUNCTION {forward.pass}
{ last.sort.label sort.label =
    { last.extra.num #1 + 'last.extra.num :=
      last.extra.num int.to.chr$ 'extra.label :=
    }
		 { "a" chr.to.int$ 'last.extra.num :=
      "" 'extra.label :=
      sort.label 'last.sort.label :=
    }
  if$
}
FUNCTION {reverse.pass}
{ next.extra "b" =
    { "a" 'extra.label := }
    'skip$
  if$
  label extra.label * 'label :=
  label width$ longest.label.width >
    { label 'longest.label :=
      label width$ 'longest.label.width :=
    }
    'skip$
  if$
  extra.label 'next.extra :=
}

EXECUTE {initialize.longest.label}

ITERATE {forward.pass}

REVERSE {reverse.pass}

FUNCTION {begin.bib}
{ et.al.char.used
    { "\newcommand{\etalchar}[1]{$^{#1}$}" write$ newline$ }
    'skip$
  if$
  preamble$ empty$
    'skip$
    { preamble$ write$ newline$ }
  if$
  "\begin{thebibliography}{"  longest.label  * "}" * write$ newline$
}
EXECUTE {begin.bib}
EXECUTE {init.state.consts}
ITERATE {call.type$}
FUNCTION {end.bib}
{ newline$
  "\end{thebibliography}" write$ newline$
}EXECUTE {end.bib}
[/code]

Mathias

Beitrag von Mathias »

Kann mir denn wirklich niemand helfen?

gehess
Forum-Century
Forum-Century
Beiträge: 172
Registriert: Do 8. Apr 2010, 22:44

Beitrag von gehess »

Hallo
ich kenne mich mit bib-it nicht aus, bin mir aber fast sicher, dass sich deine Wünsche auch mit biblatex umsetzen lassen. Poste am besten mal ein Beispiel, wie im Text zitiert werden soll und wie das Literaturverzeichnis aussehen soll, vl. kann ich dann schon weiterhelfen

Mathias

Beitrag von Mathias »

Hallo gehess,

die originalen Zitierregeln findest du u.a. hier: http://www.av-rheinland.de/Richtlinien.pdf
Hier ist aber eine schneller verständliche Version: http://www.uni-muenster.de/imperia/md/c ... regeln.pdf

So sollten die Zitate im Literaturverzeichnis aussehen, im Text selbst zitiere ich mit NAchname des Autors und Kurztitel.

gehess
Forum-Century
Forum-Century
Beiträge: 172
Registriert: Do 8. Apr 2010, 22:44

Beitrag von gehess »

Hallo,
hat etwas gedauer und habe leider nicht viel Zeit. Habe dir mal ein Beispiel angehängt, dass deinen Ansprüchen glaub schon nahe kommt. Die Sache mit Ort+Jahr in Klammer habe ich auf die schnelle nicht lösen können. Du könntest aber einzelne Änderungswünsche dann auch noch in einen neuen Thread packen mit biblatex-spezifischem Titel. Habe einige Optionen mit angegeben, die ich selbst bei biblatex nutze. sind natürlich änderbar
\begin{filecontents}{literatur.bib}
@incollection{autor,
 author = {Maier,Manne},
 title = {Titel des Aufsatzes},
 pages = {71--114},
 editor = {Nachname2, Vorname2},
 booktitle = {Titel des Sammelbandes},
 year = {2011},
 address = {Ort}
}
@book{autor1,
 author = {Müller,Manu},
 title = {Titel des Aufsatzes},
 year = {2011},
 address = {Ort}
}
\end{filecontents}
\documentclass{scrartcl}
\usepackage[style=authortitle-dw,
 bibencoding=utf8, % An deine Kodierung ggf. anpassen (bsp: latin1)
 backend=biber, %Falls du kein biber hast, durch "bibtex" ersetzen
 firstfull=true,
firstfullname,
edsuper=true,
 editorstring=parens,
 sorting=nyt,
 idembib=true,
 idembibformat=idem,
 shorthandibid=false,
 shorthandinbib=true,
idemtracker=constrict,
ibidtracker=constrict,
ibidpage=true
]{biblatex}
\bibliography{literatur}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}

\usepackage{csquotes}

\begin{document}
test\footcite[Vgl.][74]{autor}
test\footcite[Vgl.][57-59]{autor1}

\printbibliography
\end{document}
Dateianhänge
test.pdf
(72.48 KiB) 488-mal heruntergeladen

Mathias

Beitrag von Mathias »

Danke für deine Mühen. Leider brauche ich einen Stil, der genau den RGK-Regeln entspricht.

Ich hoffe imme rnoch, dass mir jemand sagen kann, wieso der bib-it Stil für BibTex nicht funktioniert...

Antworten