
에 대한 답변에서bibtex 대 biber 및 biblatex 대 natbibnatbib
Biber와 BibTeX(및 biblatex) 의 장단점을 설명했습니다. 그러나 한 가지 사항이 생략되었습니다. BibTeX와 biblatex
.
BibTeX를 한동안 사용한 후에는 BibTeX 스타일의 참고문헌 모음을 얻게 됩니다. 게다가 많은 저널에서는 홈페이지에 인용용 BibTeX 항목을 제공합니다. 많은 참고문헌 관리 프로그램은 BibTeX 내보내기를 지원하거나 BibTeX 파일을 직접 관리할 수도 있습니다. 또한 Emacs와 같은 고급 편집자는 BibTeX 참고문헌을 특별하게 지원합니다.
간단히 말해서, BibTeX 참고문헌과 기존 참고문헌의 대량 재고를 생성하고 관리하기 위한 대규모 인프라가 있습니다. 게다가, 다른 질문에서 언급했듯이, natbib
상당수 저널에서 사용하는 와 Biber를 함께 사용할 수 없습니다.
그러므로 다음과 같은 질문이 생깁니다: Biber의 참고문헌 형식은 BibTeX의 참고문헌 형식과 호환됩니까? 아니면 최소한 자동 변환 도구가 있나요?
두 가지 방향 모두 흥미롭습니다. Biber가 기존 BibTeX 참고 문헌을 사용할 수 없는 경우 이는 기존의 모든 BibTeX 참고 문헌을 변환해야 함을 의미하며 저널의 BibTeX 항목에 대해서도 그렇게 해야 합니다(Biber를 제공하지 않는 한, 종종 BibTeX 및 EndNote일 뿐임) ) 및 참고문헌 관리 프로그램에서 내보낸 참고문헌. 반면에 Biber 파일을 BibTeX에 사용할 수 없고 변환이 없다면 이는 Biber 참고문헌이 를 사용하는 저널에 쓸모가 없으며 natbib
BibTeX 참고문헌 파일을 직접 해석하는 모든 프로그램(편집기 지원 포함)을 더 이상 사용할 수 없음을 의미합니다.
또한 Biber가 BibTeX 파일을 읽을 수 있지만 그 반대의 경우는 읽을 수 없습니다. 파일이 BibTeX 호환 파일로 제한되어 있는 경우에도 Biber가 BibTeX에 비해 여전히 이점이 있습니까?
답변1
BibTeX 형식 파일을 구문 분석하기 위해 Biber는 모든 의도와 목적에 대해 BibTeX와 99.9% 호환되는 "btparse"라는 C 라이브러리를 사용합니다. 따라서 BibTeX의 대체품으로 Biber를 사용하는 데 문제가 거의 발생하지 않습니다. 다른 사람들이 언급했듯이 문제는 biblatex
BibTeX의 데이터 모델과 비교하여 약간 다른 데이터 모델입니다.
따라서 귀하의 질문은 실제로 Biber를 백엔드로 사용하는지 여부에 관계없이 일반 BibTeX와 BibLaTeX 간의 데이터 모델 차이와 관련이 있습니다 biblatex
. 앞으로 BibLaTeX 2.x에서는 biblatex
제한 사항이 너무 많아 BibTeX가 더 이상 백엔드로 지원되지 않습니다. 물론 BibTeX 형식의 데이터 파일은 항상 지원됩니다.
더 중요한 질문은 앞서 언급한 것처럼 특정 데이터 모델을 사용하지 않더라도 Biber의 장점이 무엇인지입니다 biblatex
. 다음은 이와 관련하여 Biber의 몇 가지 장점입니다(매뉴얼에서 "Biber only"라는 문자열을 검색하면 아이디어를 얻을 수 있음 biblatex
). 데이터 소스 변경이 필요한 기능은 생략됩니다.
.bib
(현재 RIS, Zotero RDF/XML, Endnote XML) 이외의 데이터 소스 지원- 원격 데이터 소스 지원(
.bib
ftp 또는 http를 통해 사용 가능한 파일) - 기타 출력 형식 지원(0.9.8에서는 데이터 시각화 및 계획된 biblateXML 형식으로의 변환을 위해 GraphViz .dot 출력을 지원합니다)
- 전체 유니코드 6.0 지원(파일 이름 및 인용 키 포함)
- 내 생각에 정렬 메커니즘은 전체 유니코드, 다중 필드, 필드별 케이스 및 방향, CLDR 인식 및 완전히 사용자 구성 가능 등 상용 제품만큼 훌륭하거나 더 나을 것입니다. BibTeX는 이와 관련하여 근접하지 않습니다.
- 자동 이름 및 이름 목록 명확성. 이건 꽤 인상적인 기능인 것 같아요.
biblatex
이에 대한 아주 좋은 설명과 예제를 보려면 매뉴얼 의 섹션 4.11.4를 참조하세요 . - 완전히 사용자 정의 가능한 상호 참조 상속 규칙. BibTeX에는 매우 기본적인 정적 규칙만 있습니다.
- UTF-8 <-> LaTeX 매크로를 포함한 자동 인코딩 및 디코딩
.bib
실제 데이터 소스 자체를 변경하지 않고 Biber에서 읽는 대로 데이터를 변경하는 데 사용할 수 있는 매우 유연한 구성 파일 "sourcemap" 옵션입니다 .
이를 사용하여 특정 필드 삭제, 필드 추가, 조건부로 필드 삭제/추가, 전체 Perl 5.14 정규식을 사용하여 필드 변경 등 모든 종류의 작업을 수행할 수 있습니다( 참조비버 매뉴얼섹션 3.1.2).
이 마지막 기능은 Biber가 파일을 변경하지 않고 읽을 때 순수 BibTeX 파일을 즉시 모델 .bib
에 매핑할 수 있기 때문에 특히 흥미로울 수 있습니다 . LaTeX 예약 문자로 인해 종종 문제가 발생하는 biblatex
필드를 삭제하는 데에도 매우 유용합니다 .abstract
BibLaTeX 2.x에서 사용할 수 있는 Biber에 구현된 몇 가지 다른 기능도 있습니다:
- 맞춤형 라벨
- 자체 정렬/필터링을 통해 동일한 참조 섹션에 있는 여러 참고문헌
- "관련" 항목 - "재인쇄", "번역" 등의 모든 요구 사항 문제에 대한 일반적인 솔루션입니다.
Biber가 문서에 언급된 BibLaTeX 필드와 항목 유형 매핑(주소 -> 위치 등)을 자동으로 적용한다는 사실을 언급하는 것을 잊어버렸습니다. 일부 드라이버 수준 소스 매핑을 구현하여 이를 수행합니다( \DeclareSourcemap
biblatex 문서의 해당 변형 참조).
답변2
원칙적으로, /Biber의 장점을 더 많이 활용할수록 biblatex
전통적인 BibTeX 작업 흐름으로 돌아가는 것이 더 어려워집니다.
BibTeX 데이터베이스를 가지고 있고 이를 /Biber와 함께 사용하려는 경우 biblatex
조정해야 할 영역이 거의 없습니다. 매뉴얼의 2.3장에는 biblatex
다음 사항이 나열되어 있습니다.
- 항목 유형은 @inbook입니다. 자세한 내용은 §§ 2.1.1 및 2.3.1을 참조하세요.
- 필드 기관, 조직, 출판사, 별칭 주소 및 학교입니다. 자세한 내용은 §§ 2.2.2, 2.2.5, 2.3.4를 참조하세요.
- 특정 유형의 타이틀 처리. 자세한 내용은 § 2.3.5를 참조하세요.
- 필드 시리즈. 자세한 내용은 §§ 2.2.2 및 2.3.7을 참조하세요.
- 연도 및 월 필드입니다. 자세한 내용은 §§ 2.2.2, 2.3.8, 2.3.9를 참조하세요.
- 필드 에디션. 자세한 내용은 § 2.2.2를 참조하세요.
- 필드 키입니다. 자세한 내용은 § 2.3.2를 참조하세요.
모든 변경 사항이 사용자에게 영향을 미치는 것은 아니며 모든 변경 사항이 실제로 비호환성을 초래하는 것도 아닙니다.
더 많이 탐구 biblatex
하고 고유한 유형, 필드 및 기능을 더 많이 활용할수록 이전으로 돌아가기가 더 어려워집니다. 둘 사이의 변환에 대한 전체적인 문제는 실제로 다른 형식의 문제가 아니라 biblatex
단순히 BibTeX와 동등한 것이 없는 많은 것을 제공하는 문제이기 때문에 실제로 논쟁의 여지가 있습니다.
bookauthor
나에게 중요한 한 가지 예는 다음과 같습니다. 전통적인 BibTeX 에는 인문학의 특정 영역에서 거래를 중단시키는 분야가 없습니다 . 에 이 필드가 있다는 사실이 biblatex
제가 원래 biblatex
. 이제 BibTeX는 이 필드에 대해 모르기 때문에 둘 사이에 유용한 변환을 수행할 수 있는 합리적인 방법이 없습니다. 다른 많은 분야에서도 마찬가지이다. 따라서 가는 것은 biblatex
특정 지점을 지난 후에 일종의 일방통행 거리입니다.
답변3
Biber와 BibTeX(즉,바이너리 드라이버인용과 관련하여 LaTeX에서 생성된 .bcf
각 파일을 처리하기 위해 ) Biber는 다른 참고문헌 패키지(구식 BibTeX, )를 지원하지 않으므로 참고문헌 패키지로 사용하고 있다고 가정합니다..aux
biblatex
natbib
참고문헌 데이터베이스와 관련하여: AFAIK Biber는주로BibTeX와 호환됩니다. 그러나 잘 구성된 항목을 사용하는 것이 더 까다롭기 때문에 즉시 사용 가능한 항목이 "작동하지 않을" 가능성이 높습니다. 이 모든 것을 즉시 수정하고 싶지 않다면 일반적 biblatex
으로 with를 함께 사용하는 것이 bibtex8 -W
좋은 해결 방법입니다. 를 사용하기 위해 바로 Biber로 전환할 필요는 없습니다 biblatex
.
더 심각한 문제는 구식 BibTeX가 biblatex
데이터베이스 항목과 100% 호환되지 않는다는 것입니다. 실제로 biblatex
이전 스타일 BibTeX 데이터베이스 형식의 많은 특이성을 정리합니다.
예를 들어, 이전 스타일의 BibTeX에는 주소를 나타내는 두 개의 필드가 있습니다. address
게시자의 주소는 모든 항목 유형에 사용되지만 @inproceedings
. 참가를 위해서는 대신 장소의 @inproceedings
정보를 제공해야 합니다 . 출판사의 location
이름을 address
지정해서는 안 됩니다(BibTeX는 이에 대해 경고하고 무시합니다). 을
사용하면 biblatex
둘 다 "게시된 위치"에 대한 동의어입니다. 이는 이론적으로 동일한 항목 내에서 둘 다 사용하지 않기 때문에 더 의미가 있습니다. 그러나 @inproceedings
웹(ACM, IEEE 등)에서 찾은 많은 항목에는 다음이 포함되어 있습니다.둘 다, 이는 기술적으로 올바르지 않더라도 마찬가지입니다. 이러한 항목을 개인 .bib
파일로 가져와서 와 함께 사용하면 ( biblatex
출판사 address
의) 때때로 location
장소의 을 덮어쓰게 되어 잘못된 정보가 발생하게 됩니다.
답변4
내가 발견한 문제는 양식의 주석이
@COMMENT text
BibTex의 .bib 파일에서는 작동하지만 Biber에서는 작동하지 않는다는 것입니다.
이에 대해서는 여기에서 더 자세히 설명합니다. biblatex 파일의 코드 주석