
저는 Mendeley를 사용하여 인용을 정리합니다. .bib
내 Mac의 폴더로 파일을 자동으로 내보냅니다 .
.bib
또한 Mendeley(주로 웹사이트)에 저장되지 않은 다른 인용에 사용하는 또 다른 파일도 있습니다 . 이 파일은 내 모든 LaTeX 프로젝트를 별도의 폴더에 포함하는 폴더에 저장됩니다.
파일이 LaTeX 프로젝트와 별도로 저장되는 이유는 .bib
여러 프로젝트가 동일한 인용을 사용하므로 파일 하나만 유지하면 됩니다 .bib
(다른 파일은 Mendeley에서 유지 관리함).
에서 영감을 받다VCS에 대한 질문git을 사용하여 현재 LaTeX 프로젝트를 bitbucket.org에 추가했습니다. 내 .tex
파일과 이미지 가 들어있는 디렉토리입니다 .~ 아니다파일 .bib
.
내 main.tex
책에는 다음과 같은 두 가지 참고문헌이 포함되어 있습니다.
\bibliography{~/Documents/Dropbox/Mendeley/library,../other_refs}
이제 내 목표는 저장소를 자체 포함하여 누군가가 이를 복제하고 LaTeX 문서를 컴파일할 수 있도록 만드는 것입니다.
내 .bib
파일이 저장소에 없는데 어떻게 해야 합니까?
Symlink는 옵션이 아닙니다git은 더 이상 심볼릭 링크를 따르지 않습니다.
답변1
에서 + natbib
으로 전환을 마쳤습니다 . 후자는 파일 링크를 입력으로 사용할 수 있는 명령을 지원합니다.biblatex
biber
\addbibresources[location=remote]
.bib
\bibliography{~/Documents/Dropbox/Mendeley/library,../other_refs}
가 되었다:
\IfFileExists{../thesis_refs.bib}
{
\addbibresource{~/Documents/Dropbox/Mendeley/library.bib}
\addbibresource{../thesis_refs.bib}
}
{
\addbibresource[location=remote,type=file]{https://dl.dropboxusercontent.com/s/library.bib}
\addbibresource[location=remote,type=file]{https://dl.dropboxusercontent.com/s/thesis_refs.bib}
}
\printbibliography
이제 로컬 .bib
파일이 있는지 확인이 수행됩니다. 그렇다면 해당 파일을 사용하고, 그렇지 않은 경우 .bib
공개적으로 사용할 수 있도록 설정한 Dropbox에서 파일을 다운로드합니다(여기에 표시된 링크는 실제 링크가 아닙니다).
답변2
make-file(latexmk에 의해 호출됨)을 사용하여 턱받이를 로컬 폴더에 복사하여 문제를 해결했습니다. 그렇게 하면 저장소에 올바른 버전이 있게 됩니다. Mendely에서 제가 겪었던 주요 문제 중 하나는 파일이 작성될 때마다 항목 순서가 변경된다는 것입니다. 그래서 Makefile을 확장하여 bibtool
. 내 Makefile은 좀 더 복잡하지만 다음과 같이 요약됩니다.
PROJECT.bib:~/Documents/Dropbox/Mendeley/library
cat $< | bibtool -o $@ -r ./bib.rsc
그리고 bib.rsc는 다음과 같습니다.
resource {sort_fld.rsc}
sort = on
preserve.keys = on
preserve.key.case = on