0

当我导出到乳胶以下简单文件:

#+Title: Example
#+OPTIONS: H:2 ^:{} f:t toc:nil author:nil
#+LATEX_HEADER: \usepackage[backend=bibtex]{biblatex}
#+LATEX_HEADER: \addbibresource{$HOME/Bibliographies/bibliography}
#+LATEX_HEADER: \graphicspath{{$HOME/Pictures/images/}}
# #+BIBLIOGRAPHY: ~/Bibliographies/bibliography
# #+BIBLIOGRAPHY_STYLE: plain



* Foo
   #+CAPTION: Capitals
   #+NAME: tab:capitals
   | Country   | Capital  |
   |           |          |
   |-----------+----------|
   | Australia | Canberra |
   | Japan     | Tokyo    |
   | France    | Paris    |

* Bar 
  Please look this flamboyant table: Table [[tab:capitals]].

我得到一个结果,其中引用[[tab:capitals]]以“??”呈现 在乳胶中,而不是“1”。

我注意到如果我删除该#+LATEX_HEADER: \addbibresource{$HOME/Bibliographies/bibliography}行,它可以正常工作,但我的参考书目和引文需要它。

该变量在我的配置org-latex-pdf-process中设置为。(list "latexmk -pdf -shell-escape %f")这是生成的 .tex

% Created 2020-06-23 Tue 16:56
% Intended LaTeX compiler: pdflatex
\documentclass[11pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{grffile}
\usepackage{longtable}
\usepackage{wrapfig}
\usepackage{rotating}
\usepackage[normalem]{ulem}
\usepackage{amsmath}
\usepackage{textcomp}
\usepackage{amssymb}
\usepackage{capt-of}
\usepackage{hyperref}
\usepackage{minted}
\usepackage[backend=bibtex]{biblatex}
\graphicspath{{$HOME/Pictures/images/}}
\date{\today}
\title{Example}
\hypersetup{
 pdfauthor={Adam Oudad},
 pdftitle={Example},
 pdfkeywords={},
 pdfsubject={},
 pdfcreator={Emacs 26.3 (Org mode 9.1.2)}, 
 pdflang={English}}
\begin{document}

\maketitle



\section{Foo}
\label{sec:org66385f7}
\begin{table}[htbp]
\caption{\label{tab:org2e022f6}
Capitals}
\centering
\begin{tabular}{ll}
Country & Capital\\
 & \\
\hline
Australia & Canberra\\
Japan & Tokyo\\
France & Paris\\
\end{tabular}
\end{table}

\section{Bar}
\label{sec:org22f0231}
Please look this flamboyant table: Table \ref{tab:org2e022f6}.
\end{document}

tex 文件中的引用和标签匹配,但仍然无法生成正确的 pdf 输出。产生这个的表之间的联系\addbibresource和参考是什么?感谢帮助 :)

4

1 回答 1

0

我的设置org-latex-pdf-process是罪魁祸首:

(setq org-latex-pdf-process (list "latexmk -pdf -shell-escape %f"))

之所以这样设置,是因为我的 bibtex 引用不起作用,并且从某个地方有这个解决方法......但这破坏了对表格的引用。

所以为了解决这个问题,我回到了 emacs 文档中的原始值:

(setq org-latex-pdf-process
 '("%latex -interaction nonstopmode -output-directory %o %f"
 "%latex -interaction nonstopmode -output-directory %o %f"
 "%latex -interaction nonstopmode -output-directory %o %f"))

但是,这不会运行 bibtex。因此,要使引用起作用,我需要"bibtex %b"在对乳胶编译器的调用之间添加:

(setq org-latex-pdf-process
 '("%latex -interaction nonstopmode -output-directory %o %f"
 "bibtex %b"
 "%latex -interaction nonstopmode -output-directory %o %f"
 "%latex -interaction nonstopmode -output-directory %o %f"))

感谢@Dieter.Wilhelm 从这个线程的解决方案

在此处链接到我的配置。

于 2020-06-25T07:29:39.053 回答