Como usar vírgula e ponto de forma eficaz no estilo referência/bibtex

Como usar vírgula e ponto de forma eficaz no estilo referência/bibtex

Eu gostaria de usar o estilo de referência do artigo da seguinte forma:

Autor,Diário Volumepp.23-34 (ano). Link da web

Por exemplo:

AN Ohio, BR Gerrad e M. Forsyth,Nat. Matéria. 24pp. 345-456 (2002). Referência Cruzada

Por favor, ajude-me a mudar o estilo do formato bibtex (.bst) para que eu possa usar vírgula e ponto de forma eficaz.


FUNCTION {output.nonnull}
{ 's :=
  output.state mid.sentence =
    { " " * write$ }
    { output.state after.block =
    { " " * write$
      newline$
      "\newblock " write$
    }
    { output.state before.all =
        'write$
        { add.period$ " " * write$ }
      if$
    }
      if$
      mid.sentence 'output.state :=
    }
  if$
  s
}


FUNCTION {fin.entry}
 { write$
  newline$
}

FUNCTION {format.authors}
{ author empty$
    { "," }
    { author format.names }
    if$
}

FUNCTION {format.date}
{ year empty$
    'year 
    {" ("   year * ")." * }
  if$
}

FUNCTION {format.vol.num.pages}
{ volume field.or.null boldface
  number empty$
    'skip$
    { "(" number * ")" * *
      volume empty$
    { "there's a number but no volume in " cite$ * warning$ }
    'skip$
      if$
    }
  if$
  pages empty$
    'skip$
    { duplicate$ empty$
    { pop$ format.pages }
    { ", pp. " * pages n.dashify * }
      if$
    }
  if$
}

FUNCTION {format.names}
{ 's :=
  #1 'nameptr :=
  s num.names$ 'numnames :=
  numnames 'namesleft :=
    { namesleft #0 > }
    { s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't :=
      nameptr #1 >
    { namesleft #1 >
        { ", " * t * }
        { numnames #2 >
        { "," * }
        'skip$
          if$
          t "others" =
        { " et~al." * }
        { " and " * t * }
          if$
        }
      if$
    }
    't
      if$
      nameptr #1 + 'nameptr :=
      namesleft #1 - 'namesleft :=
    }
  while$
}

FUNCTION {article}
{ output.bibitem
  format.authors "author" output.check
  new.block
  ", " * write$ 
  format.title "title" output.check
  new.block
  crossref missing$
    { journal emphasize "journal" output.check
      format.vol.num.pages output
      format.date "year" output.check
    }
    { format.article.crossref output.nonnull
      format.pages output
    }
  if$
  new.block
  note output
  new.block
  howpublished output 
  fin.entry
}

Usei acs.bst e nas seções onde fiz alterações...copiei e colei acima. As alterações podem ser verificadas comparando essas seções com o arquivo acs.bst original. Isso me deu controle total em vírgula e ponto.

informação relacionada