2016-10-18 10 views
1

ORGファイルをorg-latex-listingsに設定してLaTeXにエクスポートしています。tに設定しています。このファイルにはいくつかのソースリストが含まれており、それらにいくつかの参照を挿入したいと思います。#begin_srcブロックへの参照をLaTeXにエクスポートする方法

\refに含まれる参照名はorg-modeで翻訳されているようですが、labelというオプションは\lstsetのままです。 LaTeXファイル(C-cC-elt)としてエクスポートすると、私が得た

#+latex_header: \usepackage{listings} 
First simple java program in listing [[thesourcelisting]] 
#+name: thesourcelisting 
#+caption: Simple java program 
#+BEGIN_SRC java 
public static void main(String[] args){ 
    System.exit(0); 
} 
#+END_SRC 

:この方法では、pdflatexは正しい参照を見つけると、メッセージここLaTeX Warning: There were undefined references.

を与えることができないことはMWEの一例です

% Created 2016-10-18 mar 14:50 
\documentclass[11pt]{article} 
\usepackage[utf8]{inputenc} 
\usepackage[T1]{fontenc} 
\usepackage{fixltx2e} 
\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{listings} 

\author{alvaro} 
\date{\today} 
\title{} 
\hypersetup{ 
pdfauthor={alvaro}, 
pdftitle={}, 
pdfkeywords={}, 
pdfsubject={}, 
pdfcreator={Emacs 25.1.2 (Org mode 8.3.6)}, 
pdflang={English}} 
\begin{document} 

\tableofcontents 

First simple java program in listing \ref{orgsrcblock1} 
\lstset{language=java,label=thesourcelisting,caption={Simple java program},captionpos=b,numbers=none} 
\begin{lstlisting} 
public static void main(String[] args){ 
    System.exit(0); 
} 
\end{lstlisting} 
\end{document} 

元の名前thesourcelisting\refコマンドでorgsrcblock1に翻訳ではなく、 \lstsetコマンドで実行します。

私はGNU Emacs 25.1.2を使用しています。

答えて

0

org-latex-prefer-user-labelsをtに設定してみてください。

関連する問題