如果我使用以下命令,\usepackage[skip=20pt,hang]{caption}
当标题很长时,它会在图形和表格中挂起,但是,如果标题是 lstlisting 环境,则不会。此外,我没有在列表包. 怎么解决?
图挂:
Lstlisting 没有挂起:
最小工作示例与图像非常相似:
\documentclass[12pt,a4paper,twoside]{article}
\usepackage[utf8]{inputenc}
\usepackage{times}
\renewcommand{\rmdefault}{phv} % Arial
\renewcommand{\sfdefault}{phv} % Arial
\usepackage[T1]{fontenc}
\usepackage[spanish,es-noshorthands]{babel}
\usepackage[top=2.5cm, bottom=2.5cm, inner=2.5cm, outer=3.5cm]{geometry}
\usepackage[pdftex,demo]{graphicx}
\usepackage[skip=20pt,hang]{caption}
\usepackage{subcaption}
\usepackage[usenames,dvipsnames]{xcolor}
\definecolor{ColorPrincipal}{cmyk}{0,0.89,0.94,0.28} %este es el color BrickRed
\definecolor{ColorSecundario}{cmyk}{0,0.51,1,0} %este es el color BurntOrange
\definecolor{ColorTerciario}{cmyk}{0.40,0.80,0.20,0} %este es el color DarkOrchid
\definecolor{dkgreen}{rgb}{0,0.6,0}
\definecolor{gray}{rgb}{0.5,0.5,0.5}
\definecolor{mauve}{rgb}{0.58,0,0.82}
\usepackage{listings}
\definecolor{ColorPrincipal}{RGB}{0,0,0}
\lstset{ %
language=bash, % the language of the code
%basicstyle=\footnotesize, % the size of the fonts that are used for the code
basicstyle=\normalsize\ttfamily,
numbers=left, % where to put the line-numbers
numberstyle=\footnotesize, % the size of the fonts that are used for the line-numbers
stepnumber=1, % the step between two line-numbers. If it's 1, each line will be numbered
numbersep=1em, % how far the line-numbers are from the code
aboveskip=1em, % espacio por encima del listing (1 línea)
belowskip=0.2em, % espacio por debajo del listing (1 línea según mis mediciones con la regla tengo que poner -1.8) ACTUALIZACIÓN con el marco del listing: sin espacio= -0.8em con una línea de espacio -0.8+1=0.2em
%belowcaptionskip=0.5em, % Esto hay que ponerlo individualmente a los captions que ocupen dos líneas
backgroundcolor=\color{white}, % choose the background color. You must add \usepackage{color}
showspaces=false, % show spaces adding particular underscores
showstringspaces=false, % underline spaces within strings
showtabs=false, % show tabs within strings adding particular underscores
frame=single, % adds a frame around the code
frameround=fttf, % t hace la esquina redondeada y f que sea en punta
tabsize=2, % sets default tabsize to 2 spaces
captionpos=t, % sets the caption-position to top
breaklines=true, % sets automatic line breaking
breakatwhitespace=true, % sets if automatic breaks should only happen at whitespace
title=\lstname, % show the filename of files included with \lstinputlisting; also try caption instead of title
numberstyle=\scriptsize\color{gray}, % line number style
keywordstyle=\color{blue}, % keyword style
commentstyle=\color{dkgreen}, % comment style
stringstyle=\color{mauve}, % string literal style
escapeinside={\%*}{*)}, % if you want to add a comment within your code
%morekeywords={*,...}, % if you want to add more keywords to the set
%keywordstyle=\color{blue},
columns=flexible, %utilizar la opción flexible ya que el resto meten espacios entre letras para que ocupen todo el espacio de la caja (pero al copiar y pegar código nos lo ha estropeado)
alsoletter={-,/,.}, % gracias a esto podremos enfatizar o hacer keyword palabras como "apt-get"
%emph={sudo, apt-get}, %palabras especiales que se marcarán
classoffset=0,
emph={sudo,},
emphstyle=\color{red},
classoffset=1,
%emph={adb, add-apt-repository, am, android, apt-get, brctl, cat, chmod, dpkg, echo, egrep, /etc/init.d/networking, export, grep, ifconfig, ifdown, ifup, ip, iwconfig, iwlist, java, killall, ln, less, ls, mkdir, modprobe, mv, netcfg, ping, route, sensors, sensors-detect, service, sort, tail, tee, touch, uname, vim, virsh, virt-clone, virt-install, virt-viewer, vncviewer, wget, wpa\_passphrase, wpa\_supplicant, xm}, %algunos de estos comandos están definidos en keywords pero así me los pone a todos del mismo color
emphstyle=\color{BurntOrange},
classoffset=0,
escapechar=!,
xleftmargin=1.41mm,
xrightmargin=-0.71mm,
rulecolor=\color{black}, %corrige el error de bordes que cambian de color cuando se tiene que hacer un salto de una línea con un color distinto del negro http://tex.stackexchange.com/questions/80556/lstlisting-border-bug-when-breaking-lines
literate={ö}{{\"o}}1
{ä}{{\"a}}1
{ü}{{\"u}}1
{á}{{\'{a}}}1
{é}{{\'{e}}}1
{í}{{\'{i}}}1
{ó}{{\'{o}}}1
{ú}{{\'{u}}}1
{ñ}{{\~{n}}}1
{Á}{{\'{A}}}1
{É}{{\'{E}}}1
{Í}{{\'{I}}}1
{Ó}{{\'{O}}}1
{Ú}{{\'{U}}}1
{Ñ}{{\~{N}}}1
{¿}{{?`}}1
}
\DeclareCaptionFont{white}{\color{white}}
\DeclareCaptionFormat{listing}{\colorbox[cmyk]{0.43, 0.35, 0.35,0.01}{\parbox{\textwidth}{\hspace{15pt}\begin{minipage}{0.95\linewidth}#1#2#3\end{minipage}}}} %el minipage me asegura que si el texto de un caption ocupa más de una línea las siguientes líneas quedarán alineadas con respecto a la primera el hspace de 15pt
\captionsetup[lstlisting]{format=listing,labelfont=white,textfont=white, singlelinecheck=false, margin=0pt, font={bf,footnotesize}}
\addto\captionsspanish{\renewcommand*\lstlistingname{C\'odigo}}
\addto\captionsspanish{\renewcommand*\lstlistlistingname{\'Indice de c\'odigo}}
\usepackage{chngcntr} % Sirve para numerar figuras, tablas, etc según numSección.númElemento http://www.physicsforums.com/showthread.php?t=290236
\counterwithin{figure}{section}
\AtBeginDocument{\counterwithin{lstlisting}{section}}
\renewcommand{\captionfont}{\color{ColorSecundario}}
\renewcommand{\captionlabelfont}{\bf}
\captionsetup[lstlisting]{format=listing,labelfont=white,textfont=white, singlelinecheck=false, margin=0pt, font={bf,footnotesize}}
\begin{document}
\section{Sección 1}
\section{Sección 2}
\section{Sección 3}
\section{Sección 4}
Here it hangs :-)
\begin{figure}[h!]
\centering
\includegraphics[width=0.25\textwidth]{clipart/hombreNegociosMovil.jpeg}
\includegraphics[width=0.5\textwidth]{clipart/paradaAutobusAlReves.jpg}
\caption{Bytewalla en el poblado: tranferencia de información del móvil a estafeta}
\end{figure}
But not here :-(
\begin{lstlisting}[belowcaptionskip=0.5em,language=java,caption=Fragmento concerniente a los métodos constructores de la clase Fichero.java]
/* Constructor de un objeto Fichero a partir de un fichero en disco
* Es por ello que se han de generar todos los datos pertenecientes a este fichero
*/
private Fichero(File fichero) throws IOException {
//Se ha omitido el código
}
/*
* Por el contrario podemos querer generar un fichero "virtual", representación de un fichero que posee otro nodo
* Para ello se nos deberá proporcionar la información de este fichero
* La variable nuevo indica si este es un fichero del que no se tenía constancia o si este es un fichero que se va a recrear a partir de trozos, que no está completo
* En el caso de ser un fichero nuevo la información de si se posee este fichero o no se rellenará a NO_EN_MEMORIA ya que sólo se nos enviará el nombre, hashes y tamaños
* */
public Fichero(String nombre, Object bloques[][], Map<String, Long> poseedoresDelFichero, boolean nuevo)
{
//Se ha omitido el código
}
\end{lstlisting}
\end{document}
答案1
最好使用\DeclareCaptionBox
而不是\DeclareCaptionFormat
在自定义框中排版标题,因为这样可以保持format
设置(在本例中为:format=hang
)不变。
不幸的是\DeclareCaptionBox
,由于我目前还没有时间将文档更新到软件包的 3.3 版,因此尚未记录caption
。顺便说一句:\DeclareCaptionBox
自 3.3 版起提供,因此您可能需要更新caption
软件包或 TeX 发行版才能使用此功能。
此外,您不需要使用\hspace{15pt}
技巧来获得 15pt 的边距,只需使用选项margin=15pt
即可。在收集您的caption
选项并进行建议的更改时,我们总共有:
% Settings for ordinary captions
\captionsetup{skip=20pt,format=hang,font={color=ColorSecundario},labelfont=bf}
% Special (additonal) settings for lstlisting captions
\DeclareCaptionBox{listing}{\colorbox[cmyk]{0.43, 0.35, 0.35,0.01}{\parbox{\textwidth}{#2}}}
\captionsetup[lstlisting]{box=listing,font={color=white,bf,footnotesize},singlelinecheck=false,margin=15pt}
完整示例:
\documentclass[12pt,a4paper,twoside]{article}
\usepackage[utf8]{inputenc}
\usepackage{times}
\renewcommand{\rmdefault}{phv} % Arial
\renewcommand{\sfdefault}{phv} % Arial
\usepackage[T1]{fontenc}
\usepackage[spanish,es-noshorthands]{babel}
\usepackage[top=2.5cm, bottom=2.5cm, inner=2.5cm, outer=3.5cm]{geometry}
\usepackage[pdftex,demo]{graphicx}
\usepackage{caption,subcaption}
\usepackage[usenames,dvipsnames]{xcolor}
\definecolor{ColorPrincipal}{cmyk}{0,0.89,0.94,0.28} %este es el color BrickRed
\definecolor{ColorSecundario}{cmyk}{0,0.51,1,0} %este es el color BurntOrange
\definecolor{ColorTerciario}{cmyk}{0.40,0.80,0.20,0} %este es el color DarkOrchid
\definecolor{dkgreen}{rgb}{0,0.6,0}
\definecolor{gray}{rgb}{0.5,0.5,0.5}
\definecolor{mauve}{rgb}{0.58,0,0.82}
\usepackage{listings}
\definecolor{ColorPrincipal}{RGB}{0,0,0}
\lstset{ %
language=bash, % the language of the code
%basicstyle=\footnotesize, % the size of the fonts that are used for the code
basicstyle=\normalsize\ttfamily,
numbers=left, % where to put the line-numbers
numberstyle=\footnotesize, % the size of the fonts that are used for the line-numbers
stepnumber=1, % the step between two line-numbers. If it's 1, each line will be numbered
numbersep=1em, % how far the line-numbers are from the code
aboveskip=1em, % espacio por encima del listing (1 línea)
belowskip=0.2em, % espacio por debajo del listing (1 línea según mis mediciones con la regla tengo que poner -1.8) ACTUALIZACIÓN con el marco del listing: sin espacio= -0.8em con una línea de espacio -0.8+1=0.2em
%belowcaptionskip=0.5em, % Esto hay que ponerlo individualmente a los captions que ocupen dos líneas
backgroundcolor=\color{white}, % choose the background color. You must add \usepackage{color}
showspaces=false, % show spaces adding particular underscores
showstringspaces=false, % underline spaces within strings
showtabs=false, % show tabs within strings adding particular underscores
frame=single, % adds a frame around the code
frameround=fttf, % t hace la esquina redondeada y f que sea en punta
tabsize=2, % sets default tabsize to 2 spaces
captionpos=t, % sets the caption-position to top
breaklines=true, % sets automatic line breaking
breakatwhitespace=true, % sets if automatic breaks should only happen at whitespace
title=\lstname, % show the filename of files included with \lstinputlisting; also try caption instead of title
numberstyle=\scriptsize\color{gray}, % line number style
keywordstyle=\color{blue}, % keyword style
commentstyle=\color{dkgreen}, % comment style
stringstyle=\color{mauve}, % string literal style
escapeinside={\%*}{*)}, % if you want to add a comment within your code
%morekeywords={*,...}, % if you want to add more keywords to the set
%keywordstyle=\color{blue},
columns=flexible, %utilizar la opción flexible ya que el resto meten espacios entre letras para que ocupen todo el espacio de la caja (pero al copiar y pegar código nos lo ha estropeado)
alsoletter={-,/,.}, % gracias a esto podremos enfatizar o hacer keyword palabras como "apt-get"
%emph={sudo, apt-get}, %palabras especiales que se marcarán
classoffset=0,
emph={sudo,},
emphstyle=\color{red},
classoffset=1,
%emph={adb, add-apt-repository, am, android, apt-get, brctl, cat, chmod, dpkg, echo, egrep, /etc/init.d/networking, export, grep, ifconfig, ifdown, ifup, ip, iwconfig, iwlist, java, killall, ln, less, ls, mkdir, modprobe, mv, netcfg, ping, route, sensors, sensors-detect, service, sort, tail, tee, touch, uname, vim, virsh, virt-clone, virt-install, virt-viewer, vncviewer, wget, wpa\_passphrase, wpa\_supplicant, xm}, %algunos de estos comandos están definidos en keywords pero así me los pone a todos del mismo color
emphstyle=\color{BurntOrange},
classoffset=0,
escapechar=!,
xleftmargin=1.41mm,
xrightmargin=-0.71mm,
rulecolor=\color{black}, %corrige el error de bordes que cambian de color cuando se tiene que hacer un salto de una línea con un color distinto del negro http://tex.stackexchange.com/questions/80556/lstlisting-border-bug-when-breaking-lines
literate={ö}{{\"o}}1
{ä}{{\"a}}1
{ü}{{\"u}}1
{á}{{\'{a}}}1
{é}{{\'{e}}}1
{í}{{\'{i}}}1
{ó}{{\'{o}}}1
{ú}{{\'{u}}}1
{ñ}{{\~{n}}}1
{Á}{{\'{A}}}1
{É}{{\'{E}}}1
{Í}{{\'{I}}}1
{Ó}{{\'{O}}}1
{Ú}{{\'{U}}}1
{Ñ}{{\~{N}}}1
{¿}{{?`}}1
}
\addto\captionsspanish{\renewcommand*\lstlistingname{C\'odigo}}
\addto\captionsspanish{\renewcommand*\lstlistlistingname{\'Indice de c\'odigo}}
\usepackage{chngcntr} % Sirve para numerar figuras, tablas, etc según numSección.númElemento http://www.physicsforums.com/showthread.php?t=290236
\counterwithin{figure}{section}
\AtBeginDocument{\counterwithin{lstlisting}{section}}
% Settings for ordinary captions
\captionsetup{skip=20pt,format=hang,font={color=ColorSecundario},labelfont=bf}
% Special (additonal) settings for lstlisting captions
\DeclareCaptionBox{listing}{\colorbox[cmyk]{0.43, 0.35, 0.35,0.01}{\parbox{\textwidth}{#2}}}
\captionsetup[lstlisting]{box=listing,font={color=white,bf,footnotesize},singlelinecheck=false,margin=15pt}
\begin{document}
\section{Sección 1}
\section{Sección 2}
\section{Sección 3}
\section{Sección 4}
Here it hangs :-)
\begin{figure}[h!]
\centering
\includegraphics[width=0.25\textwidth]{clipart/hombreNegociosMovil.jpeg}
\includegraphics[width=0.5\textwidth]{clipart/paradaAutobusAlReves.jpg}
\caption{Bytewalla en el poblado: tranferencia de información del móvil a estafeta}
\end{figure}
But not here :-(
\begin{lstlisting}[belowcaptionskip=0.5em,language=java,caption=Fragmento concerniente a los métodos constructores de la clase Fichero.java]
/* Constructor de un objeto Fichero a partir de un fichero en disco
* Es por ello que se han de generar todos los datos pertenecientes a este fichero
*/
private Fichero(File fichero) throws IOException {
//Se ha omitido el código
}
/*
* Por el contrario podemos querer generar un fichero "virtual", representación de un fichero que posee otro nodo
* Para ello se nos deberá proporcionar la información de este fichero
* La variable nuevo indica si este es un fichero del que no se tenía constancia o si este es un fichero que se va a recrear a partir de trozos, que no está completo
* En el caso de ser un fichero nuevo la información de si se posee este fichero o no se rellenará a NO_EN_MEMORIA ya que sólo se nos enviará el nombre, hashes y tamaños
* */
public Fichero(String nombre, Object bloques[][], Map poseedoresDelFichero, boolean nuevo)
{
//Se ha omitido parte del código
}
\end{lstlisting}
\end{document}
答案2
由于您正在使用 自定义列表的标题,因此声明的hang
选项不会产生影响。lstlisting
\DeclareCaptionFormat{listing}{...}
您可以在格式定义中添加悬挂:在\colorbox
为列表标题定义时,我最初将框起来#1#2
,测量了宽度并使用宽度作为值来\hangindent
排版标题:
\DeclareCaptionFormat{listing}{%
\makebox[\linewidth][l]{\colorbox[cmyk]{0.43, 0.35, 0.35,0.01}{%
\setbox0=\hbox{#1#2}%
\begin{minipage}{\textwidth}
\hangindent\wd0\strut#1#2#3\leavevmode
\end{minipage}}%
}%
}
完整示例:
\documentclass[12pt,a4paper,twoside]{article}
\usepackage[utf8]{inputenc}
\usepackage{times}
\renewcommand{\rmdefault}{phv} % Arial
\renewcommand{\sfdefault}{phv} % Arial
\usepackage[T1]{fontenc}
\usepackage[spanish,es-noshorthands]{babel}
\usepackage[top=2.5cm, bottom=2.5cm, inner=2.5cm, outer=3.5cm]{geometry}
\usepackage[demo]{graphicx}
\usepackage[skip=20pt,hang]{caption}
\usepackage{subcaption}
\usepackage[usenames,dvipsnames]{xcolor}
\definecolor{ColorPrincipal}{cmyk}{0,0.89,0.94,0.28} %este es el color BrickRed
\definecolor{ColorSecundario}{cmyk}{0,0.51,1,0} %este es el color BurntOrange
\definecolor{ColorTerciario}{cmyk}{0.40,0.80,0.20,0} %este es el color DarkOrchid
\definecolor{dkgreen}{rgb}{0,0.6,0}
\definecolor{gray}{rgb}{0.5,0.5,0.5}
\definecolor{mauve}{rgb}{0.58,0,0.82}
\usepackage{listings}
\definecolor{ColorPrincipal}{RGB}{0,0,0}
\lstset{ %
language=bash, % the language of the code
%basicstyle=\footnotesize, % the size of the fonts that are used for the code
basicstyle=\normalsize\ttfamily,
numbers=left, % where to put the line-numbers
numberstyle=\footnotesize, % the size of the fonts that are used for the line-numbers
stepnumber=1, % the step between two line-numbers. If it's 1, each line will be numbered
numbersep=1em, % how far the line-numbers are from the code
aboveskip=1em, % espacio por encima del listing (1 línea)
belowskip=0.2em, % espacio por debajo del listing (1 línea según mis mediciones con la regla tengo que poner -1.8) ACTUALIZACIÓN con el marco del listing: sin espacio= -0.8em con una línea de espacio -0.8+1=0.2em
%belowcaptionskip=0.5em, % Esto hay que ponerlo individualmente a los captions que ocupen dos líneas
backgroundcolor=\color{white}, % choose the background color. You must add \usepackage{color}
showspaces=false, % show spaces adding particular underscores
showstringspaces=false, % underline spaces within strings
showtabs=false, % show tabs within strings adding particular underscores
frame=single, % adds a frame around the code
frameround=fttf, % t hace la esquina redondeada y f que sea en punta
tabsize=2, % sets default tabsize to 2 spaces
captionpos=t, % sets the caption-position to top
breaklines=true, % sets automatic line breaking
breakatwhitespace=true, % sets if automatic breaks should only happen at whitespace
title=\lstname, % show the filename of files included with \lstinputlisting; also try caption instead of title
numberstyle=\scriptsize\color{gray}, % line number style
keywordstyle=\color{blue}, % keyword style
commentstyle=\color{dkgreen}, % comment style
stringstyle=\color{mauve}, % string literal style
escapeinside={\%*}{*)}, % if you want to add a comment within your code
%morekeywords={*,...}, % if you want to add more keywords to the set
%keywordstyle=\color{blue},
columns=flexible, %utilizar la opción flexible ya que el resto meten espacios entre letras para que ocupen todo el espacio de la caja (pero al copiar y pegar código nos lo ha estropeado)
alsoletter={-,/,.}, % gracias a esto podremos enfatizar o hacer keyword palabras como "apt-get"
%emph={sudo, apt-get}, %palabras especiales que se marcarán
classoffset=0,
emph={sudo,},
emphstyle=\color{red},
classoffset=1,
%emph={adb, add-apt-repository, am, android, apt-get, brctl, cat, chmod, dpkg, echo, egrep, /etc/init.d/networking, export, grep, ifconfig, ifdown, ifup, ip, iwconfig, iwlist, java, killall, ln, less, ls, mkdir, modprobe, mv, netcfg, ping, route, sensors, sensors-detect, service, sort, tail, tee, touch, uname, vim, virsh, virt-clone, virt-install, virt-viewer, vncviewer, wget, wpa\_passphrase, wpa\_supplicant, xm}, %algunos de estos comandos están definidos en keywords pero así me los pone a todos del mismo color
emphstyle=\color{BurntOrange},
classoffset=0,
escapechar=!,
xleftmargin=1.41mm,
xrightmargin=-0.71mm,
rulecolor=\color{black}, %corrige el error de bordes que cambian de color cuando se tiene que hacer un salto de una línea con un color distinto del negro http://tex.stackexchange.com/questions/80556/lstlisting-border-bug-when-breaking-lines
literate={ö}{{\"o}}1
{ä}{{\"a}}1
{ü}{{\"u}}1
{á}{{\'{a}}}1
{é}{{\'{e}}}1
{í}{{\'{i}}}1
{ó}{{\'{o}}}1
{ú}{{\'{u}}}1
{ñ}{{\~{n}}}1
{Á}{{\'{A}}}1
{É}{{\'{E}}}1
{Í}{{\'{I}}}1
{Ó}{{\'{O}}}1
{Ú}{{\'{U}}}1
{Ñ}{{\~{N}}}1
{¿}{{?`}}1
}
\DeclareCaptionFont{white}{\color{white}}
\DeclareCaptionFormat{listing}{%
\makebox[\linewidth][l]{\colorbox[cmyk]{0.43, 0.35, 0.35,0.01}{%
\setbox0=\hbox{#1#2}%
\begin{minipage}{\textwidth}
\hangindent\wd0\strut#1#2#3\leavevmode
\end{minipage}}%
}%
}
\captionsetup[lstlisting]{format=listing,labelfont=white,textfont=white,
singlelinecheck=false, margin=0pt, font={bf,footnotesize}}
\addto\captionsspanish{\renewcommand*\lstlistingname{C\'odigo}}
\addto\captionsspanish{\renewcommand*\lstlistlistingname{\'Indice de c\'odigo}}
\usepackage{chngcntr} % Sirve para numerar figuras, tablas, etc según numSección.númElemento http://www.physicsforums.com/showthread.php?t=290236
\counterwithin{figure}{section}
\AtBeginDocument{\counterwithin{lstlisting}{section}}
\renewcommand{\captionfont}{\color{ColorSecundario}}
\renewcommand{\captionlabelfont}{\bfseries}
\captionsetup[lstlisting]{format=listing,labelfont=white,textfont=white, singlelinecheck=false, margin=0pt, font={bf,footnotesize}}
\begin{document}
\section{Sección 1}
\section{Sección 2}
\section{Sección 3}
\section{Sección 4}
\begin{figure}[!ht]
\centering
\includegraphics[width=0.25\textwidth]{clipart/hombreNegociosMovil.jpeg}
\includegraphics[width=0.5\textwidth]{clipart/paradaAutobusAlReves.jpg}
\caption{Bytewalla en el poblado: tranferencia de información del móvil a estafeta}
\end{figure}
\begin{lstlisting}[caption={Fragmento concerniente a los métodos con algo más de texto constructores de la clase Fichero.java}]
test
test
\end{lstlisting}
\end{document}
答案3
更新: Axel Sommerfeldt 的回答是正确的,但正如他所说,字幕包尚未更新。事实上,现在可以看到 texlive 有一个 bug这里解决该问题的快速方法是使用以下代码创建并运行 makefile:
all: compile install
download:
if [ ! -f ./caption/caption.ins ]; then \
wget http://mirrors.ctan.org/macros/latex/contrib/caption.zip ;\
unzip caption.zip ;\
fi
compile: download
cd caption;\
latex caption.ins
documentation: compile
cd caption;\
latex caption-eng.tex;\
#latex caption-deu.tex;\
#latex caption-rus.tex;
install:
if [ `whoami` != root ]; then \
echo "This must be run as root" ;\
else \
RUTACAPTION=$$(kpsewhich caption.sty|xargs dirname) ;\
echo "The files in $$RUTACAPTION will be backed up in a folder called caption.old" ;\
cp -R $$RUTACAPTION caption.old ;\
cp ./caption/*.sty $$RUTACAPTION ;\
sudo texhash ;\
fi
clean:
rm caption.zip
rm -R caption
之后命令\DeclareCaptionBox
起作用