библиография гарвардского Клувера, отсутствующие названия статей

библиография гарвардского Клувера, отсутствующие названия статей

Я пытаюсь сделать стиль библиографии по своему вкусу, и мне почти удалось, но по какой-то причине я не могу заставить отображаться названия статей. У меня есть автор - год - журнал - том/выпуск/страница, а я хочу автор - год - НАЗВАНИЕ - журнал - том/выпуск/страница.

Я использую пакет harvard с измененным стилем kluwer для своих ссылок, я обнаружил, что он лучше всего подходит для нужного мне стиля. Я изменил в нем несколько вещей:

Добавлен:

    FUNCTION {format.url}
{ url empty$
    { "" }
    {   
        " Available from:~\url{" * url * "}" *
    }
  if$
}

Измененный:

FUNCTION {format.bvolume}
{ volume empty$
    { "" }
    { "Vol." volume tie.or.space.connect
      series empty$
    'skip$
    { " of " * series emphasize * }
      if$
      "volume and number" number either.or.check
    }
  if$
}

и

FUNCTION {format.vol.num.pages}
    { "Vol. " volume field.or.null
      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 }
        { ",~p.~" * pages n.dashify * }
          if$
        }
      if$
    }

А форматирование моей статьи выглядит так:

FUNCTION {article}
{ output.bibitem
  list.label.output
  " " list.year * output.nonnull
  new.block
  author "author" item.check
  if$
  title.field field.used =
    { skip$ }
    { format.title "title" output.check }
  if$
  crossref missing$
    { journal emphasize "journal" duplicate$ item.check
      " " * format.vol.num.pages * output
    }
    { format.article.crossref output.nonnull
      format.pages output
    }
  if$
  new.block
  note output
  fin.entry
  write.url
}

При запуске bibtex возникает ошибка:

Вы не можете извлечь пустой литеральный стек для entry arnould во время выполнения --- строка 1362 файла kluwer.bst Вы не можете извлечь пустой литеральный стек для entry arnould во время выполнения --- строка 1362 файла kluwer.bst " 2005" - это строковый литерал, а не функция, для entry arnould во время выполнения --- строка 1362 файла kluwer.bst Вы не можете извлечь пустой литеральный стек для entry arnould во время выполнения --- строка 1362 файла kluwer.bst ptr=1, stack= Теория потребительской культуры (cct): двадцать лет исследований --- литеральный стек не пуст для entry arnould во время выполнения --- строка 1362 файла kluwer.bst и так далее...

Помогите пожалуйста? Я в отчаянии...

решение1

Хорошо, после многочисленных попыток выяснить, что может быть не так, мне удалось заставить код работать. Новая функция статьи:

FUNCTION {article}
{ output.bibitem
  list.label.output
  " " list.year * output.nonnull
  author "author" output.check
  if$
  title.field field.used =
    { skip$ }
    { format.title "title" output }
  if$
  crossref missing$
    { " " journal emphasize "journal" duplicate$ item.check
      " " * format.vol.num.pages * output
    }
    { format.article.crossref output.nonnull
      format.pages output
    }
  if$
  new.block
  note output
  fin.entry
  write.url
}

Похоже, что проблема была в item.check...

Связанный контент