Как редактировать BibTeX .bst FUNCTION {format.names}?

StackOverflow https://stackoverflow.com/questions/1620721

  •  06-07-2019
  •  | 
  •  

Вопрос

После попытки нескольких файлов .bst я все еще в основном удовлетворен макетом файла ChicagoReedWeb.bst. Однако мне не нравится обработка записей одним и тем же автором, например:

<Ч>

Пример стиля Чикаго

<Ч>

Если вы посмотрели файл ChicagoReedWeb.bst, но поняли только некоторые основы. Итак, как мне отредактировать код файла ChicagoReedWeb.bst таким образом, чтобы он печатал полную ссылку на автора вместо " -------- " ?

Это было полезно?

Решение

Хорошо, это хорошо вне моего предыдущего опыта работы с BibTeX, но, глядя на файл, у меня складывается впечатление, что раздел name.or.dash заменяет имя с тире, если оно совпадает с предыдущим. Я предлагаю попробовать заменить этот код:

FUNCTION {name.or.dash}
{ 's :=
   oldname empty$
     { s 'oldname := s }
     { s oldname =
         { "\rule[.6ex]{3em}{.05ex}"}
         { s 'oldname := s }
       if$
     }
   if$
}

с этим:

FUNCTION {name.or.dash}
{
}

Если мое понимание синтаксиса правильное, это должно просто удалить сравнение и необязательное изменение и оставить имя по вашему желанию.

Более аккуратный подход может заключаться в том, чтобы убрать вызовы name.or.dash в тех местах, которые вам не нужны. Это даст вам больше гибкости в том, хотите ли вы использовать тире вместо, например, повторного названия книги.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top